Version 130.6 by Xiaoling on 2023/04/28 13:57

Show last authors
1 (% style="text-align:center" %)
2 [[image:1657348034241-728.png||height="470" width="470"]]
3
4
5
6
7
8
9
10 **Table of Contents:**
11
12 {{toc/}}
13
14
15
16
17
18 = 1.  Introduction =
19
20 == 1.1 ​ What is N95S31B NB-IoT Sensor Node ==
21
22
23 (((
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*.
25 )))
26
27 (((
28 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 )))
30
31 (((
32 N95S31B supports different uplink methods include (% style="color:blue" %)**TCP, MQTT, UDP and CoAP**(%%) for different application requirement.
33 )))
34
35 (((
36 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 )))
38
39 (((
40 ~* make sure you have NB-IoT coverage locally.
41 )))
42
43
44 [[image:1657348284168-431.png]]
45
46
47 == 1.2 ​ Features ==
48
49
50 * NB-IoT Bands: B1/B3/B8/B5/B20/B28 @H-FDD
51 * Monitor Temperature & Humidity via SHT31
52 * AT Commands to change parameters
53 * Uplink on periodically
54 * Downlink to change configure
55 * IP66 Waterproof Enclosure
56 * Ultra-Low Power consumption
57 * AT Commands to change parameters
58 * Micro SIM card slot for NB-IoT SIM
59 * 8500mAh Battery for long term use
60
61 == 1.3  Specification ==
62
63
64 (% style="color:#037691" %)**Common DC Characteristics:**
65
66 * Supply Voltage: 2.1v ~~ 3.6v
67 * Operating Temperature: -40 ~~ 85°C
68
69 (% style="color:#037691" %)**NB-IoT Spec:**
70
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
77
78 (% style="color:#037691" %)**Battery:**
79
80 * Li/SOCI2 un-chargeable battery
81 * Capacity: 8500mAh
82 * Self Discharge: <1% / Year @ 25°C
83 * Max continuously current: 130mA
84 * Max boost current: 2A, 1 second
85
86 == ​1.4  Applications ==
87
88
89 * Smart Buildings & Home Automation
90 * Logistics and Supply Chain Management
91 * Smart Metering
92 * Smart Agriculture
93 * Smart Cities
94 * Smart Factory
95
96 (% class="wikigeneratedid" id="H200B1.5FirmwareChangelog" %)
97
98
99
100 == 1.5  Pin Definitions & Switch ==
101
102
103 N95S31B use the mother board from NBSN95 which as below.
104
105
106 [[image:image-20220709144723-1.png]]
107
108
109 === 1.5.1 Jumper JP2 ===
110
111
112 Power on Device when put this jumper.
113
114
115 === 1.5.2 BOOT MODE / SW1 ===
116
117
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 )))
121
122 (((
123 **2) Flash:**  work mode, device starts to work and send out console output for further debug
124 )))
125
126
127 === 1.5.3 Reset Button ===
128
129
130 Press to reboot the device.
131
132
133 === 1.5.4 LED ===
134
135
136 It will flash:
137
138 1.  When boot the device in flash mode
139
140 2.  Send an uplink packet
141
142
143 = 2.  Use N95S31B to communicate with IoT Server =
144
145 == 2.1  How it works ==
146
147
148 (((
149 The N95S31B is equipped with a NB-IoT module, the pre-loaded firmware in N95S31B 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 N95S31B.
150 )))
151
152
153 (((
154 The diagram below shows the working flow in default firmware of N95S31B:
155 )))
156
157 (((
158
159 )))
160
161 [[image:1657520100595-569.png]]
162
163 (((
164
165 )))
166
167 == 2.2 ​ Configure the N95S31B ==
168
169 === 2.2.1  Power On N95S31B ===
170
171
172 [[image:image-20220709150546-2.png]]
173
174
175 === 2.2.2 Test Requirement ===
176
177
178 (((
179 To use N95S31B in your city, make sure meet below requirements:
180 )))
181
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 )))
191
192 (((
193 Below figure shows our testing structure. Here we have NB-IoT network coverage by China Mobile, the band they use is B8.
194 )))
195
196 (((
197 N95S31B supports different communication protocol such as :
198 )))
199
200 (((
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 )))
213
214 (((
215 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 )))
217
218
219 )))
220
221 [[image:1657350625843-586.png]]
222
223
224 === 2.2.3  Insert SIM card ===
225
226
227 (((
228 Insert the NB-IoT Card get from your provider.
229 )))
230
231 (((
232 User need to take out the NB-IoT module and insert the SIM card like below:
233 )))
234
235
236 [[image:1657351240556-536.png]]
237
238
239 === 2.2.4  Connect USB – TTL to N95S31B to configure it ===
240
241
242 (((
243 (((
244 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
247 )))
248 )))
249
250 [[image:1657351312545-300.png]]
251
252
253 (% style="color:blue" %)**Connection:**
254
255 (% style="background-color:yellow" %)**USB TTL GND <~-~-~-~-> GND**
256
257 **~ (% style="background-color:yellow" %)USB TTL TXD <~-~-~-~-> UART_RXD(%%)**
258
259 **~ (% style="background-color:yellow" %)USB TTL RXD <~-~-~-~-> UART_TXD(%%)**
260
261
262 In the PC, use below serial tool settings:
263
264 * Baud:  (% style="color:green" %)**9600**
265 * Data bits:** (% style="color:green" %)8(%%)**
266 * Stop bits: (% style="color:green" %)**1**
267 * Parity:  (% style="color:green" %)**None**
268 * Flow Control: (% style="color:green" %)**None**
269
270 (((
271 Make sure the switch is in FLASH position, then power on device by connecting the jumper on N95S31B. N95S31B will output system info once power on as below, we can enter the (% style="color:green" %)**password: 12345678**(%%) to access AT Command input.
272 )))
273
274 [[image:1657329814315-101.png]]
275
276
277 (((
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]]**
279 )))
280
281
282 === 2.2.5  Use CoAP protocol to uplink data ===
283
284
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/]]**
286
287
288 (((
289 **Use below commands:**
290 )))
291
292 * (((
293 (% style="color:blue" %)**AT+PRO=1**  (%%) ~/~/ Set to use CoAP protocol to uplink
294 )))
295 * (((
296 (% style="color:blue" %)**AT+SERVADDR=120.24.4.116,5683   ** (%%)~/~/ to set CoAP server address and port
297 )))
298 * (((
299 (% style="color:blue" %)**AT+URI=5,11,"mqtt",11,"coap",12,"0",15,"c=text1",23,"0" ** (%%) ~/~/  Set COAP resource path
300 )))
301
302 (((
303
304
305 For parameter description, please refer to AT command set
306 )))
307
308 [[image:1657352146020-183.png]]
309
310
311 (((
312 After configure the server address and (% style="color:green" %)**reset the device**(%%) (via AT+ATZ ), NDDS75 will start to uplink sensor values to CoAP server.
313 )))
314
315 [[image:1657352185396-303.png]]
316
317
318 === 2.2.6  Use UDP protocol to uplink data(Default protocol) ===
319
320
321 * (% style="color:blue" %)**AT+PRO=2   ** (%%) ~/~/ Set to use UDP protocol to uplink
322 * (% style="color:blue" %)**AT+SERVADDR=120.24.4.116,5601   ** (%%) ~/~/ to set UDP server address and port
323 * (% style="color:blue" %)**AT+CFM=1       ** (%%) ~/~/ If the server does not respond, this command is unnecessary
324
325 [[image:1657352391268-297.png]]
326
327
328 [[image:1657352403317-397.png]]
329
330
331 === 2.2.7  Use MQTT protocol to uplink data ===
332
333
334 N95S31B supports only plain MQTT now it doesn't support TLS and other related encryption.
335
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
343
344 [[image:1657352634421-276.png]]
345
346
347 [[image:1657352645687-385.png]]
348
349
350 (((
351 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.
352 )))
353
354 (((
355 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.
356 )))
357
358
359 === 2.2.8  Use TCP protocol to uplink data ===
360
361
362 This feature is supported since firmware version v110
363
364 * (% style="color:blue" %)**AT+PRO=4   ** (%%) ~/~/ Set to use TCP protocol to uplink
365 * (% style="color:blue" %)**AT+SERVADDR=120.24.4.116,5600   **(%%) ~/~/ to set TCP server address and port
366
367 [[image:1657352898400-901.png]]
368
369
370 [[image:1657352914475-252.png]]
371
372
373 === 2.2.9  Change Update Interval ===
374
375
376 User can use below command to change the (% style="color:green" %)**uplink interval**.
377
378 * (% style="color:blue" %)**AT+TDC=600      ** (%%)~/~/ Set Update Interval to 600s
379
380 (((
381
382 )))
383
384 (((
385 (% style="color:red" %)**NOTE: Since firmware version is v1.2:**
386 )))
387
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 )))
391
392
393 == 2.3  Uplink Payload ==
394
395
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 )))
399
400
401 (((
402 For example:
403 )))
404
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 )))
408
409
410 (((
411 The uplink payloads are composed in  ASCII String. For example:
412 )))
413
414 (((
415 0a cd 00 ed 0a cc 00 00 ef 02 d2 1d (total 24 ASCII Chars) . Representative the actually payload:
416 )))
417
418 (((
419 0x 0a cd 00 ed 0a cc 00 00 ef 02 d2 1d Total 12 bytes
420 )))
421
422
423 (((
424 (% style="color:red" %)**NOTE:**
425 )))
426
427 (% style="color:red" %)
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.**
433
434
435
436 )))
437
438 === 2.3.1  Payload Analyze ===
439
440 ==== 2.3.1.1  Before Firmware v1.2 ====
441
442
443 N95S31B uplink payload includes in total 21 bytes
444
445
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 (((
450 Reserve/ Same as NBSN95 CFGMOD=1
451 )))
452
453 (((
454 No function here.
455 )))
456 )))|(% style="width:102px" %)(((
457 (((
458 [[Temperature >>||anchor="H2.3.6A0Temperature26Humidity"]]
459 )))
460
461 (((
462 By SHT31
463 )))
464 )))|(% style="width:81px" %)(((
465 (((
466 [[Humidity>>||anchor="H2.3.6A0Temperature26Humidity"]]
467 )))
468
469 (((
470 By SHT31
471 )))
472 )))
473
474 (((
475
476
477 (((
478 If we use the MQTT client to subscribe to this MQTT topic, we can see the following information when the NB sensor uplink data.
479 )))
480 )))
481
482
483 [[image:1657354294009-643.png]]
484
485
486 The payload is ASCII string, representative same HEX: (% style="background-color:yellow" %)**0x724031607457 006e 0ccd 1b 01 00dc000ccc 00e1 0186**
487
488 **where:**
489
490 * (% style="color:#037691" %)**Device ID:** (%%) 0x724031607457 = 724031607457
491
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
506 (((
507
508
509
510 )))
511
512 ==== 2.3.1.2 Since Firmware v1.2 ====
513
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
564 === 2.3.2  Device ID ===
565
566
567 (((
568 By default, the Device ID equal to the last 6 bytes of IMEI.
569 )))
570
571 (((
572 User can use (% style="color:blue" %)**AT+DEUI**(%%) to set Device ID
573
574
575 )))
576
577 (((
578 (% style="color:blue" %)**Example:**
579 )))
580
581 (((
582 AT+DEUI=A84041F15612
583 )))
584
585 (((
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
589 )))
590
591 (% style="color:red" %)**NOTE: When the firmware version is v1.2 and later firmware:**
592
593
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
604 === 2.3.3  Version Info ===
605
606
607 (((
608 These bytes include the hardware and software version.
609 )))
610
611 (((
612 **Higher byte:** Specify hardware version: always 0x00 for N95S31B
613 )))
614
615 (((
616 **Lower byte:** Specify the software version: 0x6E=110, means firmware version 110
617 )))
618
619 (((
620
621 )))
622
623 (((
624 For example: 0x00 6E: this device is N95S31B with firmware version 110.
625 )))
626
627 (((
628
629 )))
630
631 === 2.3.4  Battery Info ===
632
633
634 (((
635 Ex1: 0x0B45 = 2885mV
636 )))
637
638 (((
639 Ex2: 0x0B49 = 2889mV
640 )))
641
642
643 === 2.3.5  Signal Strength ===
644
645
646 (((
647 NB-IoT Network signal Strength.
648 )))
649
650 (((
651 **Ex1: 0x1d = 29**
652 )))
653
654 (((
655 (% style="color:blue" %)**0**(%%)  -113dBm or less
656 )))
657
658 (((
659 (% style="color:blue" %)**1**(%%)  -111dBm
660 )))
661
662 (((
663 (% style="color:blue" %)**2...30**(%%) -109dBm... -53dBm
664 )))
665
666 (((
667 (% style="color:blue" %)**31**  (%%) -51dBm or greater
668 )))
669
670 (((
671 (% style="color:blue" %)**99**   (%%) Not known or not detectable
672 )))
673
674
675 === 2.3.6  Temperature & Humidity ===
676
677
678 The device will be able to get the SHT31 temperature and humidity data now and upload to IoT Server.
679
680 [[image:image-20220709161741-3.png]]
681
682
683 Convert the read byte to decimal and divide it by ten.
684
685
686 **Example:**
687
688 Temperature:  Read:00ec (H) = 236(D)  Value:  236 /10=23.6℃
689
690 Humidity:    Read:0295(H)=661(D)    Value:  661 / 10=66.1, So 66.1%
691
692
693 == 2.4  Downlink Payload ==
694
695
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:40px" %)**Downlink Control Type**|(% style="background-color:#d9e2f3; color:#0070c0; width:20px" %)**FPort**|(% style="background-color:#d9e2f3; color:#0070c0; width:20px" %)**Type Code**|(% style="background-color:#d9e2f3; color:#0070c0; width:30px" %)**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
704 [[image:image-20220709100028-1.png]]
705
706
707 (((
708 (% style="color:blue" %)**Examples:**
709 )))
710
711 (((
712
713 )))
714
715 * (((
716 (% style="color:blue" %)**Set TDC**
717 )))
718
719 (((
720 If the payload=0100003C, it means set the END Node's TDC to 0x00003C=60(S), while type code is 01.
721 )))
722
723 (((
724 Payload:    01 00 00 1E    TDC=30S
725 )))
726
727 (((
728 Payload:    01 00 00 3C    TDC=60S
729 )))
730
731 (((
732
733 )))
734
735 * (((
736 (% style="color:blue" %)**Reset**
737 )))
738
739 (((
740 If payload = 0x04FF, it will reset the N95S31B
741 )))
742
743
744 * (% style="color:blue" %)**INTMOD**
745
746 (((
747 Downlink Payload: 06000003, Set AT+INTMOD=3
748 )))
749
750
751 == 2.5  Humidity and Temperature alarm function ==
752
753
754 **~ (% style="color:blue" %)➢ AT Command:(%%)**
755
756
757 (% style="color:#037691" %)**AT+ SHHUM=min,max**
758
759
760 ² When min=0, and max≠0, Alarm higher than max
761
762 ² When min≠0, and max=0, Alarm lower than min
763
764 ² When min≠0 and max≠0, Alarm higher than max or lower than min
765
766
767 (% style="color:blue" %)**Example:**
768
769 AT+ SHHUM=50,80 ~/~/ Alarm when humidity lower than 50.
770
771
772 (% style="color:#037691" %)**AT+ SHTEMP=min,max**
773
774 ² When min=0, and max≠0, Alarm higher than max
775
776 ² When min≠0, and max=0, Alarm lower than min
777
778 ² When min≠0 and max≠0, Alarm higher than max or lower than min
779
780
781 **~ (% style="color:blue" %)Example:(%%)**
782
783 AT+ SHTEMP=20,30 ~/~/ Alarm when temperature lower than 20.
784
785
786 == 2.6 Set the number of data to be uploaded and the recording time ==
787
788
789 **~ (% style="color:blue" %)➢ AT Command:(%%)**
790
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.
793
794 The diagram below explains the relationship between TR, NOUD, and TDC more clearly**:**
795
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
818 = 3. ​ Access NB-IoT Module =
819
820
821 (((
822 Users can directly access the AT command set of the NB-IoT module.
823 )))
824
825 (((
826 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
829 )))
830
831 [[image:1657333200519-600.png]]
832
833
834 = 4.  Using the AT Commands =
835
836 == 4.1  Access AT Commands ==
837
838
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]]
840
841
842 AT+<CMD>?  : Help on <CMD>
843
844 AT+<CMD>         : Run <CMD>
845
846 AT+<CMD>=<value> : Set the value
847
848 AT+<CMD>=?  : Get the value
849
850
851 (% style="color:#037691" %)**General Commands**(%%)      
852
853 AT  : Attention       
854
855 AT?  : Short Help     
856
857 ATZ  : MCU Reset    
858
859 AT+TDC  : Application Data Transmission Interval
860
861 AT+CFG  : Print all configurations
862
863 AT+CFGMOD           : Working mode selection
864
865 AT+INTMOD            : Set the trigger interrupt mode
866
867 AT+5VT  : Set extend the time of 5V power  
868
869 AT+PRO  : Choose agreement
870
871 AT+WEIGRE  : Get weight or set weight to 0
872
873 AT+WEIGAP  : Get or Set the GapValue of weight
874
875 AT+RXDL  : Extend the sending and receiving time
876
877 AT+CNTFAC  : Get or set counting parameters
878
879 AT+SERVADDR  : Server Address
880
881 AT+TR      : Get or Set record time
882
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
899 (% style="color:#037691" %)**COAP Management**      
900
901 AT+URI            : Resource parameters
902
903
904 (% style="color:#037691" %)**UDP Management**
905
906 AT+CFM          : Upload confirmation mode (only valid for UDP)
907
908
909 (% style="color:#037691" %)**MQTT Management**
910
911 AT+CLIENT               : Get or Set MQTT client
912
913 AT+UNAME  : Get or Set MQTT Username
914
915 AT+PWD                  : Get or Set MQTT password
916
917 AT+PUBTOPIC  : Get or Set MQTT publish topic
918
919 AT+SUBTOPIC  : Get or Set MQTT subscription topic
920
921
922 (% style="color:#037691" %)**Information**          
923
924 AT+FDR  : Factory Data Reset
925
926 AT+PWORD  : Serial Access Password
927
928
929 = ​5.  FAQ =
930
931 == 5.1 ​ How to Upgrade Firmware ==
932
933
934 (((
935 User can upgrade the firmware for 1) bug fix, 2) new feature release.
936 )))
937
938 (((
939 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>>http://wiki.dragino.com/xwiki/bin/view/Main/Firmware%20Upgrade%20Instruction%20for%20STM32%20base%20products/#H2.HardwareUpgradeMethodSupportList]]
940 )))
941
942 (((
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]]
944
945 (% style="color:red" %)**Notice, N95S31B and LSN50v2 share the same mother board. They use the same connection and method to update.**
946 )))
947
948
949 = 6.  Trouble Shooting =
950
951 == 6.1  ​Connection problem when uploading firmware ==
952
953
954 (((
955 **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]]
956 )))
957
958
959 == 6.2  AT Command input doesn't work ==
960
961
962 (((
963 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.
964
965
966 )))
967
968 == 6.3 Not able to connect to NB-IoT network and keep showing "Signal Strength:99". ==
969
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
974 = 7. ​ Order Info =
975
976
977 Part Number**:** (% style="color:#4f81bd" %)**N95S31B-YY**
978
979
980 = 8.  Packing Info =
981
982 (((
983
984
985 (% style="color:#037691" %)**Package Includes**:
986
987 * N95S31B NB-IoT Temperature and Humidity Sensor
988 * External antenna x 1
989 )))
990
991 (((
992
993
994 (% style="color:#037691" %)**Dimension and weight**:
995
996 * Device Size: 13.0 x 5 x 4.5 cm
997 * Device Weight: 150g
998 * Package Size / pcs : 14.0 x 8x 5 cm
999 * Weight / pcs : 180g
1000 )))
1001
1002
1003
1004 = 9.  Support =
1005
1006
1007 * 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
1009 * 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