Version 56.10 by Xiaoling on 2023/04/04 08:54

Show last authors
1 (% style="text-align:center" %)
2 [[image:)YK]Y_LZJIO]J2~~VA}OQJM2.png||height="442" width="410"]]
3
4 **Table of Contents:**
5
6 {{toc/}}
7
8
9
10 = 1.  Introduction =
11
12 == 1.1 ​ What is NSPH01 Soil pH Sensor ==
13
14
15 (((
16 The Dragino NSPH01 is a (% style="color:blue" %)**NB-IoT soil pH sensor**(%%) for IoT of Agriculture. It is designed to measure the soil pH and soil temperature, so to send to the platform to analyze the soil acid or alkali level. The probe is IP68 waterproof.
17 )))
18
19 (((
20 NSPH01 probe is made by Solid AgCl reference electrode and Pure metal pH sensitive electrode. It can detect soil's** (% style="color:blue" %)pH (%%)**with high accuracy and stable value. The NSPH01 probe can be buried into soil for long time use.
21 )))
22
23 (((
24 NarrowBand-Internet of Things (NB-IoT) is a standards-based low power wide area (LPWA) technology developed to enable a wide range of new IoT devices and services. NB-IoT significantly improves the power consumption of user devices, system capacity and spectrum efficiency, especially in deep coverage.
25 )))
26
27 (((
28 NSPH01 supports different uplink methods include (% style="color:blue" %)**TCP,MQTT,UDP and CoAP  **(%%)for different application requirement.
29 )))
30
31 (((
32 NSPH01 is powered by (% style="color:blue" %)**8500mAh Li-SOCI2 battery**(%%), It is designed for long term use up to 5 years. (Actually Battery life depends on the use environment, update period & uplink method)
33 )))
34
35 (((
36 To use NSPH01, user needs to check if there is NB-IoT coverage in the installation area and with the bands NSPH01 supports. If the local operator supports it, user needs to get a (% style="color:blue" %)**NB-IoT SIM card** (%%)from local operator and install NSPH01 to get NB-IoT network connection.
37 )))
38
39
40 [[image:image-20220907153151-1.png]]
41
42
43 [[image:M_K`YF9`CAYAE\@}3T]FHT$9.png]]
44
45
46 == 1.2  Features ==
47
48
49 * NB-IoT Bands: B1/B3/B8/B5/B20/B28 @H-FDD
50 * Monitor soil pH with temperature compensation.
51 * Monitor soil temperature
52 * pH and Temperature alarm function
53 * Monitor Battery Level
54 * Support pH calibration by end user
55 * Uplink on periodically
56 * Downlink to change configure
57 * IP66 Waterproof Enclosure
58 * IP68 rate for the Sensor Probe
59 * Ultra-Low Power consumption
60 * AT Commands to change parameters
61 * Micro SIM card slot
62 * 8500mAh Battery for long term use
63
64
65
66 == 1.3  Specification ==
67
68
69 (% style="color:#037691" %)**Common DC Characteristics:**
70
71 * Supply Voltage: 2.1v ~~ 3.6v
72 * Operating Temperature: -40 ~~ 85°C
73
74 (% style="color:#037691" %)**NB-IoT Spec:**
75
76 * B1 @H-FDD: 2100MHz
77 * B3 @H-FDD: 1800MHz
78 * B8 @H-FDD: 900MHz
79 * B5 @H-FDD: 850MHz
80 * B20 @H-FDD: 800MHz
81 * B28 @H-FDD: 700MHz
82
83
84
85 == 1.4  Probe Specification ==
86
87
88 (% style="color:#037691" %)**Soil pH:**
89
90 * Range: 3 ~~ 10 pH
91 * Resolution: 0.01 pH
92 * Accuracy: ±2% under (0~~50 ℃, Accuracy will poor under 0 due to frozen)
93 * Temperature Compensation Range: 0 ~~ 50℃
94 * IP68 Protection
95 * Length: 3.5 meters
96
97 (% style="color:#037691" %)**Soil Temperature:**
98
99 * Range -40℃~85℃
100 * Resolution: 0.1℃
101 * Accuracy: <±0.5℃(-10℃~40℃),<±0.8℃ (others)
102 * IP68 Protection
103 * Length: 3.5 meters
104
105
106
107 == 1.5  ​Applications ==
108
109
110 * Smart Agriculture
111
112
113
114 == 1.6  Pin mapping and power on ==
115
116
117 [[image:image-20220907153300-2.png]]
118
119
120 = 2.  Use NSPH01 to communicate with IoT Server =
121
122 == 2.1  How it works ==
123
124
125 The NSPH01 is equipped with a NB-IoT module, the pre-loaded firmware in NSPH01 will get environment data from sensors and send the value to local NB-IoT network via the NB-IoT module.  The NB-IoT network will forward this value to IoT server via the protocol defined by NSPH01.
126
127 The diagram below shows the working flow in default firmware of NSPH01:
128
129
130 [[image:image-20220907153416-3.png]]
131
132
133 == 2.2 ​ Configure the NSPH01 ==
134
135 === 2.2.1 Test Requirement ===
136
137
138 To use NSPH01 in the field, make sure meet below requirements:
139
140 * Your local operator has already distributed a NB-IoT Network there.
141 * The local NB-IoT network used the band that NSPH01 supports.
142 * Your operator is able to distribute the data received in their NB-IoT network to your IoT server.
143
144 Below figure shows our testing structure. Here we have NB-IoT network coverage by China Mobile, the band they use is B8.  The NSPH01 will use** CoAP(120.24.4.116:5683) **or raw **UDP(120.24.4.116:5601)** or **MQTT(120.24.4.116:1883)**or **TCP(120.24.4.116:5600)**protocol to send data to the test server.
145
146
147 [[image:image-20220907153445-4.png]]
148
149
150 === 2.2.2 Insert SIM card ===
151
152
153 User need to take out the NB-IoT module and insert the SIM card like below. ((% style="color:red" %) Pay attention to the direction(%%))
154
155
156 [[image:image-20220907153505-5.png]]
157
158
159 === 2.2.3 Connect USB – TTL to NSPH01 to configure it ===
160
161
162 User need to configure NSPH01 via serial port to set the (% style="color:blue" %)**Server Address** / **Uplink Topic**(%%) to define where and how-to uplink packets. NSPH01 support AT Commands, user can use a USB to TTL adapter to connect to NSPH01 and use AT Commands to configure it, as below.
163
164
165 (% style="color:blue" %)**Connection:**
166
167 **~ (% style="background-color:yellow" %) USB TTL GND <~-~-~-~->  GND(%%)**
168
169 **~ (% style="background-color:yellow" %) USB TTL TXD  <~-~-~-~->  UART_RXD(%%)**
170
171 **~ (% style="background-color:yellow" %) USB TTL RXD  <~-~-~-~->  UART_TXD(%%)**
172
173
174 In the PC, use below serial tool settings:
175
176 * Baud:  (% style="color:green" %)**9600**
177 * Data bits:**  (% style="color:green" %)8(%%)**
178 * Stop bits:  (% style="color:green" %)**1**
179 * Parity:  (% style="color:green" %)**None**
180 * Flow Control: (% style="color:green" %)**None**
181
182 Make sure the switch is in FLASH position, then power on device by connecting the jumper on NSPH01. NSPH01 will output system info once power on as below, we can enter the (% style="color:green" %)**password: 12345678**(%%) to access AT Command input.
183
184
185 [[image:image-20220912144017-1.png]]
186
187
188 (% style="color:red" %)**Note: the valid AT Commands can be found at:**(%%)**  **[[**https:~~/~~/www.dropbox.com/sh/351dwor6joz8nwh/AADn1BQaAAxLF_QMyU8NkW47a?dl=0**>>url:https://www.dropbox.com/sh/351dwor6joz8nwh/AADn1BQaAAxLF_QMyU8NkW47a?dl=0]]
189
190
191 === 2.2.4 Use CoAP protocol to uplink data ===
192
193
194 (% style="color:red" %)**Note: if you don't have CoAP server, you can refer this link to set up one:**(%%)** **[[**http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/Set%20up%20CoAP%20Server/**>>url:http://wiki.dragino.com/xwiki/bin/view/Main/Set%20up%20CoAP%20Server/]]
195
196
197 (% style="color:blue" %)**Use below commands:**
198
199 * (% style="color:#037691" %)**AT+PRO=1**                         (%%) ~/~/  Set to use CoAP protocol to uplink
200 * (% style="color:#037691" %)**AT+SERVADDR=120.24.4.116,5683   ** (%%) ~/~/  to set CoAP server address and port
201 * (% style="color:#037691" %)**AT+URI=5,11,"mqtt",11,"coap",12,"0",15,"c=text1",23,"0" ** (%%) ~/~/  Set COAP resource path
202
203 For parameter description, please refer to AT command set
204
205
206 [[image:image-20220907153551-7.png||height="502" width="740"]]
207
208
209 After configure the server address and (% style="color:green" %)**reset the device (via AT+ATZ )**(%%), NSPH01 will start to uplink sensor values to CoAP server.
210
211
212 [[image:image-20220907153612-8.png||height="529" width="729"]]
213
214
215 === 2.2.5 Use UDP protocol to uplink data(Default protocol) ===
216
217
218 This feature is supported since firmware version v1.0.1
219
220 * (% style="color:blue" %)**AT+PRO=2   ** (%%) ~/~/  Set to use UDP protocol to uplink
221 * (% style="color:blue" %)**AT+SERVADDR=120.24.4.116,5601   ** (%%) ~/~/  to set UDP server address and port
222 * (% style="color:blue" %)**AT+CFM=1       ** (%%) ~/~/  If the server does not respond, this command is unnecessar
223
224 [[image:image-20220907153643-9.png||height="401" width="734"]]
225
226
227 [[image:image-20220907153703-10.png||height="309" width="738"]]
228
229
230 === 2.2.6 Use MQTT protocol to uplink data ===
231
232
233 This feature is supported since firmware version v110
234
235 * (% style="color:blue" %)**AT+PRO=3   ** (%%) ~/~/ Set to use MQTT protocol to uplink
236 * (% style="color:blue" %)**AT+SERVADDR=120.24.4.116,1883   ** (%%) ~/~/ Set MQTT server address and port
237 * (% style="color:blue" %)**AT+CLIENT=CLIENT       ** (%%) ~/~/ Set up the CLIENT of MQTT
238 * (% style="color:blue" %)**AT+UNAME=UNAME                               **(%%)~/~/ Set the username of MQTT
239 * (% style="color:blue" %)**AT+PWD=PWD                                        **(%%)~/~/ Set the password of MQTT
240 * (% style="color:blue" %)**AT+PUBTOPIC=NSE01_PUB                    **(%%)~/~/ Set the sending topic of MQTT
241 * (% style="color:blue" %)**AT+SUBTOPIC=NSE01_SUB          ** (%%) ~/~/ Set the subscription topic of MQTT
242
243 [[image:image-20220907153739-11.png||height="491" width="764"]]
244
245
246 [[image:image-20220907153751-12.png||height="555" width="769"]]
247
248
249 MQTT protocol has a much higher power consumption compare vs UDP / CoAP protocol. Please check the power analyze document and adjust the uplink period to a suitable interval.
250
251
252 === 2.2.7 Use TCP protocol to uplink data ===
253
254
255 This feature is supported since firmware version v110
256
257 * (% style="color:blue" %)**AT+PRO=4   ** (%%) ~/~/ Set to use TCP protocol to uplink
258 * (% style="color:blue" %)**AT+SERVADDR=120.24.4.116,5600   ** (%%) ~/~/ to set TCP server address and port
259
260 [[image:image-20220907153818-13.png||height="486" width="668"]]
261
262
263 [[image:image-20220907153827-14.png||height="236" width="684"]]
264
265
266 === 2.2.8 Change Update Interval ===
267
268
269 Users can use the below command to change the **uplink interval**.
270
271 * (% style="color:blue" %)**AT+TDC=7200      ** (%%) ~/~/ Set Update Interval to 7200s (2 hour)
272
273 (% style="color:red" %)**NOTE: By default, the device will send an uplink message every 2 hours. Each Uplink Include 8 set of records in this 2 hour (15 minute interval / record).**
274
275
276 == 2.3  Uplink Payload ==
277
278
279 In this mode, uplink payload includes 87 bytes in total by default.
280
281 Each time the device uploads a data package, 8 sets of recorded data will be attached. Up to 32 sets of recorded data can be uploaded.
282
283 (% border="1.5" style="background-color:#ffffcc; color:green; width:520px" %)
284 |=(% scope="row" style="width: 50px;" %)**Size(bytes)**|(% style="width:40px" %)**8**|(% style="width:20px" %)**2**|(% style="width:25px" %)**2**|(% style="width:60px" %)**1**|(% style="width:20px" %)**1**|(% style="width:40px" %)**1**|(% style="width:40px" %)**2**|(% style="width:50px" %)**2**|(% style="width:50px" %)**4**|(% style="width:50px" %)**2**|(% style="width:35px" %)**2**|(% style="width:40px" %)**4**
285 |=(% style="width: 96px;" %)**Value**|(% style="width:83px" %)Device ID|(% style="width:44px" %)Ver|(% style="width:42px" %)BAT|(% style="width:124px" %)Signal Strength|(% style="width:57px" %)MOD|(% style="width:80px" %)Interrupt|(% style="width:69px" %)Soil PH|(% style="width:134px" %)Soil Temperature|(% style="width:98px" %)Time stamp|(% style="width:134px" %)Soil Temperature|(% style="width:68px" %)Soil PH|(% style="width:125px" %)Time stamp  .....
286
287 If we use the MQTT client to subscribe to this MQTT topic, we can see the following information when the NSPH01 uplink data.
288
289 [[image:image-20220907153902-15.png||height="581" width="804"]]
290
291
292 (((
293 The payload is ASCII string, representative same HEX:
294 )))
295
296 (((
297
298 )))
299
300 (((
301 **0x (% style="color:red" %)__f868411056754138__  (% style="color:blue" %)__0064 __ (% style="color:green" %)__0c78__  (% style="color:#00b0f0" %)__17__  (% style="color:#7030a0" %)__01__  (% style="color:#d60093" %)__00__  (% style="color:#a14d07" %)__0225 __ (% style="color:#0020b0" %) __010b__  (% style="color:#420042" %)__6315537b__  (% style="color:#663300" %)//__010b0226631550fb__  __010e022663154d77  01110225631549f1  011502246315466b  01190223631542e5  011d022163153f62  011e022163153bde 011e022163153859__//(%%)**
302 )))
303
304 (((
305
306
307 **where:**
308 )))
309
310 * (% style="color:#037691" %)**Device ID:**(%%)** **0xf868411056754138 = f868411056754138
311
312 * (% style="color:#037691" %)**Version:**  (%%) 0x0064=100=1.0.0
313
314 * (% style="color:#037691" %)**BAT:**   (%%) 0x0c78 = 3192 mV = 3.192V
315
316 * (% style="color:#037691" %)**Singal:** (%%)0x17 = 23
317
318 * (% style="color:#037691" %)**Mod:** (%%) 0x01 = 1
319
320 * (% style="color:#037691" %)**Interrupt:**(%%) 0x00= 0
321
322 * (% style="color:#037691" %)**Soil PH:** (%%) 0x0225= 549 = 5.49
323
324 * (% style="color:#037691" %)**Soil Temperature:**(%%) 0x010b =267=26.7 °C
325
326 * (% style="color:#037691" %)**Time stamp :**   (%%) 0x6315537b =1662342011  ([[Unix Epoch Time>>url:http://www.epochconverter.com/]])
327
328 * (% style="color:#037691" %)**Soil Temperature,Soil PH,Time stamp : **(%%) 010b0226631550fb
329
330 * (% style="color:#037691" %)**8 sets of recorded data:**(%%) Temperature,Soil PH,Time stamp :  010e022663154d77,.......
331
332
333
334 == 2.4  Payload Explanation and Sensor Interface ==
335
336 === 2.4.1  Device ID ===
337
338
339 By default, the Device ID equal to the last 15 bits of IMEI.
340
341 User can use (% style="color:blue" %)**AT+DEUI** (%%)to set Device ID
342
343
344 **Example:**
345
346 AT+DEUI=868411056754138
347
348 The Device ID is stored in a none-erase area, Upgrade the firmware or run AT+FDR won't erase Device ID.
349
350
351 === 2.4.2  Version Info ===
352
353
354 Specify the software version: 0x64=100, means firmware version 1.00.
355
356 For example: 0x00 64 : this device is NSPH01 with firmware version 1.0.0.
357
358
359 === 2.4.3  Battery Info ===
360
361
362 Check the battery voltage for NSPH01.
363
364 Ex1: 0x0B45 = 2885mV
365
366 Ex2: 0x0B49 = 2889mV
367
368
369 === 2.4.4  Signal Strength ===
370
371
372 NB-IoT Network signal Strength.
373
374 **Ex1: 0x1d = 29**
375
376 **0**  -113dBm or less
377
378 **1**  -111dBm
379
380 **2...30** -109dBm... -53dBm
381
382 **31**   -51dBm or greater
383
384 **99**    Not known or not detectable
385
386
387 === 2.4.5  Soil PH ===
388
389
390 Get the PH content of the soil. The value range of the register is 300-1000(Decimal), divide this value by 100 to get the percentage of PH in the soil.
391
392 For example, if the data you get from the register is (% style="color:blue" %)**__0x05 0xDC__**(%%), the PH content in the soil is
393
394 (% style="color:blue" %)**0229(H) = 549(D) /100 = 5.49.**
395
396
397 === 2.4.6  Soil Temperature ===
398
399
400 Get the temperature in the soil. The value range of the register is -4000 - +800(Decimal), divide this value by 100 to get the temperature in the soil. For example, if the data you get from the register is (% style="color:blue" %)**__0x09 0xEC__**(%%), the temperature content in the soil is
401
402
403 **Example**:
404
405 If payload is 0105H: ((0x0105 & 0x8000)>>15 === 0),temp = 0105(H)/10 = 26.1 °C
406
407 If payload is FF7EH: ((FF7E & 0x8000)>>15 ===1),temp = (FF7E(H)-FFFF(H))/10 = -12.9 °C
408
409
410 === 2.4.7  Timestamp ===
411
412
413 Time stamp : 0x6315537b =1662342011
414
415 Convert Unix timestamp to time 2022-9-5 9:40:11.
416
417
418 === 2.4.8  Digital Interrupt ===
419
420
421 Digital Interrupt refers to pin (% style="color:blue" %)**GPIO_EXTI**(%%), and there are different trigger methods. When there is a trigger, the NSPH01 will send a packet to the server.
422
423 The command is:
424
425 (% style="color:blue" %)**AT+INTMOD=3 ** (%%) ~/~/(more info about INMOD please refer [[**AT Command Manual**>>url:https://www.dragino.com/downloads/downloads/NB-IoT/NBSN95/DRAGINO_NBSN95-NB_AT%20Commands_v1.1.0.pdf]])**.**
426
427 The lower four bits of this data field shows if this packet is generated by interrupt or not. Click here for the hardware and software set up.
428
429
430 **Example:**
431
432 0x(00): Normal uplink packet.
433
434 0x(01): Interrupt Uplink Packet.
435
436
437 === 2.4.9  ​+5V Output ===
438
439
440 NSPH01 will enable +5V output before all sampling and disable the +5v after all sampling. 
441
442 The 5V output time can be controlled by AT Command.
443
444 (% style="color:blue" %)**AT+5VT=1000**
445
446 Means set 5V valid time to have 1000ms. So the real 5V output will actually have 1000ms + sampling time for other sensors.** **
447
448
449 == 2.5  Downlink Payload ==
450
451
452 By default, NSPH01 prints the downlink payload to console port.
453
454 [[image:image-20220907154636-17.png]]
455
456
457 (% style="color:blue" %)**Examples:**
458
459 * (% style="color:#037691" %)** Set TDC**
460
461 If the payload=0100003C, it means set the END Node's TDC to 0x00003C=60(S), while type code is 01.
462
463 Payload:    01 00 00 1E    TDC=30S
464
465 Payload:    01 00 00 3C    TDC=60S
466
467 * (% style="color:#037691" %)** Reset**
468
469 If payload = 0x04FF, it will reset the NSPH01
470
471 * (% style="color:#037691" %)** INTMOD**
472
473 Downlink Payload: 06000003, Set AT+INTMOD=3
474
475
476 == 2.6  ​LED Indicator ==
477
478
479 The NSPH01 has an internal LED which is to show the status of different state.
480
481 * When power on, NSPH01 will detect if sensor probe is connected, if probe detected, LED will blink four times. (no blinks in this step is no probe)
482 * Then the LED will be on for 1 second means device is boot normally.
483 * After NSPH01 join NB-IoT network. The LED will be ON for 3 seconds.
484 * For each uplink probe, LED will be on for 500ms.
485
486
487
488 == 2.7  Installation and Maintain ==
489
490 === 2.7.1  Before measurement ===
491
492
493 If the NSPH01 has more than 7 days not use or just clean the pH probe. User should put the probe inside pure water for more than 24 hours for activation. If no put in water, user need to put inside soil for more than 24 hours to ensure the measurement accuracy. 
494
495
496 === 2.7.2  Measurement ===
497
498
499 (% style="color:#037691" %)**Measurement the soil surface:**
500
501
502 [[image:image-20220907154700-18.png]] ​
503
504 Choose the proper measuring position. Split the surface soil according to the measured deep.
505
506 Put pure water, or rainwater to make the soil of measurement point to moist mud. Remove rocks or hard things.
507
508 Slowly insert the probe to the measure point. Don't use large force which will break the probe. Make sure not shake when inserting.
509
510 Put soil over the probe after insert. And start to measure.
511
512
513 (% style="color:#037691" %)**Measurement inside soil:**
514
515 Dig a hole with diameter > 20CM.
516
517 Insert the probe inside, method like measure the surface.
518
519
520 === 2.7.3  Maintain Probe ===
521
522
523 1. pH probe electrode is fragile and no strong. User must avoid strong force or hitting it.
524 1. After long time use (3~~ 6  months). The probe electrode needs to be clean; user can use high grade sandpaper to polish it or put in 5% hydrochloric acid for several minutes. After the metal probe looks like new, user can use pure water to wash it.
525 1. Probe reference electrode is also no strong, need to avoid strong force or hitting.
526 1. User should keep reference electrode wet while not use.
527 1. Avoid the probes to touch oily matter. Which will cause issue in accuracy.
528 1. The probe is IP68 can be put in water.
529
530
531
532 == 2.8  PH and Temperature alarm function ==
533
534
535 (% style="color:#037691" %)**➢ AT Command:**
536
537 (% style="color:blue" %)**AT+ PHALARM=min,max**
538
539 ² When min=3, and max≠0, Alarm higher than max
540
541 ² When min≠0, and max=0, Alarm lower than min
542
543 ² When min≠0 and max≠0, Alarm higher than max or lower than min
544
545
546 (% style="color:blue" %)**Example:**
547
548 AT+ PHALARM =5,8  ~/~/ Alarm when PH lower than 5.
549
550 AT+ TEMPALARM=min,max
551
552 ² When min=0, and max≠0, Alarm higher than max
553
554 ² When min≠0, and max=0, Alarm lower than min
555
556 ² When min≠0 and max≠0, Alarm higher than max or lower than min
557
558
559 (% style="color:blue" %)**Example:**
560
561 AT+ TEMPALARM=20,30  ~/~/ Alarm when temperature lower than 20.
562
563
564 == 2.9  Set the number of data to be uploaded and the recording time ==
565
566
567 (% style="color:#037691" %)**➢ AT Command:**
568
569 * (% style="color:blue" %)**AT+TR=900**     (%%) ~/~/  The unit is seconds, and the default is to record data once every 900 seconds.( The minimum can be set to 180 seconds)
570 * (% style="color:blue" %)**AT+NOUD=8**     (%%) ~/~/  The device uploads 8 sets of recorded data by default. Up to 32 sets of record data can be uploaded.
571
572 The diagram below explains the relationship between TR, NOUD, and TDC more clearly**:**
573
574 [[image:image-20221009000933-1.png||height="750" width="1043"]]
575
576
577 == 2.10  Read or Clear cached data ==
578
579
580 (% style="color:#037691" %)**➢ AT Command:**
581
582 * (% style="color:blue" %)**AT+CDP**        (%%) ~/~/  Read cached data
583 * (% style="color:blue" %)**AT+CDP=0**    (%%) ~/~/  Clear cached data
584
585 [[image:image-20220907154700-19.png]]
586
587
588 == 2.11  Calibration ==
589
590
591 User can do calibration for the probe. It is limited to use below pH buffer solution to calibrate: 4.00, 6.86, 9.18. When calibration, user need to clean the electrode and put the probe in the pH buffer solution to wait the value stable ( a new clean electrode might need max 24 hours to be stable).
592
593 After stable, user can use below command to calibrate.
594
595
596 [[image:image-20220907154700-20.png]] ​
597
598
599 == 2.12  ​Firmware Change Log ==
600
601
602 Download URL & Firmware Change log: [[https:~~/~~/www.dropbox.com/sh/1tv07fro2pvjqj8/AAD-2wbfGfluTZfh38fQqdA_a?dl=0>>https://www.dropbox.com/sh/1tv07fro2pvjqj8/AAD-2wbfGfluTZfh38fQqdA_a?dl=0]]
603
604 Upgrade Instruction: [[Upgrade Firmware>>||anchor="H5.1200BHowtoUpgradeFirmware"]]
605
606
607 == 2.13 Battery & Power Consumption ==
608
609
610 NSPH01 uses ER26500 + SPC1520 battery pack. See below link for detail information about the battery info and how to replace.
611
612 [[**Battery Info & Power Consumption Analyze**>>url:http://wiki.dragino.com/xwiki/bin/view/Main/How%20to%20calculate%20the%20battery%20life%20of%20Dragino%20sensors%3F/]] .
613
614
615 = 3. ​ Access NB-IoT Module =
616
617
618 Users can directly access the AT command set of the NB-IoT module.
619
620 The AT Command set can refer the BC35-G NB-IoT Module AT Command: [[https:~~/~~/www.dragino.com/downloads/index.php?dir=datasheet/other_vendors/BC35-G/>>url:https://www.dragino.com/downloads/index.php?dir=datasheet/other_vendors/BC35-G/]] 
621
622
623 [[image:image-20220907154700-23.png]]
624
625
626
627 = 4.  Using the AT Commands =
628
629 == 4.1  Access AT Commands ==
630
631
632 See this link for detail:  [[https:~~/~~/www.dropbox.com/sh/351dwor6joz8nwh/AADn1BQaAAxLF_QMyU8NkW47a?dl=0>>url:https://www.dropbox.com/sh/351dwor6joz8nwh/AADn1BQaAAxLF_QMyU8NkW47a?dl=0]]
633
634 AT+<CMD>?  : Help on <CMD>
635
636 AT+<CMD>         : Run <CMD>
637
638 AT+<CMD>=<value> : Set the value
639
640 AT+<CMD>=?  : Get the value
641
642
643 (% style="color:#037691" %)**General Commands**      
644
645 AT  : Attention       
646
647 AT?  : Short Help     
648
649 ATZ  : MCU Reset    
650
651 AT+TDC  : Application Data Transmission Interval
652
653 AT+CFG  : Print all configurations
654
655 AT+CFGMOD           : Working mode selection
656
657 AT+INTMOD            : Set the trigger interrupt mode
658
659 AT+5VT  : Set extend the time of 5V power  
660
661 AT+PRO  : Choose agreement
662
663 AT+RXDL  : Extend the sending and receiving time
664
665 AT+SERVADDR  : Server Address
666
667 AT+TR      : Get or Set record time"
668
669 AT+APN     : Get or set the APN
670
671 AT+FBAND   : Get or Set whether to automatically modify the frequency band
672
673 AT+DNSCFG  : Get or Set DNS Server
674
675 AT+GETSENSORVALUE   : Returns the current sensor measurement
676
677 AT+NOUD      : Get or Set the number of data to be uploaded
678
679 AT+CDP     : Read or Clear cached data
680
681 AT+TEMPALARM      : Get or Set alarm of temp
682
683 AT+PHALARM     : Get or Set alarm of PH
684
685 AT+ PHCAL  : calibrate PH value
686
687
688 (% style="color:#037691" %)**COAP Management**      
689
690 AT+URI            : Resource parameters
691
692
693 (% style="color:#037691" %)**UDP Management**
694
695 AT+CFM          : Upload confirmation mode (only valid for UDP)
696
697
698 (% style="color:#037691" %)**MQTT Management**
699
700 AT+CLIENT               : Get or Set MQTT client
701
702 AT+UNAME  : Get or Set MQTT Username
703
704 AT+PWD                  : Get or Set MQTT password
705
706 AT+PUBTOPIC  : Get or Set MQTT publish topic
707
708 AT+SUBTOPIC  : Get or Set MQTT subscription topic
709
710
711 (% style="color:#037691" %)**Information**          
712
713 AT+FDR  : Factory Data Reset
714
715 AT+PWORD  : Serial Access Password
716
717
718 = ​5.  FAQ =
719
720 == 5.1 ​ How to Upgrade Firmware ==
721
722
723 User can upgrade the firmware for 1) bug fix, 2) new feature release.
724
725 Please see this link for how to upgrade:  [[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/Firmware%20Upgrade%20Instruction%20for%20STM32%20base%20products/#H2.HardwareUpgradeMethodSupportList>>url:http://wiki.dragino.com/xwiki/bin/view/Main/Firmware%20Upgrade%20Instruction%20for%20STM32%20base%20products/#H2.HardwareUpgradeMethodSupportList]]
726
727 (% style="color:red" %)**Notice, NSPH01 and LSPH01 share the same mother board. They use the same connection and method to update.**
728
729
730 == 5.2  Can I calibrate NSPH01 to different soil types? ==
731
732
733 NSPH01 is calibrated for saline-alkali soil and loamy soil. If users want to use it for other soil, they can calibrate the value in the IoT platform base on the value measured by saline-alkali soil and loamy soil. The formula can be found at [[this link>>url:https://www.dragino.com/downloads/downloads/LoRa_End_Node/LSE01/Calibrate_to_other_Soil_20220605.pdf]].
734
735
736 = 6.  Trouble Shooting =
737
738 == 6.1  ​Connection problem when uploading firmware ==
739
740
741 **Please see: **[[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/Firmware%20Upgrade%20Instruction%20for%20STM32%20base%20products/#H3.3Troubleshooting>>url:http://wiki.dragino.com/xwiki/bin/view/Main/Firmware%20Upgrade%20Instruction%20for%20STM32%20base%20products/#H3.3Troubleshooting]]
742
743
744 == 6.2  AT Command input doesn't work ==
745
746
747 In the case if user can see the console output but can't type input to the device. Please check if you already include the (% style="color:green" %)**ENTER**(%%) while sending out the command. Some serial tool doesn't send (% style="color:green" %)**ENTER** (%%)while press the send key, user need to add ENTER in their string.
748
749
750 = 7. ​ Order Info =
751
752
753 Part Number**:** NSPH01
754
755
756 = 8.  Packing Info =
757
758
759 **Package Includes**:
760
761 * NSPH01 NB-IoT pH Sensor x 1
762 * External antenna x 1
763
764 **Dimension and weight**:
765
766 * Device Size: cm
767 * Device Weight: g
768 * Package Size / pcs : cm
769 * Weight / pcs : g
770
771
772
773 = 9.  Support =
774
775
776 * Support is provided Monday to Friday, from 09:00 to 18:00 GMT+8. Due to different timezones we cannot offer live support. However, your questions will be answered as soon as possible in the before-mentioned schedule.
777 * Provide as much information as possible regarding your enquiry (product models, accurately describe your problem and steps to replicate it etc) and send a mail to [[support@dragino.com>>url:http://../../../../../../D:%5C%E5%B8%82%E5%9C%BA%E8%B5%84%E6%96%99%5C%E8%AF%B4%E6%98%8E%E4%B9%A6%5CLoRa%5CLT%E7%B3%BB%E5%88%97%5Csupport@dragino.com]]
778
779