Last modified by Mengting Qiu on 2024/04/02 16:44

From version 112.1
edited by Xiaoling
on 2022/07/09 15:48
Change comment: Uploaded new attachment "1657352898400-901.png", version {1}
To version 129.35
edited by Xiaoling
on 2023/04/03 16:57
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -9,6 +9,7 @@
9 9  
10 10  **Table of Contents:**
11 11  
12 +{{toc/}}
12 12  
13 13  
14 14  
... ... @@ -21,16 +21,29 @@
21 21  (((
22 22  
23 23  
25 +(((
24 24  The Dragino N95S31B is a (% style="color:blue" %)**NB-IoT Temperature and Humidity Sensor**(%%) for Internet of Things solution. It is used to measure the (% style="color:blue" %)**surrounding environment temperature and relative air humidity precisely**(%%), and then upload to IoT server via NB-IoT network*.
27 +)))
25 25  
29 +(((
26 26  The temperature & humidity sensor used in N95S31B is SHT31, which is fully calibrated, linearized, and temperature compensated digital output from Sensirion, it provides a strong reliability and long-term stability. The SHT31 is fixed in a (% style="color:blue" %)**waterproof anti-condensation casing **(%%)for long term use.
31 +)))
27 27  
33 +(((
28 28  N95S31B supports different uplink methods include (% style="color:blue" %)**TCP, MQTT, UDP and CoAP**(%%) for different application requirement.
35 +)))
29 29  
37 +(((
30 30  N95S31B is powered by(% style="color:blue" %)**8500mAh Li-SOCI2 battery**(%%), It is designed for long term use up to several years. (Real-world battery life depends on the use environment, update period. Please check related Power Analyze report).
39 +)))
31 31  
41 +(((
42 +
43 +)))
32 32  
45 +(((
33 33  ~* make sure you have NB-IoT coverage locally.
47 +)))
34 34  
35 35  
36 36  )))
... ... @@ -54,7 +54,6 @@
54 54  * 8500mAh Battery for long term use
55 55  
56 56  
57 -
58 58  == 1.3  Specification ==
59 59  
60 60  
... ... @@ -74,7 +74,6 @@
74 74  
75 75  (% style="color:#037691" %)**Battery:**
76 76  
77 -
78 78  * Li/SOCI2 un-chargeable battery
79 79  * Capacity: 8500mAh
80 80  * Self Discharge: <1% / Year @ 25°C
... ... @@ -82,9 +82,9 @@
82 82  * Max boost current: 2A, 1 second
83 83  
84 84  
85 -
86 86  == ​1.4  Applications ==
87 87  
99 +
88 88  * Smart Buildings & Home Automation
89 89  * Logistics and Supply Chain Management
90 90  * Smart Metering
... ... @@ -96,43 +96,49 @@
96 96  ​
97 97  
98 98  
99 -== 1.5  Pin Definitions ==
111 +== 1.5  Pin Definitions & Switch ==
100 100  
113 +
101 101  N95S31B use the mother board from NBSN95 which as below.
102 102  
116 +
103 103  [[image:image-20220709144723-1.png]]
104 104  
105 105  
106 106  === 1.5.1 Jumper JP2 ===
107 107  
122 +
108 108  Power on Device when put this jumper.
109 109  
110 110  
111 -
112 112  === 1.5.2 BOOT MODE / SW1 ===
113 113  
114 -1) ISP: upgrade mode, device won't have any signal in this mode. but ready for upgrade firmware. LED won't work. Firmware won't run.
115 115  
116 -2) Flash: work mode, device starts to work and send out console output for further debug
129 +(((
130 +**1) ISP: ** upgrade mode, device won't have any signal in this mode. but ready for upgrade firmware. LED won't work. Firmware won't run.
131 +)))
117 117  
133 +(((
134 +**2) Flash:**  work mode, device starts to work and send out console output for further debug
135 +)))
118 118  
119 119  
120 120  === 1.5.3 Reset Button ===
121 121  
140 +
122 122  Press to reboot the device.
123 123  
124 124  
125 -
126 126  === 1.5.4 LED ===
127 127  
146 +
128 128  It will flash:
129 129  
130 -1. When boot the device in flash mode
131 -1. Send an uplink packet
149 +1.  When boot the device in flash mode
132 132  
151 +2.  Send an uplink packet
133 133  
134 134  
135 -
136 136  = 2.  Use N95S31B to communicate with IoT Server =
137 137  
138 138  == 2.1  How it works ==
... ... @@ -151,7 +151,7 @@
151 151  
152 152  )))
153 153  
154 -[[image:1657350248151-650.png]]
172 +[[image:1657520100595-569.png]]
155 155  
156 156  (((
157 157  
... ... @@ -160,7 +160,6 @@
160 160  
161 161  == 2.2 ​ Configure the N95S31B ==
162 162  
163 -
164 164  === 2.2.1  Power On N95S31B ===
165 165  
166 166  
... ... @@ -167,27 +167,48 @@
167 167  [[image:image-20220709150546-2.png]]
168 168  
169 169  
170 -=== 2.2.1 Test Requirement ===
187 +=== 2.2.2 Test Requirement ===
171 171  
172 172  
190 +(((
173 173  To use N95S31B in your city, make sure meet below requirements:
192 +)))
174 174  
175 -* Your local operator has already distributed a NB-IoT Network there.
176 -* The local NB-IoT network used the band that N95S31B supports.
177 -* Your operator is able to distribute the data received in their NB-IoT network to your IoT server.
194 +* (((
195 +Your local operator has already distributed a NB-IoT Network there.
196 +)))
197 +* (((
198 +The local NB-IoT network used the band that N95S31B supports.
199 +)))
200 +* (((
201 +Your operator is able to distribute the data received in their NB-IoT network to your IoT server.
202 +)))
178 178  
179 -
204 +(((
180 180  Below figure shows our testing structure. Here we have NB-IoT network coverage by China Mobile, the band they use is B8.
206 +)))
181 181  
208 +(((
182 182  N95S31B supports different communication protocol such as :
210 +)))
183 183  
184 184  (((
185 -* CoAP  ((% style="color:red" %)120.24.4.116:5683(%%))
186 -* raw UDP  ((% style="color:red" %)120.24.4.116:5601(%%))
187 -* MQTT  ((% style="color:red" %)120.24.4.116:1883(%%))
188 -* TCP  ((% style="color:red" %)120.24.4.116:5600(%%))
213 +* (((
214 +CoAP  ((% style="color:red" %)120.24.4.116:5683(%%))
215 +)))
216 +* (((
217 +raw UDP  ((% style="color:red" %)120.24.4.116:5601(%%))
218 +)))
219 +* (((
220 +MQTT  ((% style="color:red" %)120.24.4.116:1883(%%))
221 +)))
222 +* (((
223 +TCP  ((% style="color:red" %)120.24.4.116:5600(%%))
224 +)))
189 189  
226 +(((
190 190  We will show how to use with each protocol. The IP addresses above are our test server. User need to change to point their corresponding server.
228 +)))
191 191  
192 192  
193 193  )))
... ... @@ -195,9 +195,9 @@
195 195  [[image:1657350625843-586.png]]
196 196  
197 197  
198 -
199 199  === 2.2.3  Insert SIM card ===
200 200  
238 +
201 201  (((
202 202  Insert the NB-IoT Card get from your provider.
203 203  )))
... ... @@ -210,26 +210,29 @@
210 210  [[image:1657351240556-536.png]]
211 211  
212 212  
213 -
214 214  === 2.2.4  Connect USB – TTL to N95S31B to configure it ===
215 215  
253 +
216 216  (((
217 217  (((
218 218  User need to configure N95S31B via serial port to set the (% style="color:blue" %)**Server Address** / **Uplink Topic** (%%)to define where and how-to uplink packets. N95S31B support AT Commands, user can use a USB to TTL adapter to connect to N95S31B and use AT Commands to configure it, as below.
257 +
258 +
219 219  )))
220 220  )))
221 221  
222 222  [[image:1657351312545-300.png]]
223 223  
224 -**Connection:**
225 225  
226 - (% style="background-color:yellow" %)USB TTL GND <~-~-~-~-> GND
265 +(% style="color:blue" %)**Connection:**
227 227  
228 - (% style="background-color:yellow" %)USB TTL TXD <~-~-~-~-> UART_RXD
267 + (% style="background-color:yellow" %)**USB TTL GND <~-~-~-~-> GND**
229 229  
230 - (% style="background-color:yellow" %)USB TTL RXD <~-~-~-~-> UART_TXD
269 +**~ (% style="background-color:yellow" %)USB TTL TXD <~-~-~-~-> UART_RXD(%%)**
231 231  
271 +**~ (% style="background-color:yellow" %)USB TTL RXD <~-~-~-~-> UART_TXD(%%)**
232 232  
273 +
233 233  In the PC, use below serial tool settings:
234 234  
235 235  * Baud:  (% style="color:green" %)**9600**
... ... @@ -244,17 +244,18 @@
244 244  
245 245  [[image:1657329814315-101.png]]
246 246  
288 +
247 247  (((
248 -(% style="color:red" %)Note: the valid AT Commands can be found at:  (%%)[[https:~~/~~/www.dragino.com/downloads/index.php?dir=NB-IoT/N95S31B/>>url:https://www.dragino.com/downloads/index.php?dir=NB-IoT/N95S31B/]]
290 +(% style="color:red" %)**Note: the valid AT Commands can be found at:  **(%%)**[[https:~~/~~/www.dropbox.com/sh/mlpd6l05bogvaf6/AABwAJLMttqG7i~~-~~-AyZcQkoua?dl=0>>https://www.dropbox.com/sh/mlpd6l05bogvaf6/AABwAJLMttqG7i--AyZcQkoua?dl=0]]**
249 249  )))
250 250  
251 251  
252 -
253 253  === 2.2.5  Use CoAP protocol to uplink data ===
254 254  
255 -(% 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/>>http://wiki.dragino.com/xwiki/bin/view/Main/Set%20up%20CoAP%20Server/]]
256 256  
297 +(% 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/>>http://wiki.dragino.com/xwiki/bin/view/Main/Set%20up%20CoAP%20Server/]]**
257 257  
299 +
258 258  (((
259 259  **Use below commands:**
260 260  )))
... ... @@ -263,10 +263,10 @@
263 263  (% style="color:blue" %)**AT+PRO=1**  (%%) ~/~/ Set to use CoAP protocol to uplink
264 264  )))
265 265  * (((
266 -(% style="color:blue" %)**AT+SERVADDR=120.24.4.116,5683   ** (%%)~/~/ to set CoAP server address and port
308 +(% style="color:blue" %)**AT+SERVADDR=120.24.4.116,5683   ** (%%)~/~/ to set CoAP server address and port
267 267  )))
268 268  * (((
269 -(% style="color:blue" %)**AT+URI=5,11,"mqtt",11,"coap",12,"0",15,"c=text1",23,"0" ** (%%) ~/~/Set COAP resource path
311 +(% style="color:blue" %)**AT+URI=5,11,"mqtt",11,"coap",12,"0",15,"c=text1",23,"0" ** (%%) ~/~/  Set COAP resource path
270 270  )))
271 271  
272 272  (((
... ... @@ -285,7 +285,6 @@
285 285  [[image:1657352185396-303.png]]
286 286  
287 287  
288 -
289 289  === 2.2.6  Use UDP protocol to uplink data(Default protocol) ===
290 290  
291 291  
... ... @@ -299,24 +299,25 @@
299 299  [[image:1657352403317-397.png]]
300 300  
301 301  
302 -
303 303  === 2.2.7  Use MQTT protocol to uplink data ===
304 304  
305 -N95S31B supports only plain MQTT now it doesn’t support TLS and other related encryption.
306 306  
307 -* (% style="color:blue" %)**AT+PRO=3   ** (%%) ~/~/Set to use MQTT protocol to uplink
308 -* (% style="color:blue" %)**AT+SERVADDR=120.24.4.116,1883   ** (%%) ~/~/Set MQTT server address and port
309 -* (% style="color:blue" %)**AT+CLIENT=CLIENT       ** (%%)~/~/Set up the CLIENT of MQTT
310 -* (% style="color:blue" %)**AT+UNAME=UNAME                                **(%%)~/~/Set the username of MQTT
311 -* (% style="color:blue" %)**AT+PWD=PWD                                         **(%%)~/~/Set the password of MQTT
312 -* (% style="color:blue" %)**AT+PUBTOPIC=f9527  **(%%)~/~/Set the sending topic of MQTT
313 -* (% style="color:blue" %)**AT+SUBTOPIC=Ns9527  **(%%) ~/~/Set the subscription topic of MQTT
346 +N95S31B supports only plain MQTT now it doesn't support TLS and other related encryption.
314 314  
348 +* (% style="color:blue" %)**AT+PRO=3   ** (%%) ~/~/  Set to use MQTT protocol to uplink
349 +* (% style="color:blue" %)**AT+SERVADDR=120.24.4.116,1883   ** (%%) ~/~/  Set MQTT server address and port
350 +* (% style="color:blue" %)**AT+CLIENT=CLIENT       ** (%%)~/~/  Set up the CLIENT of MQTT
351 +* (% style="color:blue" %)**AT+UNAME=UNAME                                **(%%)~/~/  Set the username of MQTT
352 +* (% style="color:blue" %)**AT+PWD=PWD                                         **(%%)~/~/  Set the password of MQTT
353 +* (% style="color:blue" %)**AT+PUBTOPIC=f9527                               **(%%)~/~/  Set the sending topic of MQTT
354 +* (% style="color:blue" %)**AT+SUBTOPIC=Ns9527          **(%%) ~/~/  Set the subscription topic of MQTT
355 +
315 315  [[image:1657352634421-276.png]]
316 316  
317 317  
318 318  [[image:1657352645687-385.png]]
319 319  
361 +
320 320  (((
321 321  To save battery life, N95S31B will establish a subscription before each uplink and close the subscription 3 seconds after uplink successful. Any downlink commands from server will only arrive during the subscription period.
322 322  )))
... ... @@ -327,21 +327,22 @@
327 327  )))
328 328  
329 329  
372 +=== 2.2.8  Use TCP protocol to uplink data ===
330 330  
331 -=== 2.2.7 Use TCP protocol to uplink data ===
332 332  
375 +This feature is supported since firmware version v110
333 333  
334 334  * (% style="color:blue" %)**AT+PRO=4   ** (%%) ~/~/ Set to use TCP protocol to uplink
335 335  * (% style="color:blue" %)**AT+SERVADDR=120.24.4.116,5600   **(%%) ~/~/ to set TCP server address and port
336 336  
337 -[[image:image-20220709093918-1.png]]
380 +[[image:1657352898400-901.png]]
338 338  
339 339  
340 -[[image:image-20220709093918-2.png]]
383 +[[image:1657352914475-252.png]]
341 341  
342 342  
386 +=== 2.2.9  Change Update Interval ===
343 343  
344 -=== 2.2.8 Change Update Interval ===
345 345  
346 346  User can use below command to change the (% style="color:green" %)**uplink interval**.
347 347  
... ... @@ -348,164 +348,244 @@
348 348  * (% style="color:blue" %)**AT+TDC=600      ** (%%)~/~/ Set Update Interval to 600s
349 349  
350 350  (((
351 -(% style="color:red" %)**NOTE:**
394 +
352 352  )))
353 353  
354 354  (((
355 -(% style="color:red" %)1. By default, the device will send an uplink message every 1 hour.
398 +(% style="color:red" %)**NOTE: Since firmware version is v1.2:**
356 356  )))
357 357  
401 +(((
402 +(% style="color:red" %)**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).**
403 +)))
358 358  
359 359  
360 360  == 2.3  Uplink Payload ==
361 361  
362 -In this mode, uplink payload includes in total 14 bytes
363 363  
409 +(((
410 +N95S31B has different working modes for the connections of different types of sensors. This section describes these modes. User can use the AT Command (% style="color:blue" %)**AT+MOD**(%%) to set NBSN95 to different working modes.
411 +)))
364 364  
365 -(% border="1" cellspacing="10" style="background-color:#ffffcc; color:green; width:440px" %)
366 -|=(% style="width: 60px;" %)(((
367 -**Size(bytes)**
368 -)))|=(% style="width: 60px;" %)**6**|=(% style="width: 35px;" %)2|=(% style="width: 35px;" %)**2**|=(% style="width: 80px;" %)**1**|=(% style="width: 100px;" %)**2**|=(% style="width: 60px;" %)**1**
369 -|(% style="width:97px" %)**Value**|(% style="width:83px" %)[[Device ID>>||anchor="H2.4.1A0A0DeviceID"]]|(% style="width:41px" %)[[Ver>>||anchor="H2.4.2A0VersionInfo"]]|(% style="width:46px" %)[[BAT>>||anchor="H2.4.3A0BatteryInfo"]]|(% style="width:123px" %)[[Signal Strength>>||anchor="H2.4.4A0SignalStrength"]]|(% style="width:120px" %)[[Distance (unit: mm)>>||anchor="H2.4.5A0Distance"]]|(% style="width:80px" %)[[Interrupt>>||anchor="H2.4.6A0DigitalInterrupt"]]
370 370  
371 371  (((
372 -If we use the MQTT client to subscribe to this MQTT topic, we can see the following information when the NDDS751 uplink data.
415 +For example:
373 373  )))
374 374  
418 +(((
419 + (% style="color:blue" %)**AT+CFGMOD=2 ** (%%)~/~/will set the N95S31B to work in MOD=2 distance mode which target to measure distance via Ultrasonic Sensor.
420 +)))
375 375  
376 -[[image:1657331036973-987.png]]
377 377  
378 378  (((
379 -The payload is ASCII string, representative same HEX:
424 +The uplink payloads are composed in  ASCII String. For example:
380 380  )))
381 381  
382 382  (((
383 -0x72403155615900640c6c19029200 where:
428 +0a cd 00 ed 0a cc 00 00 ef 02 d2 1d (total 24 ASCII Chars) . Representative the actually payload:
384 384  )))
385 385  
386 -* (((
387 -Device ID: 0x724031556159 = 724031556159
431 +(((
432 +0x 0a cd 00 ed 0a cc 00 00 ef 02 d2 1d Total 12 bytes
388 388  )))
389 -* (((
390 -Version: 0x0064=100=1.0.0
434 +
435 +
436 +(((
437 +(% style="color:red" %)**NOTE:**
391 391  )))
392 392  
393 -* (((
394 -BAT: 0x0c6c = 3180 mV = 3.180V
440 +(% style="color:red" %)
441 +1. (((
442 +**All modes share the same Payload Explanation from [[HERE>>||anchor="H2.3A0UplinkPayload"]].**
395 395  )))
396 -* (((
397 -Signal: 0x19 = 25
398 -)))
399 -* (((
400 -Distance: 0x0292= 658 mm
401 -)))
402 -* (((
403 -Interrupt: 0x00 = 0
444 +1. (((
445 +**By default, the device will send an uplink message every 1 hour.**
404 404  
405 405  
406 -
407 407  
408 408  )))
409 409  
410 -== 2.4  Payload Explanation and Sensor Interface ==
451 +=== 2.3.1  Payload Analyze ===
411 411  
453 +==== 2.3.1.1  Before Firmware v1.2 ====
412 412  
413 -=== 2.4.1  Device ID ===
414 414  
456 +N95S31B uplink payload includes in total 21 bytes
457 +
458 +
459 +(% border="1" style="background-color:#ffffcc; color:green; width:520px" %)
460 +|=(% style="width: 50px;" %)**Size(bytes)**|=(% style="width: 45px;" %)**6**|=(% style="width: 25px;" %)2|=(% style="width: 25px;" %)**2**|=(% style="width: 65px;" %)**1**|=(% style="width: 50px;" %)1|=(% style="width: 120px;" %)5|=(% style="width: 70px;" %)**2**|=(% style="width: 70px;" %)**2**
461 +|(% style="width:97px" %)**Value**|(% style="width:65px" %)[[Device ID>>||anchor="H2.3.2A0DeviceID"]]|(% style="width:50px" %)[[Ver>>||anchor="H2.3.3A0VersionInfo"]]|(% style="width:46px" %)[[BAT>>||anchor="H2.3.4A0BatteryInfo"]]|(% style="width:75px" %)[[Signal Strength>>||anchor="H2.3.5A0SignalStrength"]]|(% style="width:59px" %)MOD 0X01|(% style="width:162px" %)(((
415 415  (((
416 -By default, the Device ID equal to the last 6 bytes of IMEI.
463 +Reserve/ Same as NBSN95 CFGMOD=1
417 417  )))
418 418  
419 419  (((
420 -User can use (% style="color:blue" %)**AT+DEUI**(%%) to set Device ID
467 +No function here.
421 421  )))
469 +)))|(% style="width:102px" %)(((
470 +(((
471 +[[Temperature >>||anchor="H2.3.6A0Temperature26Humidity"]]
472 +)))
422 422  
423 423  (((
424 -**Example:**
475 +By SHT31
425 425  )))
477 +)))|(% style="width:81px" %)(((
478 +(((
479 +[[Humidity>>||anchor="H2.3.6A0Temperature26Humidity"]]
480 +)))
426 426  
427 427  (((
428 -AT+DEUI=A84041F15612
483 +By SHT31
429 429  )))
485 +)))
430 430  
431 431  (((
432 -The Device ID is stored in a none-erase area, Upgrade the firmware or run **AT+FDR** won't erase Device ID.
488 +
489 +
490 +(((
491 +If we use the MQTT client to subscribe to this MQTT topic, we can see the following information when the NB sensor uplink data.
433 433  )))
493 +)))
434 434  
435 435  
496 +[[image:1657354294009-643.png]]
436 436  
437 -=== 2.4.2  Version Info ===
438 438  
439 -(((
440 -Specify the software version: 0x64=100, means firmware version 1.00.
441 -)))
499 +The payload is ASCII string, representative same HEX: (% style="background-color:yellow" %)**0x724031607457 006e 0ccd 1b 01 00dc000ccc 00e1 0186**
442 442  
443 -(((
444 -For example: 0x00 64 : this device is NDDS75 with firmware version 1.0.0.
445 -)))
501 +**where:**
446 446  
503 +* (% style="color:#037691" %)**Device ID:** (%%) 0x724031607457 = 724031607457
447 447  
505 +* (% style="color:#037691" %)**Version: **(%%) 0x006e=110=1.1.0
448 448  
449 -=== 2.4.3  Battery Info ===
507 +* (% style="color:#037691" %)**BAT:**   (%%) 0x0ccd = 3277 mV = 3.277V
450 450  
451 -(((
452 -Ex1: 0x0B45 = 2885mV
453 -)))
509 +* (% style="color:#037691" %)**Signal:** (%%) 0x1b = 27
454 454  
455 -(((
456 -Ex2: 0x0B49 = 2889mV
457 -)))
511 +* (% style="color:#037691" %)**Model:** (%%) 0x01 = 1
458 458  
513 +* (% style="color:#037691" %)**0x00dc000ccc= reserve, ignore in N95S31B**
459 459  
515 +* (% style="color:#037691" %)**Temperature by SHT31:** (%%) 0x00e1 = 225 = 22.5 °C
460 460  
461 -=== 2.4.4  Signal Strength ===
517 +* (% style="color:#037691" %)**Humidity by SHT31:**  (%%) 0x0186 = 390 = 39.0 %rh
462 462  
463 463  (((
464 -NB-IoT Network signal Strength.
465 -)))
520 +
466 466  
467 -(((
468 -**Ex1: 0x1d = 29**
522 +
523 +
469 469  )))
470 470  
526 +==== 2.3.1.2 Since Firmware v1.2 ====
527 +
528 +
529 +In this mode, uplink payload includes 91 bytes in total by default.
530 +
531 +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.
532 +
533 +
534 +(% border="1" style="background-color:#ffffcc; color:green; width:520px" %)
535 +|=(% scope="row" style="width: 50px;" %)**Size(bytes)**|(% style="width:40px" %)**8**|(% style="width:20px" %)**2**|(% style="width:20px" %)**2**|(% style="width:30px" %)**1**|(% style="width:20px" %)**1**|(% style="width:55px" %)**2**|(% style="width:35px" %)**1**|(% style="width:20px" %)**2**|(% style="width:40px" %)**2**|(% style="width:40px" %)**2**|(% style="width:30px" %)**4**|(% style="width:40px" %)**2**|(% style="width:40px" %)**2**|(% style="width:35px" %)**4**
536 +|=(% style="width: 95px;" %)**Value**|(% style="width:82px" %)Device ID|(% style="width:43px" %)Ver|(% style="width:47px" %)BAT|(% style="width:124px" %)Signal Strength|(% style="width:56px" %)MOD|(% style="width:109px" %)TemDS18B20|(% style="width:80px" %)Interrupt|(% style="width:51px" %)ADC|(% style="width:79px" %)SHTTEM|(% style="width:84px" %)SHTHUM|(% style="width:100px" %)Time stamp |(% style="width:76px" %)SHTTEM|(% style="width:81px" %)SHTHUM|(% style="width:121px" %)Time stamp .....
537 +
538 +If we use the MQTT client to subscribe to this MQTT topic, we can see the following information when the N95S31B uplink data.
539 +
540 +
541 +[[image:image-20220908154949-1.png]]
542 +
543 +
544 +The payload is ASCII string, representative same HEX:
545 +
546 +**0x (% style="color:red" %)__f868411056758782__ (% style="color:blue" %)__000c__ (% style="color:green" %)__0d0f__ (% style="color:#00b0f0" %)__0c__ (% style="color:#7030a0" %)__01__ (% style="color:#d60093" %)__0000__ (% style="color:#a14d07" %)__00__ __0030__ (% style="color:#0020b0" %)__0114__ (% style="color:#420042" %)__0231__ (% style="color:#663300" %)__63199d3c__ (%%)__0113023163199d12__ __0113023163199c5e__// //__0112023763199baa__ __0112023263199af6__// //__0111023b631999a7__ **
547 +
548 +**__0112023b631998f3__// //__011202426319983f__ __01110242631996eb__**
549 +
550 +**where:**
551 +
552 +* (% style="color:#037691" %)**Device ID:**(%%) f868411056758782 = f868411056758782
553 +
554 +* (% style="color:#037691" %)**Version:** (%%)0x000c=120=1.2
555 +
556 +* (% style="color:#037691" %)**BAT:**      (%%)0x0d0f = 3343 mV = 3.343V
557 +
558 +* (% style="color:#037691" %)**Singal:**(%%)  0x0c = 12
559 +
560 +* (% style="color:#037691" %)**Mod:**(%%)  0x01 = 1
561 +
562 +* (% style="color:#037691" %)**TemDS18B20:**(%%)  0x0000= 0 = 0
563 +
564 +* (% style="color:#037691" %)**Interrupt:**  (%%)0x00= 0
565 +
566 +* (% style="color:#037691" %)**adc:**(%%)  0x0030= 48
567 +
568 +* (% style="color:#037691" %)**SHTTEM:**(%%)  0x0114= 276 = 27.6
569 +
570 +* (% style="color:#037691" %)**SHTHUM:**(%%)  0x0231 =561=56.1%
571 +
572 +* (% style="color:#037691" %)**Time stamp :  **(%%)0x63199d3c =1662342011  ([[Unix Epoch Time>>url:http://www.epochconverter.com/]])
573 +
574 +* (% style="color:#037691" %)**SHTTEM,SHTHUM,Time stamp :**(%%)  0113023163199d12
575 +
576 +* (% style="color:#037691" %)**8 sets of recorded data:**(%%)** **SHTTEM,SHTHUM,Time stamp : 0113023163199c5e, .......
577 +
578 +
579 +=== 2.3.2  Device ID ===
580 +
581 +
471 471  (((
472 -(% style="color:blue" %)**0**(%%)  -113dBm or less
583 +By default, the Device ID equal to the last 6 bytes of IMEI.
473 473  )))
474 474  
475 475  (((
476 -(% style="color:blue" %)**1**(%%)  -111dBm
587 +User can use (% style="color:blue" %)**AT+DEUI**(%%) to set Device ID
588 +
589 +
477 477  )))
478 478  
479 479  (((
480 -(% style="color:blue" %)**2...30**(%%) -109dBm... -53dBm
593 +(% style="color:blue" %)**Example:**
481 481  )))
482 482  
483 483  (((
484 -(% style="color:blue" %)**31**  (%%) -51dBm or greater
597 +AT+DEUI=A84041F15612
485 485  )))
486 486  
487 487  (((
488 -(% style="color:blue" %)**99**   (%%) Not known or not detectable
601 +The Device ID is stored in a none-erase area, Upgrade the firmware or run (% style="color:blue" %)**AT+FDR**(%%) won't erase Device ID.
602 +
603 +
489 489  )))
490 490  
606 +(% style="color:red" %)**NOTE: When the firmware version is v1.2 and later firmware:**
491 491  
492 492  
493 -=== 2.4.5  Distance ===
609 +By default, the Device ID equal to the last 15 bits of IMEI.
494 494  
495 -Get the distance. Flat object range 280mm - 7500mm.
611 +User can use ** (% style="color:blue" %)AT+DEUI(%%)** to set Device ID
496 496  
613 +
614 +(% style="color:blue" %)**Example:**
615 +
616 +AT+DEUI=868411056754138
617 +
618 +
619 +=== 2.3.3  Version Info ===
620 +
621 +
497 497  (((
498 -For example, if the data you get from the register is **__0x0B 0x05__**, the distance between the sensor and the measured object is
623 +These bytes include the hardware and software version.
499 499  )))
500 500  
501 501  (((
502 -(((
503 -(% style="color:blue" %)** 0B05(H) = 2821(D) = 2821mm.**
627 +Higher byte: Specify hardware version: always 0x00 for N95S31B
504 504  )))
505 -)))
506 506  
507 507  (((
508 -
631 +Lower byte: Specify the software version: 0x6E=110, means firmware version 110
509 509  )))
510 510  
511 511  (((
... ... @@ -512,65 +512,81 @@
512 512  
513 513  )))
514 514  
515 -=== 2.4.6  Digital Interrupt ===
516 -
517 517  (((
518 -Digital Interrupt refers to pin (% style="color:blue" %)**GPIO_EXTI**(%%), and there are different trigger methods. When there is a trigger, the NDDS75 will send a packet to the server.
639 +For example: 0x00 6E: this device is N95S31B with firmware version 110.
519 519  )))
520 520  
521 521  (((
522 -The command is:
643 +
523 523  )))
524 524  
646 +=== 2.3.4  Battery Info ===
647 +
648 +
525 525  (((
526 -(% 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]])**.**
650 +Ex1: 0x0B45 = 2885mV
527 527  )))
528 528  
529 -
530 530  (((
531 -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.
654 +Ex2: 0x0B49 = 2889mV
532 532  )))
533 533  
534 534  
658 +=== 2.3.5  Signal Strength ===
659 +
660 +
535 535  (((
536 -Example:
662 +NB-IoT Network signal Strength.
537 537  )))
538 538  
539 539  (((
540 -0x(00): Normal uplink packet.
666 +**Ex1: 0x1d = 29**
541 541  )))
542 542  
543 543  (((
544 -0x(01): Interrupt Uplink Packet.
670 +(% style="color:blue" %)**0**(%%)  -113dBm or less
545 545  )))
546 546  
547 -
548 -
549 -=== 2.4.7  ​+5V Output ===
550 -
551 551  (((
552 -NDDS75 will enable +5V output before all sampling and disable the +5v after all sampling. 
674 +(% style="color:blue" %)**1**(%%)  -111dBm
553 553  )))
554 554  
555 -
556 556  (((
557 -The 5V output time can be controlled by AT Command.
678 +(% style="color:blue" %)**2...30**(%%) -109dBm... -53dBm
558 558  )))
559 559  
560 560  (((
561 -(% style="color:blue" %)**AT+5VT=1000**
682 +(% style="color:blue" %)**31**  (%%) -51dBm or greater
562 562  )))
563 563  
564 564  (((
565 -Means set 5V valid time to have 1000ms. So the real 5V output will actually have 1000ms + sampling time for other sensors.
686 +(% style="color:blue" %)**99**   (%%) Not known or not detectable
566 566  )))
567 567  
568 568  
690 +=== 2.3.6  Temperature & Humidity ===
569 569  
570 -== 2.5  Downlink Payload ==
571 571  
572 -By default, NDDS75 prints the downlink payload to console port.
693 +The device will be able to get the SHT31 temperature and humidity data now and upload to IoT Server.
573 573  
695 +[[image:image-20220709161741-3.png]]
696 +
697 +
698 +Convert the read byte to decimal and divide it by ten.
699 +
700 +
701 +**Example:**
702 +
703 +Temperature:  Read:00ec (H) = 236(D)  Value:  236 /10=23.6℃
704 +
705 +Humidity:    Read:0295(H)=661(D)    Value:  661 / 10=66.1, So 66.1%
706 +
707 +
708 +== 2.4  Downlink Payload ==
709 +
710 +
711 +By default, N95S31B prints the downlink payload to console port.
712 +
574 574  [[image:image-20220709100028-1.png]]
575 575  
576 576  
... ... @@ -607,7 +607,7 @@
607 607  )))
608 608  
609 609  (((
610 -If payload = 0x04FF, it will reset the NDDS75
749 +If payload = 0x04FF, it will reset the N95S31B
611 611  )))
612 612  
613 613  
... ... @@ -618,144 +618,99 @@
618 618  )))
619 619  
620 620  
760 +== 2.5  Humidity and Temperature alarm function ==
621 621  
622 -== 2.6  ​LED Indicator ==
623 623  
763 +**~ (% style="color:blue" %)➢ AT Command:(%%)**
624 624  
625 -The NDDS75 has an internal LED which is to show the status of different state.
626 626  
766 +(% style="color:#037691" %)**AT+ SHHUM=min,max**
627 627  
628 -* When power on, NDDS75 will detect if sensor probe is connected, if probe detected, LED will blink four times. (no blinks in this step is no probe)
629 -* Then the LED will be on for 1 second means device is boot normally.
630 -* After NDDS75 join NB-IoT network. The LED will be ON for 3 seconds.
631 -* For each uplink probe, LED will be on for 500ms.
632 632  
633 -(((
634 -
635 -)))
769 +² When min=0, and max≠0, Alarm higher than max
636 636  
771 +² When min≠0, and max=0, Alarm lower than min
637 637  
773 +² When min≠0 and max≠0, Alarm higher than max or lower than min
638 638  
639 -== 2.7  ​Firmware Change Log ==
640 640  
776 + (% style="color:blue" %)**Example:**
641 641  
642 -(((
643 -Download URL & Firmware Change log
644 -)))
778 +AT+ SHHUM=50,80 ~/~/ Alarm when humidity lower than 50.
645 645  
646 -(((
647 -[[https:~~/~~/www.dragino.com/downloads/index.php?dir=NB-IoT/NDDS75/Firmware/>>url:https://www.dragino.com/downloads/index.php?dir=NB-IoT/NDDS75/Firmware/]]
648 -)))
649 649  
781 +(% style="color:#037691" %)**AT+ SHTEMP=min,max**
650 650  
651 -(((
652 -Upgrade Instruction: [[Upgrade_Firmware>>||anchor="H5.1200BHowtoUpgradeFirmware"]]
653 -)))
783 +² When min=0, and max≠0, Alarm higher than max
654 654  
785 +² When min≠0, and max=0, Alarm lower than min
655 655  
787 +² When min≠0 and max≠0, Alarm higher than max or lower than min
656 656  
657 -== 2.8  ​Battery Analysis ==
658 658  
659 -=== 2.8.1  ​Battery Type ===
790 +**~ (% style="color:blue" %)Example:(%%)**
660 660  
792 +AT+ SHTEMP=20,30 ~/~/ Alarm when temperature lower than 20.
661 661  
662 -(((
663 -The NDDS75 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.
664 -)))
665 665  
666 -(((
667 -The battery is designed to last for several years depends on the actually use environment and update interval. 
668 -)))
795 +== 2.6 Set the number of data to be uploaded and the recording time ==
669 669  
670 -(((
671 -The battery related documents as below:
672 -)))
673 673  
674 -* [[Battery Dimension>>http://www.dragino.com/downloads/index.php?dir=datasheet/Battery/ER26500/]]
675 -* [[Lithium-Thionyl Chloride Battery datasheet>>http://www.dragino.com/downloads/index.php?dir=datasheet/Battery/ER26500/]]
676 -* [[Lithium-ion Battery-Capacitor datasheet>>http://www.dragino.com/downloads/index.php?dir=datasheet/Battery/ER26500/]]
798 +**~ (% style="color:blue" %)➢ AT Command:(%%)**
677 677  
678 -(((
679 -[[image:image-20220709101450-2.png]]
680 -)))
800 +* (% style="color:#037691" %)**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)
801 +* (% style="color:#037691" %)**AT+NOUD=8**  (%%)~/~/  The device uploads 8 sets of recorded data by default. Up to 32 sets of record data can be uploaded.
681 681  
803 + The diagram below explains the relationship between TR, NOUD, and TDC more clearly**:**
682 682  
805 +[[image:image-20221009001045-1.png||height="726" width="1009"]]
683 683  
684 -=== 2.8.2  Power consumption Analyze ===
685 685  
686 -(((
687 -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.
688 -)))
808 +== 2.7 Read or Clear cached data ==
689 689  
690 690  
691 -(((
692 -Instruction to use as below:
693 -)))
811 +**~ (% style="color:blue" %)➢ AT Command:(%%)**
694 694  
695 -(((
696 -(% 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/]]
697 -)))
813 +* (% style="color:#037691" %)**AT+CDP**  (%%) ~/~/ Read cached data
814 +* (% style="color:#037691" %)**AT+CDP=0** (%%) ~/~/  Clear cached data
698 698  
816 +[[image:image-20220908163102-2.png]]
699 699  
700 -(((
701 -(% style="color:blue" %)**Step 2: **(%%) Open it and choose
702 -)))
703 703  
704 -* (((
705 -Product Model
706 -)))
707 -* (((
708 -Uplink Interval
709 -)))
710 -* (((
711 -Working Mode
712 -)))
819 += 2.8 Battery & Power Consumption =
713 713  
714 -(((
715 -And the Life expectation in difference case will be shown on the right.
716 -)))
717 717  
718 -[[image:image-20220709110451-3.png]]
822 +N95S31B uses ER26500 + SPC1520 battery pack. See below link for detail information about the battery info and how to replace.
719 719  
824 +[[**Battery Info & Power Consumption Analyze**>>url:http://wiki.dragino.com/xwiki/bin/view/Main/How%20to%20calculate%20the%20battery%20life%20of%20Dragino%20sensors%3F/]] .
720 720  
721 721  
722 -=== 2.8.3  ​Battery Note ===
827 +
723 723  
724 -(((
725 -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.
726 -)))
829 += 3. ​ Access NB-IoT Module =
727 727  
728 728  
729 -
730 -=== 2.8.4  Replace the battery ===
731 -
732 732  (((
733 -The default battery pack of NDDS75 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).
734 -)))
735 -
736 -
737 -
738 -= 3. ​ Access NB-IoT Module =
739 -
740 -(((
741 741  Users can directly access the AT command set of the NB-IoT module.
742 742  )))
743 743  
744 744  (((
745 745  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/]] 
838 +
839 +
746 746  )))
747 747  
748 748  [[image:1657333200519-600.png]]
749 749  
750 750  
751 -
752 752  = 4.  Using the AT Commands =
753 753  
754 754  == 4.1  Access AT Commands ==
755 755  
756 -See this link for detail: [[https:~~/~~/www.dragino.com/downloads/index.php?dir=NB-IoT/NDDS75/>>url:http://www.dragino.com/downloads/index.php?dir=NB-IoT/NBSN50/]]
757 757  
850 +See NBSN95 AT Command in this link for detail:  [[https:~~/~~/www.dropbox.com/sh/jao1xt9kw5r3yq4/AAAMpJkZzExF2JLbRWxGoQ9Na?dl=0>>https://www.dropbox.com/sh/jao1xt9kw5r3yq4/AAAMpJkZzExF2JLbRWxGoQ9Na?dl=0]]
758 758  
852 +
759 759  AT+<CMD>?  : Help on <CMD>
760 760  
761 761  AT+<CMD>         : Run <CMD>
... ... @@ -795,7 +795,24 @@
795 795  
796 796  AT+SERVADDR  : Server Address
797 797  
892 +AT+TR      : Get or Set record time
798 798  
894 +AT+APN     : Get or set the APN
895 +
896 +AT+FBAND   : Get or Set whether to automatically modify the frequency band
897 +
898 +AT+DNSCFG  : Get or Set DNS Server
899 +
900 +AT+GETSENSORVALUE   : Returns the current sensor measurement
901 +
902 +AT+NOUD      : Get or Set the number of data to be uploaded
903 +
904 +AT+CDP     : Read or Clear cached data
905 +
906 +AT+SHTEMP: Get or Set alarm of temp
907 +
908 +AT+SHHUM: Get or Set alarm of moisture
909 +
799 799  (% style="color:#037691" %)**COAP Management**      
800 800  
801 801  AT+URI            : Resource parameters
... ... @@ -826,7 +826,6 @@
826 826  AT+PWORD  : Serial Access Password
827 827  
828 828  
829 -
830 830  = ​5.  FAQ =
831 831  
832 832  == 5.1 ​ How to Upgrade Firmware ==
... ... @@ -841,11 +841,14 @@
841 841  )))
842 842  
843 843  (((
844 -(% style="color:red" %)Notice, NDDS75 and LDDS75 share the same mother board. They use the same connection and method to update.
954 +
955 +
956 +(((
957 +(% style="color:red" %)**Notice, N95S31B and LSN50v2 share the same mother board. They use the same connection and method to update.**
845 845  )))
959 +)))
846 846  
847 847  
848 -
849 849  = 6.  Trouble Shooting =
850 850  
851 851  == 6.1  ​Connection problem when uploading firmware ==
... ... @@ -860,9 +860,9 @@
860 860  
861 861  )))
862 862  
863 -
864 864  == 6.2  AT Command input doesn't work ==
865 865  
978 +
866 866  (((
867 867  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.
868 868  
... ... @@ -869,18 +869,12 @@
869 869  
870 870  )))
871 871  
872 -
873 873  = 7. ​ Order Info =
874 874  
875 875  
876 -Part Number**:** (% style="color:#4f81bd" %)**NSDDS75**
988 +Part Number**:** (% style="color:#4f81bd" %)**N95S31B-YY**
877 877  
878 878  
879 -(% class="wikigeneratedid" %)
880 -(((
881 -
882 -)))
883 -
884 884  = 8.  Packing Info =
885 885  
886 886  (((
... ... @@ -888,7 +888,7 @@
888 888  
889 889  (% style="color:#037691" %)**Package Includes**:
890 890  
891 -* NSE01 NB-IoT Distance Detect Sensor Node x 1
998 +* N95S31B NB-IoT Temperature and Humidity Sensor
892 892  * External antenna x 1
893 893  )))
894 894  
... ... @@ -897,21 +897,24 @@
897 897  
898 898  (% style="color:#037691" %)**Dimension and weight**:
899 899  
900 -
901 901  * Device Size: 13.0 x 5 x 4.5 cm
902 902  * Device Weight: 150g
903 -* Package Size / pcs : 15 x 12x 5.5 cm
904 -* Weight / pcs : 220g
1009 +* Package Size / pcs : 14.0 x 8x 5 cm
1010 +* Weight / pcs : 180g
905 905  )))
906 906  
907 907  (((
908 908  
909 909  
910 -
911 911  
912 912  )))
913 913  
914 914  = 9.  Support =
915 915  
1021 +
916 916  * 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.
917 917  * 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]]
1024 +
1025 +
1026 +
1027 +
1657352914475-252.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +157.0 KB
Content
1657354294009-643.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +214.7 KB
Content
1657520100595-569.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +126.1 KB
Content
image-20220709161741-3.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +111.2 KB
Content
image-20220908154949-1.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.David
Size
... ... @@ -1,0 +1,1 @@
1 +58.5 KB
Content
image-20220908163102-2.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.David
Size
... ... @@ -1,0 +1,1 @@
1 +29.7 KB
Content
image-20221009001045-1.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Edwin
Size
... ... @@ -1,0 +1,1 @@
1 +282.9 KB
Content