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

Show last authors
1 (% style="text-align:center" %)
2 [[image:)YK]Y_LZJIO]J2~~VA}OQJM2.png]]
3
4 = 1. Introduction =
5
6 == 1.1 ​What is NSPH01 Soil pH Sensor ==
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
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
23 == 1.2 Features ==
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
40 == 1.3  Specification ==
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
56 == 1.4 Probe Specification ==
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
75 == 1.5 ​Applications ==
76
77 * Smart Agriculture
78
79 == 1.6 Pin mapping and power on ==
80
81 (% style="text-align:center" %)
82 [[image:image-20220907153300-2.png]]
83
84
85 = 2.  Use NSPH01 to communicate with IoT Server =
86
87 == 2.1  How it works ==
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
96 == 2.2 ​ Configure the NSPH01 ==
97
98 === 2.2.1 Test Requirement ===
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
112 === 2.2.2 Insert SIM card ===
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
121 === 2.2.3 Connect USB – TTL to NSPH01 to configure it ===
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
148 === 2.2.4 Use CoAP protocol to uplink data ===
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
169 === 2.2.5 Use UDP protocol to uplink data(Default protocol) ===
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
184 === 2.2.6 Use MQTT protocol to uplink data ===
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
204 === 2.2.7 Use TCP protocol to uplink data ===
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
217 === 2.2.8 Change Update Interval ===
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
225 **~1. By default, the device will send an uplink message every 2 hour.**
226
227 == 2.3  Uplink Payload ==
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" %)
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   
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
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
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
260 * Soil Temperature,Soil PH,Time stamp : 010b0226631550fb
261 * 8 sets of recorded data: Temperature,Soil PH,Time stamp : 010e022663154d77,.......
262
263 == 2.4  Payload Explanation and Sensor Interface ==
264
265 === 2.4.1  Device ID ===
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
277 === 2.4.2  Version Info ===
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
283 === 2.4.3  Battery Info ===
284
285 Check the battery voltage for NSPH01.
286
287 Ex1: 0x0B45 = 2885mV
288
289 Ex2: 0x0B49 = 2889mV
290
291 === 2.4.4  Signal Strength ===
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
307 === 2.4.5  Soil PH ===
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
315 === 2.4.6  Soil Temperature ===
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
321 If payload is 0105H: ((0x0105 & 0x8000)>>15 === 0),temp = 0105(H)/10 = 26.1 °C
322
323 If payload is FF7EH: ((FF7E & 0x8000)>>15 ===1),temp = (FF7E(H)-FFFF(H))/10 = -12.9 °C
324
325 === 2.4.7  Timestamp ===
326
327 Time stamp : 0x6315537b =1662342011
328
329 Convert Unix timestamp to time 2022-9-5 9:40:11.
330
331 === 2.4.8  Digital Interrupt ===
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
347 === 2.4.9  ​+5V Output ===
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
358 == 2.5  Downlink Payload ==
359
360 By default, NSPH01 prints the downlink payload to console port.
361
362 (% style="text-align:center" %)
363 [[image:image-20220907154636-17.png]]
364
365
366
367
368
369
370
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
383 If payload = 0x04FF, it will reset the NSPH01
384
385 * **INTMOD**
386
387 Downlink Payload: 06000003, Set AT+INTMOD=3
388
389 == 2.6  ​LED Indicator ==
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
398 == 2.7 Installation and Maintain ==
399
400 === 2.7.1 Before measurement ===
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
404 === 2.7.2 Measurement ===
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
424 === 2.7.3 Maintain Probe ===
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
433 == 2.8 PH and Temperature alarm function ==
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
447 AT+ PHALARM =5,8 ~/~/ Alarm when PH lower than 5.
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
459 AT+ TEMPALARM=20,30 ~/~/ Alarm when temperature lower than 20.
460
461
462 == 2.9 Set the number of data to be uploaded and the recording time ==
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
471 == 2.10 Read or Clear cached data ==
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
483 == 2.11 Calibration ==
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
491 == 2.12  ​Firmware Change Log ==
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
497 == 2.13  ​Battery Analysis ==
498
499 === 2.13.1  ​Battery Type ===
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
513 === 2.13.2  Power consumption Analyze ===
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
534 === 2.13.3  ​Battery Note ===
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
538 === 2.13.4  Replace the battery ===
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
542 = 3. ​ Access NB-IoT Module =
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
553 = 4.  Using the AT Commands =
554
555 == 4.1  Access AT Commands ==
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
633 = ​5.  FAQ =
634
635 == 5.1 ​ How to Upgrade Firmware ==
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
643 == 5.2  Can I calibrate NSPH01 to different soil types? ==
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
647 = 6.  Trouble Shooting =
648
649 == 6.1  ​Connection problem when uploading firmware ==
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
653 == 6.2  AT Command input doesn't work ==
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
657 = 7. ​ Order Info =
658
659 Part Number**:** NSPH01
660
661 = 8.  Packing Info =
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
673 = 9.  Support =
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