Version 44.1 by David Huang on 2022/09/07 17:50

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