<
From version < 56.2 >
edited by Xiaoling
on 2022/10/14 18:06
To version < 49.1 >
edited by Edwin Chen
on 2022/09/08 00:33
>
Change comment: There is no comment for this version

Summary

Details

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