<
From version < 115.14 >
edited by Xiaoling
on 2022/07/09 17:55
To version < 130.7 >
edited by Xiaoling
on 2023/04/28 13:59
>
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -19,29 +19,34 @@
19 19  
20 20  == 1.1 ​ What is N95S31B NB-IoT Sensor Node ==
21 21  
22 -(((
23 -
24 24  
23 +(((
25 25  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*.
25 +)))
26 26  
27 +(((
27 27  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.
29 +)))
28 28  
31 +(((
29 29  N95S31B supports different uplink methods include (% style="color:blue" %)**TCP, MQTT, UDP and CoAP**(%%) for different application requirement.
33 +)))
30 30  
35 +(((
31 31  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).
37 +)))
32 32  
33 -
39 +(((
34 34  ~* make sure you have NB-IoT coverage locally.
35 -
36 -
37 37  )))
38 38  
43 +
39 39  [[image:1657348284168-431.png]]
40 40  
41 41  
42 -
43 43  == 1.2 ​ Features ==
44 44  
49 +
45 45  * NB-IoT Bands: B1/B3/B8/B5/B20/B28 @H-FDD
46 46  * Monitor Temperature & Humidity via SHT31
47 47  * AT Commands to change parameters
... ... @@ -53,9 +53,6 @@
53 53  * Micro SIM card slot for NB-IoT SIM
54 54  * 8500mAh Battery for long term use
55 55  
56 -
57 -
58 -
59 59  == 1.3  Specification ==
60 60  
61 61  
... ... @@ -66,16 +66,15 @@
66 66  
67 67  (% style="color:#037691" %)**NB-IoT Spec:**
68 68  
69 -* - B1 @H-FDD: 2100MHz
70 -* - B3 @H-FDD: 1800MHz
71 -* - B8 @H-FDD: 900MHz
72 -* - B5 @H-FDD: 850MHz
73 -* - B20 @H-FDD: 800MHz
74 -* - B28 @H-FDD: 700MHz
71 +* B1 @H-FDD: 2100MHz
72 +* B3 @H-FDD: 1800MHz
73 +* B8 @H-FDD: 900MHz
74 +* B5 @H-FDD: 850MHz
75 +* B20 @H-FDD: 800MHz
76 +* B28 @H-FDD: 700MHz
75 75  
76 76  (% style="color:#037691" %)**Battery:**
77 77  
78 -
79 79  * Li/SOCI2 un-chargeable battery
80 80  * Capacity: 8500mAh
81 81  * Self Discharge: <1% / Year @ 25°C
... ... @@ -82,11 +82,9 @@
82 82  * Max continuously current: 130mA
83 83  * Max boost current: 2A, 1 second
84 84  
85 -
86 -
87 -
88 88  == ​1.4  Applications ==
89 89  
88 +
90 90  * Smart Buildings & Home Automation
91 91  * Logistics and Supply Chain Management
92 92  * Smart Metering
... ... @@ -98,41 +98,49 @@
98 98  ​
99 99  
100 100  
101 -== 1.5  Pin Definitions ==
100 +== 1.5  Pin Definitions & Switch ==
102 102  
102 +
103 103  N95S31B use the mother board from NBSN95 which as below.
104 104  
105 +
105 105  [[image:image-20220709144723-1.png]]
106 106  
107 107  
108 108  === 1.5.1 Jumper JP2 ===
109 109  
111 +
110 110  Power on Device when put this jumper.
111 111  
112 112  
113 -
114 114  === 1.5.2 BOOT MODE / SW1 ===
115 115  
116 -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.
117 117  
118 -2) Flash: work mode, device starts to work and send out console output for further debug
118 +(((
119 +**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.
120 +)))
119 119  
122 +(((
123 +**2) Flash:**  work mode, device starts to work and send out console output for further debug
124 +)))
120 120  
121 121  
122 122  === 1.5.3 Reset Button ===
123 123  
129 +
124 124  Press to reboot the device.
125 125  
126 126  
127 -
128 128  === 1.5.4 LED ===
129 129  
135 +
130 130  It will flash:
131 131  
132 -1. When boot the device in flash mode
133 -1. Send an uplink packet
138 +1.  When boot the device in flash mode
134 134  
140 +2.  Send an uplink packet
135 135  
142 +
136 136  = 2.  Use N95S31B to communicate with IoT Server =
137 137  
138 138  == 2.1  How it works ==
... ... @@ -151,16 +151,14 @@
151 151  
152 152  )))
153 153  
154 -[[image:1657350248151-650.png]]
161 +[[image:1657520100595-569.png]]
155 155  
156 156  (((
157 157  
158 158  )))
159 159  
160 -
161 161  == 2.2 ​ Configure the N95S31B ==
162 162  
163 -
164 164  === 2.2.1  Power On N95S31B ===
165 165  
166 166  
... ... @@ -167,26 +167,48 @@
167 167  [[image:image-20220709150546-2.png]]
168 168  
169 169  
170 -=== 2.2.1 Test Requirement ===
175 +=== 2.2.2 Test Requirement ===
171 171  
172 172  
178 +(((
173 173  To use N95S31B in your city, make sure meet below requirements:
180 +)))
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.
182 +* (((
183 +Your local operator has already distributed a NB-IoT Network there.
184 +)))
185 +* (((
186 +The local NB-IoT network used the band that N95S31B supports.
187 +)))
188 +* (((
189 +Your operator is able to distribute the data received in their NB-IoT network to your IoT server.
190 +)))
178 178  
192 +(((
179 179  Below figure shows our testing structure. Here we have NB-IoT network coverage by China Mobile, the band they use is B8.
194 +)))
180 180  
196 +(((
181 181  N95S31B supports different communication protocol such as :
198 +)))
182 182  
183 183  (((
184 -* CoAP  ((% style="color:red" %)120.24.4.116:5683(%%))
185 -* raw UDP  ((% style="color:red" %)120.24.4.116:5601(%%))
186 -* MQTT  ((% style="color:red" %)120.24.4.116:1883(%%))
187 -* TCP  ((% style="color:red" %)120.24.4.116:5600(%%))
201 +* (((
202 +CoAP  ((% style="color:red" %)120.24.4.116:5683(%%))
203 +)))
204 +* (((
205 +raw UDP  ((% style="color:red" %)120.24.4.116:5601(%%))
206 +)))
207 +* (((
208 +MQTT  ((% style="color:red" %)120.24.4.116:1883(%%))
209 +)))
210 +* (((
211 +TCP  ((% style="color:red" %)120.24.4.116:5600(%%))
212 +)))
188 188  
214 +(((
189 189  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.
216 +)))
190 190  
191 191  
192 192  )))
... ... @@ -194,9 +194,9 @@
194 194  [[image:1657350625843-586.png]]
195 195  
196 196  
197 -
198 198  === 2.2.3  Insert SIM card ===
199 199  
226 +
200 200  (((
201 201  Insert the NB-IoT Card get from your provider.
202 202  )))
... ... @@ -209,26 +209,29 @@
209 209  [[image:1657351240556-536.png]]
210 210  
211 211  
212 -
213 213  === 2.2.4  Connect USB – TTL to N95S31B to configure it ===
214 214  
241 +
215 215  (((
216 216  (((
217 217  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.
245 +
246 +
218 218  )))
219 219  )))
220 220  
221 221  [[image:1657351312545-300.png]]
222 222  
223 -**Connection:**
224 224  
225 - (% style="background-color:yellow" %)USB TTL GND <~-~-~-~-> GND
253 +(% style="color:blue" %)**Connection:**
226 226  
227 - (% style="background-color:yellow" %)USB TTL TXD <~-~-~-~-> UART_RXD
255 + (% style="background-color:yellow" %)**USB TTL GND <~-~-~-~-> GND**
228 228  
229 - (% style="background-color:yellow" %)USB TTL RXD <~-~-~-~-> UART_TXD
257 +**~ (% style="background-color:yellow" %)USB TTL TXD <~-~-~-~-> UART_RXD(%%)**
230 230  
259 +**~ (% style="background-color:yellow" %)USB TTL RXD <~-~-~-~-> UART_TXD(%%)**
231 231  
261 +
232 232  In the PC, use below serial tool settings:
233 233  
234 234  * Baud:  (% style="color:green" %)**9600**
... ... @@ -243,17 +243,18 @@
243 243  
244 244  [[image:1657329814315-101.png]]
245 245  
276 +
246 246  (((
247 -(% 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/]]
278 +(% 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]]**
248 248  )))
249 249  
250 250  
251 -
252 252  === 2.2.5  Use CoAP protocol to uplink data ===
253 253  
254 -(% 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/]]
255 255  
285 +(% 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  
287 +
257 257  (((
258 258  **Use below commands:**
259 259  )))
... ... @@ -262,10 +262,10 @@
262 262  (% style="color:blue" %)**AT+PRO=1**  (%%) ~/~/ Set to use CoAP protocol to uplink
263 263  )))
264 264  * (((
265 -(% style="color:blue" %)**AT+SERVADDR=120.24.4.116,5683   ** (%%)~/~/ to set CoAP server address and port
296 +(% style="color:blue" %)**AT+SERVADDR=120.24.4.116,5683   ** (%%)~/~/ to set CoAP server address and port
266 266  )))
267 267  * (((
268 -(% style="color:blue" %)**AT+URI=5,11,"mqtt",11,"coap",12,"0",15,"c=text1",23,"0" ** (%%) ~/~/Set COAP resource path
299 +(% style="color:blue" %)**AT+URI=5,11,"mqtt",11,"coap",12,"0",15,"c=text1",23,"0" ** (%%) ~/~/  Set COAP resource path
269 269  )))
270 270  
271 271  (((
... ... @@ -284,7 +284,6 @@
284 284  [[image:1657352185396-303.png]]
285 285  
286 286  
287 -
288 288  === 2.2.6  Use UDP protocol to uplink data(Default protocol) ===
289 289  
290 290  
... ... @@ -298,18 +298,18 @@
298 298  [[image:1657352403317-397.png]]
299 299  
300 300  
301 -
302 302  === 2.2.7  Use MQTT protocol to uplink data ===
303 303  
333 +
304 304  N95S31B supports only plain MQTT now it doesn't support TLS and other related encryption.
305 305  
306 -* (% style="color:blue" %)**AT+PRO=3   ** (%%) ~/~/Set to use MQTT protocol to uplink
307 -* (% style="color:blue" %)**AT+SERVADDR=120.24.4.116,1883   ** (%%) ~/~/Set MQTT server address and port
308 -* (% style="color:blue" %)**AT+CLIENT=CLIENT       ** (%%)~/~/Set up the CLIENT of MQTT
309 -* (% style="color:blue" %)**AT+UNAME=UNAME                                **(%%)~/~/Set the username of MQTT
310 -* (% style="color:blue" %)**AT+PWD=PWD                                         **(%%)~/~/Set the password of MQTT
311 -* (% style="color:blue" %)**AT+PUBTOPIC=f9527                               **(%%)~/~/Set the sending topic of MQTT
312 -* (% style="color:blue" %)**AT+SUBTOPIC=Ns9527          **(%%) ~/~/Set the subscription topic of MQTT
336 +* (% style="color:blue" %)**AT+PRO=3   ** (%%) ~/~/  Set to use MQTT protocol to uplink
337 +* (% style="color:blue" %)**AT+SERVADDR=120.24.4.116,1883   ** (%%) ~/~/  Set MQTT server address and port
338 +* (% style="color:blue" %)**AT+CLIENT=CLIENT       ** (%%)~/~/  Set up the CLIENT of MQTT
339 +* (% style="color:blue" %)**AT+UNAME=UNAME                                **(%%)~/~/  Set the username of MQTT
340 +* (% style="color:blue" %)**AT+PWD=PWD                                         **(%%)~/~/  Set the password of MQTT
341 +* (% style="color:blue" %)**AT+PUBTOPIC=f9527                               **(%%)~/~/  Set the sending topic of MQTT
342 +* (% style="color:blue" %)**AT+SUBTOPIC=Ns9527          **(%%) ~/~/  Set the subscription topic of MQTT
313 313  
314 314  [[image:1657352634421-276.png]]
315 315  
... ... @@ -316,19 +316,19 @@
316 316  
317 317  [[image:1657352645687-385.png]]
318 318  
349 +
319 319  (((
320 320  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.
321 321  )))
322 322  
323 -
324 324  (((
325 325  MQTT protocol has a much high-power consumption compare vs UDP / CoAP protocol. Please check the power analyze document and adjust the uplink period to a suitable interval.
326 326  )))
327 327  
328 328  
329 -
330 330  === 2.2.8  Use TCP protocol to uplink data ===
331 331  
361 +
332 332  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
... ... @@ -340,9 +340,9 @@
340 340  [[image:1657352914475-252.png]]
341 341  
342 342  
343 -
344 344  === 2.2.9  Change Update Interval ===
345 345  
375 +
346 346  User can use below command to change the (% style="color:green" %)**uplink interval**.
347 347  
348 348  * (% style="color:blue" %)**AT+TDC=600      ** (%%)~/~/ Set Update Interval to 600s
... ... @@ -351,58 +351,99 @@
351 351  
352 352  )))
353 353  
384 +(((
385 +(% style="color:red" %)**NOTE: Since firmware version is v1.2:**
386 +)))
354 354  
388 +(((
389 +(% 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).**
390 +)))
355 355  
392 +
356 356  == 2.3  Uplink Payload ==
357 357  
358 358  
359 -NBSN95 has different working mode for the connections of different type 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.
396 +(((
397 +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.
398 +)))
360 360  
361 361  
401 +(((
362 362  For example:
403 +)))
363 363  
364 - (% style="color:blue" %)**AT+CFGMOD=2 ** (%%)~/~/will set the NBSN95 to work in MOD=2 distance mode which target to measure distance via Ultrasonic Sensor.
405 +(((
406 + (% 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.
407 +)))
365 365  
366 366  
410 +(((
367 367  The uplink payloads are composed in  ASCII String. For example:
412 +)))
368 368  
414 +(((
369 369  0a cd 00 ed 0a cc 00 00 ef 02 d2 1d (total 24 ASCII Chars) . Representative the actually payload:
416 +)))
370 370  
418 +(((
371 371  0x 0a cd 00 ed 0a cc 00 00 ef 02 d2 1d Total 12 bytes
420 +)))
372 372  
373 373  
423 +(((
374 374  (% style="color:red" %)**NOTE:**
425 +)))
375 375  
376 376  (% style="color:red" %)
377 -1. All modes share the same Payload Explanation from [[HERE>>path:#Payload_Explain]].
378 -1. By default, the device will send an uplink message every 1 hour.
428 +1. (((
429 +**All modes share the same Payload Explanation from [[HERE>>||anchor="H2.3A0UplinkPayload"]].**
430 +)))
431 +1. (((
432 +**By default, the device will send an uplink message every 1 hour.**
379 379  
380 380  
435 +
436 +)))
381 381  
382 382  === 2.3.1  Payload Analyze ===
383 383  
440 +==== 2.3.1.1  Before Firmware v1.2 ====
441 +
442 +
384 384  N95S31B uplink payload includes in total 21 bytes
385 385  
386 386  
387 -(% border="1" cellspacing="10" style="background-color:#ffffcc; color:green; width:440px" %)
388 -|=(% style="width: 60px;" %)(((
389 -**Size(bytes)**
390 -)))|=(% style="width: 60px;" %)**6**|=(% style="width: 35px;" %)2|=(% style="width: 35px;" %)**2**|=(% style="width: 80px;" %)**1**|=(% style="width: 80px;" %) |=(% style="width: 99px;" %) |=(% style="width: 77px;" %)**2**|=(% style="width: 60px;" %)**1**
391 -|(% 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:123px" %)MOD 0X01|(% style="width:99px" %)(((
446 +(% border="1" style="background-color:#f2f2f2; width:520px" %)
447 +|=(% style="width: 50px;background-color:#D9E2F3" %)**Size(bytes)**|=(% style="width: 45px;background-color:#D9E2F3" %)**6**|=(% style="width: 25px;background-color:#D9E2F3" %)2|=(% style="width: 25px;background-color:#D9E2F3" %)**2**|=(% style="width: 65px;background-color:#D9E2F3" %)**1**|=(% style="width: 50px;background-color:#D9E2F3" %)1|=(% style="width: 120px;background-color:#D9E2F3" %)5|=(% style="width: 70px;background-color:#D9E2F3" %)**2**|=(% style="width: 70px;background-color:#D9E2F3" %)**2**
448 +|(% 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" %)(((
449 +(((
392 392  Reserve/ Same as NBSN95 CFGMOD=1
451 +)))
393 393  
453 +(((
394 394  No function here.
395 -)))|(% style="width:77px" %)(((
396 -[[Temperature >>||anchor="H2.4.5A0Distance"]]
455 +)))
456 +)))|(% style="width:102px" %)(((
457 +(((
458 +[[Temperature >>||anchor="H2.3.6A0Temperature26Humidity"]]
459 +)))
397 397  
461 +(((
398 398  By SHT31
399 -)))|(% style="width:80px" %)(((
400 -[[Humidity>>||anchor="H2.4.6A0DigitalInterrupt"]]
463 +)))
464 +)))|(% style="width:81px" %)(((
465 +(((
466 +[[Humidity>>||anchor="H2.3.6A0Temperature26Humidity"]]
467 +)))
401 401  
469 +(((
402 402  By SHT31
403 403  )))
472 +)))
404 404  
405 405  (((
475 +
476 +
406 406  (((
407 407  If we use the MQTT client to subscribe to this MQTT topic, we can see the following information when the NB sensor uplink data.
408 408  )))
... ... @@ -412,29 +412,87 @@
412 412  [[image:1657354294009-643.png]]
413 413  
414 414  
415 -The payload is ASCII string, representative same HEX: 0x724031607457006e0ccd1b0100dc000ccc00e10186 where:
486 +The payload is ASCII string, representative same HEX: (% style="background-color:yellow" %)**0x724031607457 006e 0ccd 1b 01 00dc000ccc 00e1 0186**
416 416  
417 -* Device ID: 0x724031607457 = 724031607457
418 -* Version: 0x006e=110=1.1.0
488 +**where:**
419 419  
420 -* BAT: 0x0ccd = 3277 mV = 3.277V
421 -* Signal: 0x1b = 27
422 -* Model: 0x01 = 1
423 -* 0x00dc000ccc= reserve, ignore in N95S31B
424 -* Temperature by SHT31: 0x00e1 = 225 = 22.5 °C
425 -* Humidity by SHT31: 0x0186 = 390 = 39.0 %rh
490 +* (% style="color:#037691" %)**Device ID:** (%%) 0x724031607457 = 724031607457
426 426  
492 +* (% style="color:#037691" %)**Version: **(%%) 0x006e=110=1.1.0
493 +
494 +* (% style="color:#037691" %)**BAT:**   (%%) 0x0ccd = 3277 mV = 3.277V
495 +
496 +* (% style="color:#037691" %)**Signal:** (%%) 0x1b = 27
497 +
498 +* (% style="color:#037691" %)**Model:** (%%) 0x01 = 1
499 +
500 +* (% style="color:#037691" %)**0x00dc000ccc= reserve, ignore in N95S31B**
501 +
502 +* (% style="color:#037691" %)**Temperature by SHT31:** (%%) 0x00e1 = 225 = 22.5 °C
503 +
504 +* (% style="color:#037691" %)**Humidity by SHT31:**  (%%) 0x0186 = 390 = 39.0 %rh
505 +
427 427  (((
428 428  
429 -)))
430 430  
431 -(((
432 432  
433 433  )))
434 434  
512 +==== 2.3.1.2 Since Firmware v1.2 ====
435 435  
514 +
515 +In this mode, uplink payload includes 91 bytes in total by default.
516 +
517 +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.
518 +
519 +
520 +(% border="1" style="background-color:#f2f2f2; width:520px" %)
521 +|=(% style="width: 50px;background-color:#D9E2F3;color:#0070C0" %)**Size(bytes)**|(% style="background-color:#d9e2f3; color:#0070c0; width:40px" %)**8**|(% style="background-color:#d9e2f3; color:#0070c0; width:20px" %)**2**|(% style="background-color:#d9e2f3; color:#0070c0; width:20px" %)**2**|(% style="background-color:#d9e2f3; color:#0070c0; width:30px" %)**1**|(% style="background-color:#d9e2f3; color:#0070c0; width:20px" %)**1**|(% style="background-color:#d9e2f3; color:#0070c0; width:55px" %)**2**|(% style="background-color:#d9e2f3; color:#0070c0; width:35px" %)**1**|(% style="background-color:#d9e2f3; color:#0070c0; width:20px" %)**2**|(% style="background-color:#d9e2f3; color:#0070c0; width:40px" %)**2**|(% style="background-color:#d9e2f3; color:#0070c0; width:40px" %)**2**|(% style="background-color:#d9e2f3; color:#0070c0; width:30px" %)**4**|(% style="background-color:#d9e2f3; color:#0070c0; width:40px" %)**2**|(% style="background-color:#d9e2f3; color:#0070c0; width:40px" %)**2**|(% style="background-color:#d9e2f3; color:#0070c0; width:35px" %)**4**
522 +|=(% 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 .....
523 +
524 +If we use the MQTT client to subscribe to this MQTT topic, we can see the following information when the N95S31B uplink data.
525 +
526 +
527 +[[image:image-20220908154949-1.png]]
528 +
529 +
530 +The payload is ASCII string, representative same HEX:
531 +
532 +**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__ **
533 +
534 +**__0112023b631998f3__// //__011202426319983f__ __01110242631996eb__**
535 +
536 +**where:**
537 +
538 +* (% style="color:#037691" %)**Device ID:**(%%) f868411056758782 = f868411056758782
539 +
540 +* (% style="color:#037691" %)**Version:** (%%)0x000c=120=1.2
541 +
542 +* (% style="color:#037691" %)**BAT:**      (%%)0x0d0f = 3343 mV = 3.343V
543 +
544 +* (% style="color:#037691" %)**Singal:**(%%)  0x0c = 12
545 +
546 +* (% style="color:#037691" %)**Mod:**(%%)  0x01 = 1
547 +
548 +* (% style="color:#037691" %)**TemDS18B20:**(%%)  0x0000= 0 = 0
549 +
550 +* (% style="color:#037691" %)**Interrupt:**  (%%)0x00= 0
551 +
552 +* (% style="color:#037691" %)**adc:**(%%)  0x0030= 48
553 +
554 +* (% style="color:#037691" %)**SHTTEM:**(%%)  0x0114= 276 = 27.6
555 +
556 +* (% style="color:#037691" %)**SHTHUM:**(%%)  0x0231 =561=56.1%
557 +
558 +* (% style="color:#037691" %)**Time stamp :  **(%%)0x63199d3c =1662342011  ([[Unix Epoch Time>>url:http://www.epochconverter.com/]])
559 +
560 +* (% style="color:#037691" %)**SHTTEM,SHTHUM,Time stamp :**(%%)  0113023163199d12
561 +
562 +* (% style="color:#037691" %)**8 sets of recorded data:**(%%)** **SHTTEM,SHTHUM,Time stamp : 0113023163199c5e, .......
563 +
436 436  === 2.3.2  Device ID ===
437 437  
566 +
438 438  (((
439 439  By default, the Device ID equal to the last 6 bytes of IMEI.
440 440  )))
... ... @@ -441,10 +441,12 @@
441 441  
442 442  (((
443 443  User can use (% style="color:blue" %)**AT+DEUI**(%%) to set Device ID
573 +
574 +
444 444  )))
445 445  
446 446  (((
447 -**Example:**
578 +(% style="color:blue" %)**Example:**
448 448  )))
449 449  
450 450  (((
... ... @@ -452,30 +452,54 @@
452 452  )))
453 453  
454 454  (((
455 -The Device ID is stored in a none-erase area, Upgrade the firmware or run **AT+FDR** won't erase Device ID.
586 +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.
587 +
588 +
456 456  )))
457 457  
591 +(% style="color:red" %)**NOTE: When the firmware version is v1.2 and later firmware:**
458 458  
459 459  
594 +By default, the Device ID equal to the last 15 bits of IMEI.
595 +
596 +User can use ** (% style="color:blue" %)AT+DEUI(%%)** to set Device ID
597 +
598 +
599 +(% style="color:blue" %)**Example:**
600 +
601 +AT+DEUI=868411056754138
602 +
603 +
460 460  === 2.3.3  Version Info ===
461 461  
462 462  
607 +(((
463 463  These bytes include the hardware and software version.
609 +)))
464 464  
465 -Higher byte: Specify hardware version: always 0x00 for N95S31B
611 +(((
612 +**Higher byte:** Specify hardware version: always 0x00 for N95S31B
613 +)))
466 466  
467 -Lower byte: Specify the software version: 0x6E=110, means firmware version 110
615 +(((
616 +**Lower byte:** Specify the software version: 0x6E=110, means firmware version 110
617 +)))
468 468  
619 +(((
620 +
621 +)))
469 469  
623 +(((
470 470  For example: 0x00 6E: this device is N95S31B with firmware version 110.
625 +)))
471 471  
472 472  (((
473 473  
474 474  )))
475 475  
476 -
477 477  === 2.3.4  Battery Info ===
478 478  
633 +
479 479  (((
480 480  Ex1: 0x0B45 = 2885mV
481 481  )))
... ... @@ -485,9 +485,9 @@
485 485  )))
486 486  
487 487  
488 -
489 489  === 2.3.5  Signal Strength ===
490 490  
645 +
491 491  (((
492 492  NB-IoT Network signal Strength.
493 493  )))
... ... @@ -517,9 +517,9 @@
517 517  )))
518 518  
519 519  
520 -
521 521  === 2.3.6  Temperature & Humidity ===
522 522  
677 +
523 523  The device will be able to get the SHT31 temperature and humidity data now and upload to IoT Server.
524 524  
525 525  [[image:image-20220709161741-3.png]]
... ... @@ -535,11 +535,17 @@
535 535  Humidity:    Read:0295(H)=661(D)    Value:  661 / 10=66.1, So 66.1%
536 536  
537 537  
538 -
539 539  == 2.4  Downlink Payload ==
540 540  
541 -By default, NDDS75 prints the downlink payload to console port.
542 542  
696 +By default, N95S31B prints the downlink payload to console port.
697 +
698 +(% border="1" style="background-color:#f2f2f2; width:520px" %)
699 +|(% style="background-color:#d9e2f3; color:#0070c0; width:210px" %)**Downlink Control Type**|(% style="background-color:#d9e2f3; color:#0070c0; width:40px" %)**FPort**|(% style="background-color:#d9e2f3; color:#0070c0; width:60px" %)**Type Code**|(% style="background-color:#d9e2f3; color:#0070c0; width:210px" %)**Downlink payload size(bytes)**
700 +|(% style="width:82px" %)TDC(Transmit Time Interval)|(% style="width:43px" %)Any|(% style="width:47px" %)01|(% style="width:124px" %)4
701 +|(% style="width:82px" %)RESET|(% style="width:43px" %)Any|(% style="width:47px" %)04|(% style="width:124px" %)2
702 +|(% style="width:82px" %)INTMOD|(% style="width:43px" %)Any|(% style="width:47px" %)06|(% style="width:124px" %)4
703 +
543 543  [[image:image-20220709100028-1.png]]
544 544  
545 545  
... ... @@ -576,7 +576,7 @@
576 576  )))
577 577  
578 578  (((
579 -If payload = 0x04FF, it will reset the NDDS75
740 +If payload = 0x04FF, it will reset the N95S31B
580 580  )))
581 581  
582 582  
... ... @@ -587,69 +587,76 @@
587 587  )))
588 588  
589 589  
751 +== 2.5  Humidity and Temperature alarm function ==
590 590  
591 -== 2.5  ​Battery Analysis ==
592 592  
593 -=== 2.5.1  ​Battery Type ===
754 +**~ (% style="color:blue" %)➢ AT Command:(%%)**
594 594  
595 595  
596 -(((
597 -The N95S31B 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.
598 -)))
757 +(% style="color:#037691" %)**AT+ SHHUM=min,max**
599 599  
600 -(((
601 -The battery is designed to last for several years depends on the actually use environment and update interval. 
602 -)))
603 603  
604 -(((
605 -The battery related documents as below:
606 -)))
760 +² When min=0, and max≠0, Alarm higher than max
607 607  
608 -* [[Battery Dimension>>http://www.dragino.com/downloads/index.php?dir=datasheet/Battery/ER26500/]]
609 -* [[Lithium-Thionyl Chloride Battery datasheet>>http://www.dragino.com/downloads/index.php?dir=datasheet/Battery/ER26500/]]
610 -* [[Lithium-ion Battery-Capacitor datasheet>>http://www.dragino.com/downloads/index.php?dir=datasheet/Battery/ER26500/]]
762 +² When min≠0, and max=0, Alarm lower than min
611 611  
612 -(((
613 -[[image:image-20220709101450-2.png]]
614 -)))
764 +² When min≠0 and max≠0, Alarm higher than max or lower than min
615 615  
616 616  
767 + (% style="color:blue" %)**Example:**
617 617  
618 -=== 2.5.2  Power consumption Analyze ===
769 +AT+ SHHUM=50,80 ~/~/ Alarm when humidity lower than 50.
619 619  
620 -(((
621 -The file **DRAGINO_N95S31B-Power-Analyzer.pdf** from [[https:~~/~~/www.dragino.com/downloads/index.php?dir=NB-IoT/N95S31B/>>url:https://www.dragino.com/downloads/index.php?dir=NB-IoT/N95S31B/]] describes a detail measurement to analyze the power consumption in different case. User can use it for design guideline for their project.
622 -)))
623 623  
624 -(((
625 -
626 -)))
772 +(% style="color:#037691" %)**AT+ SHTEMP=min,max**
627 627  
774 +² When min=0, and max≠0, Alarm higher than max
628 628  
629 -=== 2.5.3  ​Battery Note ===
776 +² When min≠0, and max=0, Alarm lower than min
630 630  
631 -(((
632 -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 uplink data, then the battery life may be decreased.
633 -)))
778 +² When min≠0 and max≠0, Alarm higher than max or lower than min
634 634  
635 635  
781 +**~ (% style="color:blue" %)Example:(%%)**
636 636  
637 -=== 2.5.4  Replace the battery ===
783 +AT+ SHTEMP=20,30 ~/~/ Alarm when temperature lower than 20.
638 638  
639 639  
640 -(((
641 -You can change the battery in the N95S31B.The type of battery is not limited as long as the output is between 3v to 3.6v. On the main board, there is a diode (D1) between the battery and the main circuit. If you need to use a battery with less than 3.3v, please remove the D1 and shortcut the two pads of it so there won't be voltage drop between battery and main board.
642 -)))
786 +== 2.6 Set the number of data to be uploaded and the recording time ==
643 643  
644 644  
645 -(((
646 -The default battery pack of N95S31B 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).
647 -)))
789 +**~ (% style="color:blue" %)➢ AT Command:(%%)**
648 648  
791 +* (% 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)
792 +* (% 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.
649 649  
794 + The diagram below explains the relationship between TR, NOUD, and TDC more clearly**:**
650 650  
796 +[[image:image-20221009001045-1.png||height="726" width="1009"]]
797 +
798 +
799 +== 2.7 Read or Clear cached data ==
800 +
801 +
802 +**~ (% style="color:blue" %)➢ AT Command:(%%)**
803 +
804 +* (% style="color:#037691" %)**AT+CDP**  (%%) ~/~/ Read cached data
805 +* (% style="color:#037691" %)**AT+CDP=0** (%%) ~/~/  Clear cached data
806 +
807 +[[image:image-20220908163102-2.png]]
808 +
809 +
810 +== 2.8 Battery & Power Consumption ==
811 +
812 +
813 +N95S31B uses ER26500 + SPC1520 battery pack. See below link for detail information about the battery info and how to replace.
814 +
815 +[[**Battery Info & Power Consumption Analyze**>>url:http://wiki.dragino.com/xwiki/bin/view/Main/How%20to%20calculate%20the%20battery%20life%20of%20Dragino%20sensors%3F/]] .
816 +
817 +
651 651  = 3. ​ Access NB-IoT Module =
652 652  
820 +
653 653  (((
654 654  Users can directly access the AT command set of the NB-IoT module.
655 655  )))
... ... @@ -656,19 +656,21 @@
656 656  
657 657  (((
658 658  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/]] 
827 +
828 +
659 659  )))
660 660  
661 661  [[image:1657333200519-600.png]]
662 662  
663 663  
664 -
665 665  = 4.  Using the AT Commands =
666 666  
667 667  == 4.1  Access AT Commands ==
668 668  
669 -See NBSN95 AT Command in this link for detail:  [[https:~~/~~/www.dragino.com/downloads/index.php?dir=NB-IoT/NBSN95/>>url:https://www.dragino.com/downloads/index.php?dir=NB-IoT/NBSN95/]]
670 670  
839 +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]]
671 671  
841 +
672 672  AT+<CMD>?  : Help on <CMD>
673 673  
674 674  AT+<CMD>         : Run <CMD>
... ... @@ -708,7 +708,24 @@
708 708  
709 709  AT+SERVADDR  : Server Address
710 710  
881 +AT+TR      : Get or Set record time
711 711  
883 +AT+APN     : Get or set the APN
884 +
885 +AT+FBAND   : Get or Set whether to automatically modify the frequency band
886 +
887 +AT+DNSCFG  : Get or Set DNS Server
888 +
889 +AT+GETSENSORVALUE   : Returns the current sensor measurement
890 +
891 +AT+NOUD      : Get or Set the number of data to be uploaded
892 +
893 +AT+CDP     : Read or Clear cached data
894 +
895 +AT+SHTEMP: Get or Set alarm of temp
896 +
897 +AT+SHHUM: Get or Set alarm of moisture
898 +
712 712  (% style="color:#037691" %)**COAP Management**      
713 713  
714 714  AT+URI            : Resource parameters
... ... @@ -739,7 +739,6 @@
739 739  AT+PWORD  : Serial Access Password
740 740  
741 741  
742 -
743 743  = ​5.  FAQ =
744 744  
745 745  == 5.1 ​ How to Upgrade Firmware ==
... ... @@ -754,13 +754,12 @@
754 754  )))
755 755  
756 756  (((
757 -
943 +Firmware Download:[[https:~~/~~/www.dropbox.com/sh/fr8w23rb951512i/AACSJeGQg-7ZjKhAI_Sn57H6a?dl=0>>https://www.dropbox.com/sh/fr8w23rb951512i/AACSJeGQg-7ZjKhAI_Sn57H6a?dl=0]]
758 758  
759 -(% style="color:red" %)Notice, N95S31B and LSN50v2 share the same mother board. They use the same connection and method to update.
945 +(% style="color:red" %)**Notice, N95S31B and LSN50v2 share the same mother board. They use the same connection and method to update.**
760 760  )))
761 761  
762 762  
763 -
764 764  = 6.  Trouble Shooting =
765 765  
766 766  == 6.1  ​Connection problem when uploading firmware ==
... ... @@ -770,14 +770,10 @@
770 770  **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]]
771 771  )))
772 772  
773 -(% class="wikigeneratedid" %)
774 -(((
775 -
776 -)))
777 777  
778 -
779 779  == 6.2  AT Command input doesn't work ==
780 780  
961 +
781 781  (((
782 782  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.
783 783  
... ... @@ -784,7 +784,12 @@
784 784  
785 785  )))
786 786  
968 +== 6.3 Not able to connect to NB-IoT network and keep showing "Signal Strength:99". ==
787 787  
970 +
971 +This means sensor is trying to join the NB-IoT network but fail. Please see this link for **//[[trouble shooting for signal strenght:99>>doc:Main.CSQ\:99,99.WebHome]]//**.
972 +
973 +
788 788  = 7. ​ Order Info =
789 789  
790 790  
... ... @@ -791,11 +791,6 @@
791 791  Part Number**:** (% style="color:#4f81bd" %)**N95S31B-YY**
792 792  
793 793  
794 -(% class="wikigeneratedid" %)
795 -(((
796 -
797 -)))
798 -
799 799  = 8.  Packing Info =
800 800  
801 801  (((
... ... @@ -818,14 +818,13 @@
818 818  * Weight / pcs : 180g
819 819  )))
820 820  
821 -(((
822 -
823 823  
824 824  
825 -
826 -)))
827 -
828 828  = 9.  Support =
829 829  
1006 +
830 830  * 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.
1008 +
831 831  * 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]]
1010 +
1011 +
1657520100595-569.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +126.1 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
Copyright ©2010-2022 Dragino Technology Co., LTD. All rights reserved
Dragino Wiki v2.0