Version 129.6 by Xiaoling on 2022/10/25 17:04

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