Hide last authors
David Huang 3.1 1 (% style="text-align:center" %)
Xiaoling 50.2 2 [[image:)YK]Y_LZJIO]J2~~VA}OQJM2.png||height="442" width="410"]]
David Huang 10.1 3
Xiaoling 44.3 4 **Table of Contents:**
Xiaoling 44.2 5
6 {{toc/}}
7
8
9
Xiaoling 50.3 10 = 1.  Introduction =
David Huang 10.1 11
Xiaoling 50.2 12
Xiaoling 50.3 13 == 1.1 ​ What is NSPH01 Soil pH Sensor ==
David Huang 10.1 14
15
Xiaoling 50.3 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.
David Huang 10.1 17
Xiaoling 50.3 18 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.
Xiaoling 50.2 19
David Huang 10.1 20 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.
Xiaoling 50.3 21 \\NSPH01 supports different uplink methods include (% style="color:blue" %)**TCP,MQTT,UDP and CoAP  **(%%)for different application requirement.
22 \\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)
23 \\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.
David Huang 10.1 24
Xiaoling 50.3 25
David Huang 34.1 26 [[image:image-20220907153151-1.png]]
27
Xiaoling 50.3 28
David Huang 34.1 29 [[image:M_K`YF9`CAYAE\@}3T]FHT$9.png]]
30
31
Xiaoling 50.3 32
33 == 1.2  Features ==
34
35
David Huang 34.1 36 * NB-IoT Bands: B1/B3/B8/B5/B20/B28 @H-FDD
37 * Monitor soil pH with temperature compensation.
38 * Monitor soil temperature
Edwin Chen 46.1 39 * pH and Temperature alarm function
David Huang 34.1 40 * Monitor Battery Level
41 * Support pH calibration by end user
42 * Uplink on periodically
43 * Downlink to change configure
44 * IP66 Waterproof Enclosure
45 * IP68 rate for the Sensor Probe
46 * Ultra-Low Power consumption
47 * AT Commands to change parameters
Edwin Chen 46.1 48 * Micro SIM card slot
David Huang 34.1 49 * 8500mAh Battery for long term use
50
Xiaoling 50.3 51
52
David Huang 44.1 53 == 1.3  Specification ==
David Huang 34.1 54
55
Xiaoling 50.3 56 (% style="color:#037691" %)**Common DC Characteristics:**
57
David Huang 34.1 58 * Supply Voltage: 2.1v ~~ 3.6v
59 * Operating Temperature: -40 ~~ 85°C
60
61
Xiaoling 50.3 62 (% style="color:#037691" %)**NB-IoT Spec:**
63
David Huang 34.1 64 * - B1 @H-FDD: 2100MHz
65 * - B3 @H-FDD: 1800MHz
66 * - B8 @H-FDD: 900MHz
67 * - B5 @H-FDD: 850MHz
68 * - B20 @H-FDD: 800MHz
69 * - B28 @H-FDD: 700MHz
70
71
72
Xiaoling 50.3 73 == 1.4  Probe Specification ==
74
75
76 (% style="color:#037691" %)**Soil pH:**
77
David Huang 34.1 78 * Range: 3 ~~ 10 pH
79 * Resolution: 0.01 pH
80 * Accuracy: ±2% under (0~~50 ℃, Accuracy will poor under 0 due to frozen)
81 * Temperature Compensation Range: 0 ~~ 50℃
82 * IP68 Protection
83 * Length: 3.5 meters
84
85
Xiaoling 50.3 86 (% style="color:#037691" %)**Soil Temperature:**
87
David Huang 34.1 88 * Range -40℃~85℃
89 * Resolution: 0.1℃
90 * Accuracy: <±0.5℃(-10℃~40℃),<±0.8℃ (others)
91 * IP68 Protection
92 * Length: 3.5 meters
93
Xiaoling 50.3 94
95
David Huang 44.1 96 == 1.5 ​Applications ==
David Huang 34.1 97
98 * Smart Agriculture
99
Xiaoling 50.3 100
101
102
David Huang 44.1 103 == 1.6 Pin mapping and power on ==
David Huang 34.1 104
Xiaoling 50.3 105
David Huang 34.1 106 [[image:image-20220907153300-2.png]]
107
108
Xiaoling 50.3 109
David Huang 44.1 110 = 2.  Use NSPH01 to communicate with IoT Server =
David Huang 34.1 111
Xiaoling 50.3 112
David Huang 44.1 113 == 2.1  How it works ==
David Huang 34.1 114
Xiaoling 50.3 115
David Huang 34.1 116 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.
117
118 The diagram below shows the working flow in default firmware of NSPH01:
119
Xiaoling 50.3 120
David Huang 34.1 121 [[image:image-20220907153416-3.png]]
122
Xiaoling 50.3 123
124
David Huang 44.1 125 == 2.2 ​ Configure the NSPH01 ==
David Huang 34.1 126
Xiaoling 50.3 127
David Huang 44.1 128 === 2.2.1 Test Requirement ===
David Huang 34.1 129
Xiaoling 50.3 130
Edwin Chen 46.1 131 To use NSPH01 in the field, make sure meet below requirements:
David Huang 34.1 132
133 * Your local operator has already distributed a NB-IoT Network there.
134 * The local NB-IoT network used the band that NSPH01 supports.
135 * Your operator is able to distribute the data received in their NB-IoT network to your IoT server.
136
Edwin Chen 46.1 137 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.
David Huang 34.1 138
Xiaoling 50.3 139
David Huang 34.1 140 [[image:image-20220907153445-4.png]]
141
142
Xiaoling 50.3 143
David Huang 44.1 144 === 2.2.2 Insert SIM card ===
David Huang 34.1 145
Xiaoling 50.3 146
Edwin Chen 47.1 147 User need to take out the NB-IoT module and insert the SIM card like below. ((% style="color:red" %) Pay attention to the direction(%%))
David Huang 34.1 148
149 [[image:image-20220907153505-5.png]]
150
Xiaoling 50.3 151
152
David Huang 44.1 153 === 2.2.3 Connect USB – TTL to NSPH01 to configure it ===
David Huang 34.1 154
155 User need to configure NSPH01 via serial port to set the **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.
156
157 **Connection:**
158
159 USB TTL GND <~-~-~-~-> GND
160
161 USB TTL TXD <~-~-~-~-> UART_RXD
162
163 USB TTL RXD <~-~-~-~-> UART_TXD
164
165 In the PC, use below serial tool settings:
166
167 * Baud:  **9600**
168 * Data bits:** 8**
169 * Stop bits: **1**
170 * Parity:  **None**
171 * Flow Control: **None**
172
173 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 **password: 12345678** to access AT Command input.
174
175 (% style="text-align:center" %)
176 [[image:image-20220907153529-6.png]]
177
178 **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]]
179
David Huang 44.1 180 === 2.2.4 Use CoAP protocol to uplink data ===
David Huang 34.1 181
182 **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/]]
183
184 **Use below commands:**
185
186 * **AT+PRO=1**   ~/~/ Set to use CoAP protocol to uplink
187 * **AT+SERVADDR=120.24.4.116,5683   ** ~/~/ to set CoAP server address and port
188 * **AT+URI=5,11,"mqtt",11,"coap",12,"0",15,"c=text1",23,"0" ** ~/~/Set COAP resource path
189
190 For parameter description, please refer to AT command set
191
192 (% style="text-align:center" %)
193 [[image:image-20220907153551-7.png||height="502" width="740"]]
194
195 After configure the server address and **reset the device** (via AT+ATZ ), NSPH01 will start to uplink sensor values to CoAP server.
196
197 (% style="text-align:center" %)
198 [[image:image-20220907153612-8.png||height="529" width="729"]]
199
200
David Huang 44.1 201 === 2.2.5 Use UDP protocol to uplink data(Default protocol) ===
David Huang 34.1 202
203 This feature is supported since firmware version v1.0.1
204
205 * **AT+PRO=2   ** ~/~/ Set to use UDP protocol to uplink
206 * **AT+SERVADDR=120.24.4.116,5601   ** ~/~/ to set UDP server address and port
207 * **AT+CFM=1       ** ~/~/If the server does not respond, this command is unnecessar
208
209 (% style="text-align:center" %)
210 [[image:image-20220907153643-9.png||height="401" width="734"]]
211
212 (% style="text-align:center" %)
213 [[image:image-20220907153703-10.png||height="309" width="738"]]
214
215
David Huang 44.1 216 === 2.2.6 Use MQTT protocol to uplink data ===
David Huang 34.1 217
218 This feature is supported since firmware version v110
219
220 * **AT+PRO=3   ** ~/~/Set to use MQTT protocol to uplink
221 * **AT+SERVADDR=120.24.4.116,1883   ** ~/~/Set MQTT server address and port
222 * **AT+CLIENT=CLIENT       ** ~/~/Set up the CLIENT of MQTT
223 * **AT+UNAME=UNAME                               **~/~/Set the username of MQTT
224 * **AT+PWD=PWD                                        **~/~/Set the password of MQTT
225 * **AT+PUBTOPIC=NSE01_PUB                    **~/~/Set the sending topic of MQTT
226 * **AT+SUBTOPIC=NSE01_SUB          ** ~/~/Set the subscription topic of MQTT
227
228 (% style="text-align:center" %)
229 [[image:image-20220907153739-11.png||height="491" width="764"]]
230
231 (% style="text-align:center" %)
232 [[image:image-20220907153751-12.png||height="555" width="769"]]
233
234 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.
235
David Huang 44.1 236 === 2.2.7 Use TCP protocol to uplink data ===
David Huang 34.1 237
238 This feature is supported since firmware version v110
239
240 * **AT+PRO=4   ** ~/~/ Set to use TCP protocol to uplink
241 * **AT+SERVADDR=120.24.4.116,5600   ** ~/~/ to set TCP server address and port
242
243 (% style="text-align:center" %)
244 [[image:image-20220907153818-13.png||height="486" width="668"]]
245
246 (% style="text-align:center" %)
247 [[image:image-20220907153827-14.png||height="236" width="684"]]
248
David Huang 44.1 249 === 2.2.8 Change Update Interval ===
David Huang 34.1 250
Edwin Chen 47.1 251 Users can use the below command to change the **uplink interval**.
David Huang 34.1 252
Edwin Chen 47.1 253 * **AT+TDC=7200      ** ~/~/ Set Update Interval to 7200s (2 hour)
David Huang 34.1 254
Edwin Chen 47.1 255 **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).**
David Huang 34.1 256
Edwin Chen 47.1 257
David Huang 44.1 258 == 2.3  Uplink Payload ==
David Huang 34.1 259
260 In this mode, uplink payload includes 87 bytes in total by default.
261
262 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.
263
David Huang 44.1 264 |**Size(bytes)**|**8**|**2**|**2**|1|1|1|2|2|4|2|2|4
265 |**Value**|Device ID|Ver|BAT|Signal Strength|MOD|Interrupt|Soil PH|Soil Temperature|Time stamp|Soil Temperature|Soil PH|Time stamp  .....
266
David Huang 34.1 267 If we use the MQTT client to subscribe to this MQTT topic, we can see the following information when the NSPH01 uplink data.
268
269 (% style="text-align:center" %)
270 [[image:image-20220907153902-15.png||height="581" width="804"]]
271
272
273 The payload is ASCII string, representative same HEX:
274
Edwin Chen 49.1 275 0x(% style="color:red" %)f868411056754138(% style="color:blue" %)0064(% style="color:green" %)0c78(% style="color:red" %)17(% style="color:blue" %)01(% style="color:green" %)00(% style="color:red" %)**//0225010b6315537b//**010b0226631550fb//**010e022663154d77**//01110225631549f1//**011502246315466b**//01190223631542e5//**011d022163153f62**//011e022163153bde//**011e022163153859**//(%%) where:
David Huang 34.1 276
Edwin Chen 49.1 277 * (% style="color:red" %)Device ID: 0xf868411056754138 = f868411056754138
278 * (% style="color:blue" %)Version: 0x0064=100=1.0.0
279 * (% style="color:green" %)BAT: 0x0c78 = 3192 mV = 3.192V
280 * (% style="color:red" %)Singal: 0x17 = 23
281 * (% style="color:blue" %)Mod: 0x01 = 1
282 * (% style="color:green" %)Interrupt: 0x00= 0
David Huang 34.1 283 * Soil PH: 0x0225= 549 = 5.49
284 * Soil Temperature:0x010B =267=26.7 °C
Edwin Chen 48.1 285 * Time stamp : 0x6315537b =1662342011  ([[Unix Epoch Time>>url:http://www.epochconverter.com/]])
David Huang 39.1 286 * Soil Temperature,Soil PH,Time stamp : 010b0226631550fb
Edwin Chen 49.1 287 * (% style="color:red" %)8 sets of recorded data: Temperature,Soil PH,Time stamp : 010e022663154d77,.......
David Huang 34.1 288
David Huang 44.1 289 == 2.4  Payload Explanation and Sensor Interface ==
David Huang 34.1 290
David Huang 44.1 291 === 2.4.1  Device ID ===
David Huang 34.1 292
293 By default, the Device ID equal to the last 15 bits of IMEI.
294
295 User can use **AT+DEUI** to set Device ID
296
297 **Example:**
298
299 AT+DEUI=868411056754138
300
301 The Device ID is stored in a none-erase area, Upgrade the firmware or run AT+FDR won't erase Device ID.
302
David Huang 44.1 303 === 2.4.2  Version Info ===
David Huang 34.1 304
305 Specify the software version: 0x64=100, means firmware version 1.00.
306
307 For example: 0x00 64 : this device is NSPH01 with firmware version 1.0.0.
308
David Huang 44.1 309 === 2.4.3  Battery Info ===
David Huang 34.1 310
311 Check the battery voltage for NSPH01.
312
313 Ex1: 0x0B45 = 2885mV
314
315 Ex2: 0x0B49 = 2889mV
316
David Huang 44.1 317 === 2.4.4  Signal Strength ===
David Huang 34.1 318
319 NB-IoT Network signal Strength.
320
321 **Ex1: 0x1d = 29**
322
323 **0**  -113dBm or less
324
325 **1**  -111dBm
326
327 **2...30** -109dBm... -53dBm
328
329 **31**   -51dBm or greater
330
331 **99**    Not known or not detectable
332
David Huang 44.1 333 === 2.4.5  Soil PH ===
David Huang 34.1 334
335 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.
336
337 For example, if the data you get from the register is **__0x05 0xDC__**, the PH content in the soil is
338
339 **0229(H) = 549(D) /100 = 5.49.**
340
David Huang 44.1 341 === 2.4.6  Soil Temperature ===
David Huang 34.1 342
343 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 **__0x09 0xEC__**, the temperature content in the soil is
344
345 **Example**:
346
David Huang 40.1 347 If payload is 0105H: ((0x0105 & 0x8000)>>15 === 0),temp = 0105(H)/10 = 26.1 °C
David Huang 34.1 348
David Huang 40.1 349 If payload is FF7EH: ((FF7E & 0x8000)>>15 ===1),temp = (FF7E(H)-FFFF(H))/10 = -12.9 °C
David Huang 34.1 350
David Huang 44.1 351 === 2.4.7  Timestamp ===
David Huang 34.1 352
353 Time stamp : 0x6315537b =1662342011
354
355 Convert Unix timestamp to time 2022-9-5 9:40:11.
356
David Huang 44.1 357 === 2.4.8  Digital Interrupt ===
David Huang 34.1 358
359 Digital Interrupt refers to pin **GPIO_EXTI**, and there are different trigger methods. When there is a trigger, the NSPH01 will send a packet to the server.
360
361 The command is:
362
363 **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]])**.**
364
365 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.
366
367 Example:
368
369 0x(00): Normal uplink packet.
370
371 0x(01): Interrupt Uplink Packet.
372
David Huang 44.1 373 === 2.4.9  ​+5V Output ===
David Huang 34.1 374
375 NSPH01 will enable +5V output before all sampling and disable the +5v after all sampling. 
376
377 The 5V output time can be controlled by AT Command.
378
379 **AT+5VT=1000**
380
381 Means set 5V valid time to have 1000ms. So the real 5V output will actually have 1000ms + sampling time for other sensors.** **
382
383
David Huang 44.1 384 == 2.5  Downlink Payload ==
David Huang 34.1 385
David Huang 41.1 386 By default, NSPH01 prints the downlink payload to console port.
David Huang 34.1 387
David Huang 37.1 388 (% style="text-align:center" %)
389 [[image:image-20220907154636-17.png]]
David Huang 34.1 390
391
392
393
394
395
David Huang 36.1 396
David Huang 34.1 397 **Examples:**
398
399 * **Set TDC**
400
401 If the payload=0100003C, it means set the END Node's TDC to 0x00003C=60(S), while type code is 01.
402
403 Payload:    01 00 00 1E    TDC=30S
404
405 Payload:    01 00 00 3C    TDC=60S
406
407 * **Reset**
408
David Huang 42.1 409 If payload = 0x04FF, it will reset the NSPH01
David Huang 34.1 410
411 * **INTMOD**
412
413 Downlink Payload: 06000003, Set AT+INTMOD=3
414
David Huang 44.1 415 == 2.6  ​LED Indicator ==
David Huang 34.1 416
417 The NSPH01 has an internal LED which is to show the status of different state.
418
419 * 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)
420 * Then the LED will be on for 1 second means device is boot normally.
421 * After NSPH01 join NB-IoT network. The LED will be ON for 3 seconds.
422 * For each uplink probe, LED will be on for 500ms.
423
David Huang 44.1 424 == 2.7 Installation and Maintain ==
David Huang 34.1 425
David Huang 44.1 426 === 2.7.1 Before measurement ===
David Huang 34.1 427
428 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. 
429
David Huang 44.1 430 === 2.7.2 Measurement ===
David Huang 34.1 431
432 **Measurement the soil surface:**
433
434 [[image:image-20220907154700-18.png]] ​
435
436 Choose the proper measuring position. Split the surface soil according to the measured deep.
437
438 Put pure water, or rainwater to make the soil of measurement point to moist mud. Remove rocks or hard things.
439
440 Slowly insert the probe to the measure point. Don't use large force which will break the probe. Make sure not shake when inserting.
441
442 Put soil over the probe after insert. And start to measure.
443
444 **Measurement inside soil:**
445
446 Dig a hole with diameter > 20CM.
447
448 Insert the probe inside, method like measure the surface.
449
David Huang 44.1 450 === 2.7.3 Maintain Probe ===
David Huang 34.1 451
452 1. pH probe electrode is fragile and no strong. User must avoid strong force or hitting it.
453 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.
454 1. Probe reference electrode is also no strong, need to avoid strong force or hitting.
455 1. User should keep reference electrode wet while not use.
456 1. Avoid the probes to touch oily matter. Which will cause issue in accuracy.
457 1. The probe is IP68 can be put in water.
458
David Huang 44.1 459 == 2.8 PH and Temperature alarm function ==
David Huang 34.1 460
461 ➢ AT Command:
462
463 AT+ PHALARM=min,max
464
465 ² When min=3, and max≠0, Alarm higher than max
466
467 ² When min≠0, and max=0, Alarm lower than min
468
469 ² When min≠0 and max≠0, Alarm higher than max or lower than min
470
471 Example:
472
David Huang 43.1 473 AT+ PHALARM =5,8 ~/~/ Alarm when PH lower than 5.
David Huang 34.1 474
475 AT+ TEMPALARM=min,max
476
477 ² When min=0, and max≠0, Alarm higher than max
478
479 ² When min≠0, and max=0, Alarm lower than min
480
481 ² When min≠0 and max≠0, Alarm higher than max or lower than min
482
483 Example:
484
David Huang 43.1 485 AT+ TEMPALARM=20,30 ~/~/ Alarm when temperature lower than 20.
David Huang 34.1 486
487
David Huang 44.1 488 == 2.9 Set the number of data to be uploaded and the recording time ==
David Huang 34.1 489
490 ➢ AT Command:
491
492 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)
493
494 AT+NOUD=8  ~/~/The device uploads 8 sets of recorded data by default. Up to 32 sets of record data can be uploaded.
495
Edwin Chen 47.1 496
David Huang 44.1 497 == 2.10 Read or Clear cached data ==
David Huang 34.1 498
499 ➢ AT Command:
500
501 AT+CDP ~/~/ Read cached data
502
503 [[image:image-20220907154700-19.png]]
504
505
506 AT+CDP=0 ~/~/ Clear cached data
507
508
David Huang 44.1 509 == 2.11 Calibration ==
David Huang 34.1 510
511 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).
512
513 After stable, user can use below command to calibrate.
514
515 [[image:image-20220907154700-20.png]] ​
516
David Huang 44.1 517 == 2.12  ​Firmware Change Log ==
David Huang 34.1 518
519 Download URL & Firmware Change log: [[https:~~/~~/www.dropbox.com/sh/1zmcakvbkf24f8x/AACmq2dZ3iRB9F1nVWeEB9Moa?dl=0>>url:https://www.dropbox.com/sh/1zmcakvbkf24f8x/AACmq2dZ3iRB9F1nVWeEB9Moa?dl=0]]
520
521 Upgrade Instruction: [[Upgrade Firmware>>path:#H5.1200BHowtoUpgradeFirmware]]
522
David Huang 44.1 523 == 2.13  ​Battery Analysis ==
David Huang 34.1 524
David Huang 44.1 525 === 2.13.1  ​Battery Type ===
David Huang 34.1 526
527 The NSPH01 battery is a combination of an 8500mAh Li/SOCI2 Battery and a Super Capacitor. The battery is none-rechargeable battery type with a low discharge rate (<2% per year). This type of battery is commonly used in IoT devices such as water meter.
528
529 The battery is designed to last for several years depends on the actually use environment and update interval. 
530
Edwin Chen 47.1 531 The battery-related documents as below:
David Huang 34.1 532
533 * [[Battery Dimension>>url:http://www.dragino.com/downloads/index.php?dir=datasheet/Battery/ER26500/]]
534 * [[Lithium-Thionyl Chloride Battery datasheet>>url:http://www.dragino.com/downloads/index.php?dir=datasheet/Battery/ER26500/]]
535 * [[Lithium-ion Battery-Capacitor datasheet>>url:http://www.dragino.com/downloads/index.php?dir=datasheet/Battery/ER26500/]]
536
537 [[image:image-20220907154700-21.png]] ​
538
David Huang 44.1 539 === 2.13.2  Power consumption Analyze ===
David Huang 34.1 540
541 Dragino battery powered product are all runs in Low Power mode. We have an update battery calculator which base on the measurement of the real device. User can use this calculator to check the battery life and calculate the battery life if want to use different transmit interval.
542
543 Instruction to use as below:
544
545 **Step 1:  **Downlink the up-to-date DRAGINO_Battery_Life_Prediction_Table.xlsx from: [[https:~~/~~/www.dragino.com/downloads/index.php?dir=LoRa_End_Node/Battery_Analyze/>>url:https://www.dragino.com/downloads/index.php?dir=LoRa_End_Node/Battery_Analyze/]]
546
547 **Step 2: ** Open it and choose
548
549 * Product Model
550 * Uplink Interval
551 * Working Mode
552
553 And the Life expectation in difference case will be shown on the right.
554
555 (% style="text-align:center" %)
556 [[image:image-20220907154700-22.jpeg]]
557
558
559
David Huang 44.1 560 === 2.13.3  ​Battery Note ===
David Huang 34.1 561
562 The Li-SICO battery is designed for small current / long period application. It is not good to use a high current, short period transmit method. The recommended minimum period for use of this battery is 5 minutes. If you use a shorter period time to transmit LoRa, then the battery life may be decreased.
563
David Huang 44.1 564 === 2.13.4  Replace the battery ===
David Huang 34.1 565
566 The default battery pack of NSPH01 includes a ER26500 plus super capacitor. If user can't find this pack locally, they can find ER26500 or equivalence without the SPC1520 capacitor, which will also work in most case. The SPC can enlarge the battery life for high frequency use (update period below 5 minutes).
567
David Huang 44.1 568 = 3. ​ Access NB-IoT Module =
David Huang 34.1 569
570 Users can directly access the AT command set of the NB-IoT module.
571
572 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/]] 
573
574 (% style="text-align:center" %)
575 [[image:image-20220907154700-23.png]]
576
577
578
David Huang 44.1 579 = 4.  Using the AT Commands =
David Huang 34.1 580
David Huang 44.1 581 == 4.1  Access AT Commands ==
David Huang 34.1 582
583 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]]
584
585 AT+<CMD>?  : Help on <CMD>
586
587 AT+<CMD>         : Run <CMD>
588
589 AT+<CMD>=<value> : Set the value
590
591 AT+<CMD>=?  : Get the value
592
593 **General Commands**      
594
595 AT  : Attention       
596
597 AT?  : Short Help     
598
599 ATZ  : MCU Reset    
600
601 AT+TDC  : Application Data Transmission Interval
602
603 AT+CFG  : Print all configurations
604
605 AT+CFGMOD           : Working mode selection
606
607 AT+INTMOD            : Set the trigger interrupt mode
608
609 AT+5VT  : Set extend the time of 5V power  
610
611 AT+PRO  : Choose agreement
612
613 AT+RXDL  : Extend the sending and receiving time
614
615 AT+SERVADDR  : Server Address
616
617 AT+TR      : Get or Set record time"
618
David Huang 50.1 619 AT+APN     : Get or set the APN
David Huang 34.1 620
David Huang 50.1 621 AT+FBAND   : Get or Set whether to automatically modify the frequency band
622
623 AT+DNSCFG  : Get or Set DNS Server
624
625 AT+GETSENSORVALUE   : Returns the current sensor measurement
626
David Huang 34.1 627 AT+NOUD      : Get or Set the number of data to be uploaded
628
629 AT+CDP     : Read or Clear cached data
630
631 AT+TEMPALARM      : Get or Set alarm of temp
632
633 AT+PHALARM     : Get or Set alarm of PH
634
635 AT+ PHCAL  : calibrate PH value
636
637
638 **COAP Management**      
639
640 AT+URI            : Resource parameters
641
642 **UDP Management**
643
644 AT+CFM          : Upload confirmation mode (only valid for UDP)
645
646 **MQTT Management**
647
648 AT+CLIENT               : Get or Set MQTT client
649
650 AT+UNAME  : Get or Set MQTT Username
651
652 AT+PWD                  : Get or Set MQTT password
653
654 AT+PUBTOPIC  : Get or Set MQTT publish topic
655
656 AT+SUBTOPIC  : Get or Set MQTT subscription topic
657
658 **Information**          
659
660 AT+FDR  : Factory Data Reset
661
662 AT+PWORD  : Serial Access Password
663
David Huang 44.1 664 = ​5.  FAQ =
David Huang 34.1 665
David Huang 44.1 666 == 5.1 ​ How to Upgrade Firmware ==
David Huang 34.1 667
668 User can upgrade the firmware for 1) bug fix, 2) new feature release.
669
670 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]]
671
672 **Notice, **NSPH01 **and **NSPH01 **share the same mother board. They use the same connection and method to update.**
673
David Huang 44.1 674 == 5.2  Can I calibrate NSPH01 to different soil types? ==
David Huang 34.1 675
676 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]].
677
David Huang 44.1 678 = 6.  Trouble Shooting =
David Huang 34.1 679
David Huang 44.1 680 == 6.1  ​Connection problem when uploading firmware ==
David Huang 34.1 681
682 **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]]
683
David Huang 44.1 684 == 6.2  AT Command input doesn't work ==
David Huang 34.1 685
686 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 **ENTER** while sending out the command. Some serial tool doesn't send **ENTER** while press the send key, user need to add ENTER in their string.
687
David Huang 44.1 688 = 7. ​ Order Info =
David Huang 34.1 689
690 Part Number**:** NSPH01
691
David Huang 44.1 692 = 8.  Packing Info =
David Huang 34.1 693
694 **Package Includes**:
695
Edwin Chen 47.1 696 * NSPH01 NB-IoT pH Sensor x 1
David Huang 34.1 697 * External antenna x 1
698
699 **Dimension and weight**:
700
701 * Size: 195 x 125 x 55 mm
702 * Weight:   420g
703
David Huang 44.1 704 = 9.  Support =
David Huang 34.1 705
706 * 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.
707 * 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]]
708
709
Copyright ©2010-2024 Dragino Technology Co., LTD. All rights reserved
Dragino Wiki v2.0