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