Version 44.3 by Xiaoling on 2022/09/07 17:56

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