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
25 (((
26 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 )))
28
29 (((
30 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 )))
32
33 (((
34 N95S31B supports different uplink methods include (% style="color:blue" %)**TCP, MQTT, UDP and CoAP**(%%) for different application requirement.
35 )))
36
37 (((
38 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 )))
40
41 (((
42
43 )))
44
45 (((
46 ~* make sure you have NB-IoT coverage locally.
47 )))
48
49
50 )))
51
52 [[image:1657348284168-431.png]]
53
54
55
56 == 1.2 ​ Features ==
57
58
59 * NB-IoT Bands: B1/B3/B8/B5/B20/B28 @H-FDD
60 * Monitor Temperature & Humidity via SHT31
61 * AT Commands to change parameters
62 * Uplink on periodically
63 * Downlink to change configure
64 * IP66 Waterproof Enclosure
65 * Ultra-Low Power consumption
66 * AT Commands to change parameters
67 * Micro SIM card slot for NB-IoT SIM
68 * 8500mAh Battery for long term use
69
70
71
72 == 1.3  Specification ==
73
74
75 (% style="color:#037691" %)**Common DC Characteristics:**
76
77 * Supply Voltage: 2.1v ~~ 3.6v
78 * Operating Temperature: -40 ~~ 85°C
79
80 (% style="color:#037691" %)**NB-IoT Spec:**
81
82 * B1 @H-FDD: 2100MHz
83 * B3 @H-FDD: 1800MHz
84 * B8 @H-FDD: 900MHz
85 * B5 @H-FDD: 850MHz
86 * B20 @H-FDD: 800MHz
87 * B28 @H-FDD: 700MHz
88
89 (% style="color:#037691" %)**Battery:**
90
91 * Li/SOCI2 un-chargeable battery
92 * Capacity: 8500mAh
93 * Self Discharge: <1% / Year @ 25°C
94 * Max continuously current: 130mA
95 * Max boost current: 2A, 1 second
96
97
98
99 == ​1.4  Applications ==
100
101
102 * Smart Buildings & Home Automation
103 * Logistics and Supply Chain Management
104 * Smart Metering
105 * Smart Agriculture
106 * Smart Cities
107 * Smart Factory
108
109 (% class="wikigeneratedid" id="H200B1.5FirmwareChangelog" %)
110
111
112
113 == 1.5  Pin Definitions & Switch ==
114
115
116 N95S31B use the mother board from NBSN95 which as below.
117
118
119 [[image:image-20220709144723-1.png]]
120
121
122 === 1.5.1 Jumper JP2 ===
123
124
125 Power on Device when put this jumper.
126
127
128 === 1.5.2 BOOT MODE / SW1 ===
129
130
131 (((
132 **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.
133 )))
134
135 (((
136 **2) Flash:**  work mode, device starts to work and send out console output for further debug
137 )))
138
139
140 === 1.5.3 Reset Button ===
141
142
143 Press to reboot the device.
144
145
146 === 1.5.4 LED ===
147
148
149 It will flash:
150
151 1.  When boot the device in flash mode
152
153 2.  Send an uplink packet
154
155
156 = 2.  Use N95S31B to communicate with IoT Server =
157
158 == 2.1  How it works ==
159
160
161 (((
162 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.
163 )))
164
165
166 (((
167 The diagram below shows the working flow in default firmware of N95S31B:
168 )))
169
170 (((
171
172 )))
173
174 [[image:1657520100595-569.png]]
175
176 (((
177
178 )))
179
180
181 == 2.2 ​ Configure the N95S31B ==
182
183 === 2.2.1  Power On N95S31B ===
184
185
186 [[image:image-20220709150546-2.png]]
187
188
189 === 2.2.2 Test Requirement ===
190
191
192 (((
193 To use N95S31B in your city, make sure meet below requirements:
194 )))
195
196 * (((
197 Your local operator has already distributed a NB-IoT Network there.
198 )))
199 * (((
200 The local NB-IoT network used the band that N95S31B supports.
201 )))
202 * (((
203 Your operator is able to distribute the data received in their NB-IoT network to your IoT server.
204 )))
205
206 (((
207 Below figure shows our testing structure. Here we have NB-IoT network coverage by China Mobile, the band they use is B8.
208 )))
209
210 (((
211 N95S31B supports different communication protocol such as :
212 )))
213
214 (((
215 * (((
216 CoAP  ((% style="color:red" %)120.24.4.116:5683(%%))
217 )))
218 * (((
219 raw UDP  ((% style="color:red" %)120.24.4.116:5601(%%))
220 )))
221 * (((
222 MQTT  ((% style="color:red" %)120.24.4.116:1883(%%))
223 )))
224 * (((
225 TCP  ((% style="color:red" %)120.24.4.116:5600(%%))
226 )))
227
228 (((
229 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.
230 )))
231
232
233 )))
234
235 [[image:1657350625843-586.png]]
236
237
238 === 2.2.3  Insert SIM card ===
239
240
241 (((
242 Insert the NB-IoT Card get from your provider.
243 )))
244
245 (((
246 User need to take out the NB-IoT module and insert the SIM card like below:
247 )))
248
249
250 [[image:1657351240556-536.png]]
251
252
253 === 2.2.4  Connect USB – TTL to N95S31B to configure it ===
254
255
256 (((
257 (((
258 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.
259
260
261 )))
262 )))
263
264 [[image:1657351312545-300.png]]
265
266
267 (% style="color:blue" %)**Connection:**
268
269 (% style="background-color:yellow" %)**USB TTL GND <~-~-~-~-> GND**
270
271 **~ (% style="background-color:yellow" %)USB TTL TXD <~-~-~-~-> UART_RXD(%%)**
272
273 **~ (% style="background-color:yellow" %)USB TTL RXD <~-~-~-~-> UART_TXD(%%)**
274
275
276 In the PC, use below serial tool settings:
277
278 * Baud:  (% style="color:green" %)**9600**
279 * Data bits:** (% style="color:green" %)8(%%)**
280 * Stop bits: (% style="color:green" %)**1**
281 * Parity:  (% style="color:green" %)**None**
282 * Flow Control: (% style="color:green" %)**None**
283
284 (((
285 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.
286 )))
287
288 [[image:1657329814315-101.png]]
289
290
291 (((
292 (% 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]]**
293 )))
294
295
296 === 2.2.5  Use CoAP protocol to uplink data ===
297
298
299 (% 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/]]**
300
301
302 (((
303 **Use below commands:**
304 )))
305
306 * (((
307 (% style="color:blue" %)**AT+PRO=1**  (%%) ~/~/ Set to use CoAP protocol to uplink
308 )))
309 * (((
310 (% style="color:blue" %)**AT+SERVADDR=120.24.4.116,5683   ** (%%)~/~/ to set CoAP server address and port
311 )))
312 * (((
313 (% style="color:blue" %)**AT+URI=5,11,"mqtt",11,"coap",12,"0",15,"c=text1",23,"0" ** (%%) ~/~/  Set COAP resource path
314 )))
315
316 (((
317
318
319 For parameter description, please refer to AT command set
320 )))
321
322 [[image:1657352146020-183.png]]
323
324
325 (((
326 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.
327 )))
328
329 [[image:1657352185396-303.png]]
330
331
332 === 2.2.6  Use UDP protocol to uplink data(Default protocol) ===
333
334
335 * (% style="color:blue" %)**AT+PRO=2   ** (%%) ~/~/ Set to use UDP protocol to uplink
336 * (% style="color:blue" %)**AT+SERVADDR=120.24.4.116,5601   ** (%%) ~/~/ to set UDP server address and port
337 * (% style="color:blue" %)**AT+CFM=1       ** (%%) ~/~/ If the server does not respond, this command is unnecessary
338
339 [[image:1657352391268-297.png]]
340
341
342 [[image:1657352403317-397.png]]
343
344
345 === 2.2.7  Use MQTT protocol to uplink data ===
346
347
348 N95S31B supports only plain MQTT now it doesn't support TLS and other related encryption.
349
350 * (% style="color:blue" %)**AT+PRO=3   ** (%%) ~/~/  Set to use MQTT protocol to uplink
351 * (% style="color:blue" %)**AT+SERVADDR=120.24.4.116,1883   ** (%%) ~/~/  Set MQTT server address and port
352 * (% style="color:blue" %)**AT+CLIENT=CLIENT       ** (%%)~/~/  Set up the CLIENT of MQTT
353 * (% style="color:blue" %)**AT+UNAME=UNAME                                **(%%)~/~/  Set the username of MQTT
354 * (% style="color:blue" %)**AT+PWD=PWD                                         **(%%)~/~/  Set the password of MQTT
355 * (% style="color:blue" %)**AT+PUBTOPIC=f9527                               **(%%)~/~/  Set the sending topic of MQTT
356 * (% style="color:blue" %)**AT+SUBTOPIC=Ns9527          **(%%) ~/~/  Set the subscription topic of MQTT
357
358 [[image:1657352634421-276.png]]
359
360
361 [[image:1657352645687-385.png]]
362
363
364 (((
365 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.
366 )))
367
368
369 (((
370 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.
371 )))
372
373
374 === 2.2.8  Use TCP protocol to uplink data ===
375
376
377 This feature is supported since firmware version v110
378
379 * (% style="color:blue" %)**AT+PRO=4   ** (%%) ~/~/ Set to use TCP protocol to uplink
380 * (% style="color:blue" %)**AT+SERVADDR=120.24.4.116,5600   **(%%) ~/~/ to set TCP server address and port
381
382 [[image:1657352898400-901.png]]
383
384
385 [[image:1657352914475-252.png]]
386
387
388 === 2.2.9  Change Update Interval ===
389
390
391 User can use below command to change the (% style="color:green" %)**uplink interval**.
392
393 * (% style="color:blue" %)**AT+TDC=600      ** (%%)~/~/ Set Update Interval to 600s
394
395 (((
396
397 )))
398
399 (((
400 (% style="color:red" %)**NOTE: Since firmware version is v1.2:**
401 )))
402
403 (((
404 (% 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).**
405 )))
406
407
408 == 2.3  Uplink Payload ==
409
410
411 (((
412 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.
413 )))
414
415
416 (((
417 For example:
418 )))
419
420 (((
421 (% 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.
422 )))
423
424
425 (((
426 The uplink payloads are composed in  ASCII String. For example:
427 )))
428
429 (((
430 0a cd 00 ed 0a cc 00 00 ef 02 d2 1d (total 24 ASCII Chars) . Representative the actually payload:
431 )))
432
433 (((
434 0x 0a cd 00 ed 0a cc 00 00 ef 02 d2 1d Total 12 bytes
435 )))
436
437
438 (((
439 (% style="color:red" %)**NOTE:**
440 )))
441
442 (% style="color:red" %)
443 1. (((
444 **All modes share the same Payload Explanation from [[HERE>>||anchor="H2.3A0UplinkPayload"]].**
445 )))
446 1. (((
447 **By default, the device will send an uplink message every 1 hour.**
448
449
450
451 )))
452
453 === 2.3.1  Payload Analyze ===
454
455 ==== 2.3.1.1  Before Firmware v1.2 ====
456
457
458 N95S31B uplink payload includes in total 21 bytes
459
460
461 (% border="1" style="background-color:#ffffcc; color:green; width:520px" %)
462 |=(% 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**
463 |(% 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" %)(((
464 (((
465 Reserve/ Same as NBSN95 CFGMOD=1
466 )))
467
468 (((
469 No function here.
470 )))
471 )))|(% style="width:102px" %)(((
472 (((
473 [[Temperature >>||anchor="H2.3.6A0Temperature26Humidity"]]
474 )))
475
476 (((
477 By SHT31
478 )))
479 )))|(% style="width:81px" %)(((
480 (((
481 [[Humidity>>||anchor="H2.3.6A0Temperature26Humidity"]]
482 )))
483
484 (((
485 By SHT31
486 )))
487 )))
488
489 (((
490
491
492 (((
493 If we use the MQTT client to subscribe to this MQTT topic, we can see the following information when the NB sensor uplink data.
494 )))
495 )))
496
497
498 [[image:1657354294009-643.png]]
499
500
501 The payload is ASCII string, representative same HEX: (% style="background-color:yellow" %)**0x724031607457 006e 0ccd 1b 01 00dc000ccc 00e1 0186**
502
503 **where:**
504
505 * (% style="color:#037691" %)**Device ID:** (%%) 0x724031607457 = 724031607457
506
507 * (% style="color:#037691" %)**Version: **(%%) 0x006e=110=1.1.0
508
509 * (% style="color:#037691" %)**BAT:**   (%%) 0x0ccd = 3277 mV = 3.277V
510
511 * (% style="color:#037691" %)**Signal:** (%%) 0x1b = 27
512
513 * (% style="color:#037691" %)**Model:** (%%) 0x01 = 1
514
515 * (% style="color:#037691" %)**0x00dc000ccc= reserve, ignore in N95S31B**
516
517 * (% style="color:#037691" %)**Temperature by SHT31:** (%%) 0x00e1 = 225 = 22.5 °C
518
519 * (% style="color:#037691" %)**Humidity by SHT31:**  (%%) 0x0186 = 390 = 39.0 %rh
520
521 (((
522
523
524
525 )))
526
527 ==== 2.3.1.2 Since Firmware v1.2 ====
528
529
530 In this mode, uplink payload includes 91 bytes in total by default.
531
532 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.
533
534
535 (% border="1" style="background-color:#ffffcc; color:green; width:520px" %)
536 |=(% 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**
537 |=(% 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 .....
538
539 If we use the MQTT client to subscribe to this MQTT topic, we can see the following information when the N95S31B uplink data.
540
541
542 [[image:image-20220908154949-1.png]]
543
544
545 The payload is ASCII string, representative same HEX:
546
547 **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__ **
548
549 **__0112023b631998f3__// //__011202426319983f__ __01110242631996eb__**
550
551 **where:**
552
553 * (% style="color:#037691" %)**Device ID:**(%%) f868411056758782 = f868411056758782
554
555 * (% style="color:#037691" %)**Version:** (%%)0x000c=120=1.2
556
557 * (% style="color:#037691" %)**BAT:**      (%%)0x0d0f = 3343 mV = 3.343V
558
559 * (% style="color:#037691" %)**Singal:**(%%)  0x0c = 12
560
561 * (% style="color:#037691" %)**Mod:**(%%)  0x01 = 1
562
563 * (% style="color:#037691" %)**TemDS18B20:**(%%)  0x0000= 0 = 0
564
565 * (% style="color:#037691" %)**Interrupt:**  (%%)0x00= 0
566
567 * (% style="color:#037691" %)**adc:**(%%)  0x0030= 48
568
569 * (% style="color:#037691" %)**SHTTEM:**(%%)  0x0114= 276 = 27.6
570
571 * (% style="color:#037691" %)**SHTHUM:**(%%)  0x0231 =561=56.1%
572
573 * (% style="color:#037691" %)**Time stamp :  **(%%)0x63199d3c =1662342011  ([[Unix Epoch Time>>url:http://www.epochconverter.com/]])
574
575 * (% style="color:#037691" %)**SHTTEM,SHTHUM,Time stamp :**(%%)  0113023163199d12
576
577 * (% style="color:#037691" %)**8 sets of recorded data:**(%%)** **SHTTEM,SHTHUM,Time stamp : 0113023163199c5e, .......
578
579
580
581 === 2.3.2  Device ID ===
582
583
584 (((
585 By default, the Device ID equal to the last 6 bytes of IMEI.
586 )))
587
588 (((
589 User can use (% style="color:blue" %)**AT+DEUI**(%%) to set Device ID
590
591
592 )))
593
594 (((
595 (% style="color:blue" %)**Example:**
596 )))
597
598 (((
599 AT+DEUI=A84041F15612
600 )))
601
602 (((
603 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.
604
605
606 )))
607
608 (% style="color:red" %)**NOTE: When the firmware version is v1.2 and later firmware:**
609
610
611 By default, the Device ID equal to the last 15 bits of IMEI.
612
613 User can use ** (% style="color:blue" %)AT+DEUI(%%)** to set Device ID
614
615
616 (% style="color:blue" %)**Example:**
617
618 AT+DEUI=868411056754138
619
620
621 === 2.3.3  Version Info ===
622
623
624 (((
625 These bytes include the hardware and software version.
626 )))
627
628 (((
629 Higher byte: Specify hardware version: always 0x00 for N95S31B
630 )))
631
632 (((
633 Lower byte: Specify the software version: 0x6E=110, means firmware version 110
634 )))
635
636 (((
637
638 )))
639
640 (((
641 For example: 0x00 6E: this device is N95S31B with firmware version 110.
642 )))
643
644 (((
645
646 )))
647
648 === 2.3.4  Battery Info ===
649
650
651 (((
652 Ex1: 0x0B45 = 2885mV
653 )))
654
655 (((
656 Ex2: 0x0B49 = 2889mV
657 )))
658
659
660 === 2.3.5  Signal Strength ===
661
662
663 (((
664 NB-IoT Network signal Strength.
665 )))
666
667 (((
668 **Ex1: 0x1d = 29**
669 )))
670
671 (((
672 (% style="color:blue" %)**0**(%%)  -113dBm or less
673 )))
674
675 (((
676 (% style="color:blue" %)**1**(%%)  -111dBm
677 )))
678
679 (((
680 (% style="color:blue" %)**2...30**(%%) -109dBm... -53dBm
681 )))
682
683 (((
684 (% style="color:blue" %)**31**  (%%) -51dBm or greater
685 )))
686
687 (((
688 (% style="color:blue" %)**99**   (%%) Not known or not detectable
689 )))
690
691
692 === 2.3.6  Temperature & Humidity ===
693
694
695 The device will be able to get the SHT31 temperature and humidity data now and upload to IoT Server.
696
697 [[image:image-20220709161741-3.png]]
698
699
700 Convert the read byte to decimal and divide it by ten.
701
702
703 **Example:**
704
705 Temperature:  Read:00ec (H) = 236(D)  Value:  236 /10=23.6℃
706
707 Humidity:    Read:0295(H)=661(D)    Value:  661 / 10=66.1, So 66.1%
708
709
710 == 2.4  Downlink Payload ==
711
712
713 By default, N95S31B prints the downlink payload to console port.
714
715 [[image:image-20220709100028-1.png]]
716
717
718 (((
719 (% style="color:blue" %)**Examples:**
720 )))
721
722 (((
723
724 )))
725
726 * (((
727 (% style="color:blue" %)**Set TDC**
728 )))
729
730 (((
731 If the payload=0100003C, it means set the END Node's TDC to 0x00003C=60(S), while type code is 01.
732 )))
733
734 (((
735 Payload:    01 00 00 1E    TDC=30S
736 )))
737
738 (((
739 Payload:    01 00 00 3C    TDC=60S
740 )))
741
742 (((
743
744 )))
745
746 * (((
747 (% style="color:blue" %)**Reset**
748 )))
749
750 (((
751 If payload = 0x04FF, it will reset the N95S31B
752 )))
753
754
755 * (% style="color:blue" %)**INTMOD**
756
757 (((
758 Downlink Payload: 06000003, Set AT+INTMOD=3
759 )))
760
761
762 == 2.5  Humidity and Temperature alarm function ==
763
764
765 **~ (% style="color:blue" %)➢ AT Command:(%%)**
766
767
768 (% style="color:#037691" %)**AT+ SHHUM=min,max**
769
770
771 ² When min=0, and max≠0, Alarm higher than max
772
773 ² When min≠0, and max=0, Alarm lower than min
774
775 ² When min≠0 and max≠0, Alarm higher than max or lower than min
776
777
778 (% style="color:blue" %)**Example:**
779
780 AT+ SHHUM=50,80 ~/~/ Alarm when humidity lower than 50.
781
782
783 (% style="color:#037691" %)**AT+ SHTEMP=min,max**
784
785 ² When min=0, and max≠0, Alarm higher than max
786
787 ² When min≠0, and max=0, Alarm lower than min
788
789 ² When min≠0 and max≠0, Alarm higher than max or lower than min
790
791
792 **~ (% style="color:blue" %)Example:(%%)**
793
794 AT+ SHTEMP=20,30 ~/~/ Alarm when temperature lower than 20.
795
796
797 == 2.6 Set the number of data to be uploaded and the recording time ==
798
799
800 **~ (% style="color:blue" %)➢ AT Command:(%%)**
801
802 * (% 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)
803 * (% 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.
804
805 The diagram below explains the relationship between TR, NOUD, and TDC more clearly**:**
806
807 [[image:image-20221009001045-1.png||height="726" width="1009"]]
808
809
810 == 2.7 Read or Clear cached data ==
811
812
813 **~ (% style="color:blue" %)➢ AT Command:(%%)**
814
815 * (% style="color:#037691" %)**AT+CDP**  (%%) ~/~/ Read cached data
816 * (% style="color:#037691" %)**AT+CDP=0** (%%) ~/~/  Clear cached data
817
818 [[image:image-20220908163102-2.png]]
819
820
821 == 2.8 Battery & Power Consumption ==
822
823
824 N95S31B uses ER26500 + SPC1520 battery pack. See below link for detail information about the battery info and how to replace.
825
826 [[**Battery Info & Power Consumption Analyze**>>url:http://wiki.dragino.com/xwiki/bin/view/Main/How%20to%20calculate%20the%20battery%20life%20of%20Dragino%20sensors%3F/]] .
827
828
829 = 3. ​ Access NB-IoT Module =
830
831
832 (((
833 Users can directly access the AT command set of the NB-IoT module.
834 )))
835
836 (((
837 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
840 )))
841
842 [[image:1657333200519-600.png]]
843
844
845 = 4.  Using the AT Commands =
846
847 == 4.1  Access AT Commands ==
848
849
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]]
851
852
853 AT+<CMD>?  : Help on <CMD>
854
855 AT+<CMD>         : Run <CMD>
856
857 AT+<CMD>=<value> : Set the value
858
859 AT+<CMD>=?  : Get the value
860
861
862 (% style="color:#037691" %)**General Commands**(%%)      
863
864 AT  : Attention       
865
866 AT?  : Short Help     
867
868 ATZ  : MCU Reset    
869
870 AT+TDC  : Application Data Transmission Interval
871
872 AT+CFG  : Print all configurations
873
874 AT+CFGMOD           : Working mode selection
875
876 AT+INTMOD            : Set the trigger interrupt mode
877
878 AT+5VT  : Set extend the time of 5V power  
879
880 AT+PRO  : Choose agreement
881
882 AT+WEIGRE  : Get weight or set weight to 0
883
884 AT+WEIGAP  : Get or Set the GapValue of weight
885
886 AT+RXDL  : Extend the sending and receiving time
887
888 AT+CNTFAC  : Get or set counting parameters
889
890 AT+SERVADDR  : Server Address
891
892 AT+TR      : Get or Set record time
893
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
910 (% style="color:#037691" %)**COAP Management**      
911
912 AT+URI            : Resource parameters
913
914
915 (% style="color:#037691" %)**UDP Management**
916
917 AT+CFM          : Upload confirmation mode (only valid for UDP)
918
919
920 (% style="color:#037691" %)**MQTT Management**
921
922 AT+CLIENT               : Get or Set MQTT client
923
924 AT+UNAME  : Get or Set MQTT Username
925
926 AT+PWD                  : Get or Set MQTT password
927
928 AT+PUBTOPIC  : Get or Set MQTT publish topic
929
930 AT+SUBTOPIC  : Get or Set MQTT subscription topic
931
932
933 (% style="color:#037691" %)**Information**          
934
935 AT+FDR  : Factory Data Reset
936
937 AT+PWORD  : Serial Access Password
938
939
940 = ​5.  FAQ =
941
942 == 5.1 ​ How to Upgrade Firmware ==
943
944
945 (((
946 User can upgrade the firmware for 1) bug fix, 2) new feature release.
947 )))
948
949 (((
950 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]]
951 )))
952
953 (((
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.**
958 )))
959 )))
960
961
962 = 6.  Trouble Shooting =
963
964 == 6.1  ​Connection problem when uploading firmware ==
965
966
967 (((
968 **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]]
969 )))
970
971 (% class="wikigeneratedid" %)
972 (((
973
974 )))
975
976 == 6.2  AT Command input doesn't work ==
977
978
979 (((
980 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.
981
982
983 )))
984
985 = 7. ​ Order Info =
986
987
988 Part Number**:** (% style="color:#4f81bd" %)**N95S31B-YY**
989
990
991 = 8.  Packing Info =
992
993 (((
994
995
996 (% style="color:#037691" %)**Package Includes**:
997
998 * N95S31B NB-IoT Temperature and Humidity Sensor
999 * External antenna x 1
1000 )))
1001
1002 (((
1003
1004
1005 (% style="color:#037691" %)**Dimension and weight**:
1006
1007 * Device Size: 13.0 x 5 x 4.5 cm
1008 * Device Weight: 150g
1009 * Package Size / pcs : 14.0 x 8x 5 cm
1010 * Weight / pcs : 180g
1011 )))
1012
1013 (((
1014
1015
1016
1017 )))
1018
1019 = 9.  Support =
1020
1021
1022 * 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.
1023 * 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
Copyright ©2010-2022 Dragino Technology Co., LTD. All rights reserved
Dragino Wiki v2.0