Version 129.16 by Xiaoling on 2022/10/25 17:48

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" style="background-color:#ffffcc; color:green; width:520px" %)
478 |=(% scope="row" style="width: 50px;" %)**Size(bytes)**|=(% 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: 50px;" %)**2**|=(% style="width: 50px;" %)**2**
479 |(% 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" %)(((
480 (((
481 Reserve/ Same as NBSN95 CFGMOD=1
482 )))
483
484 (((
485 No function here.
486 )))
487 )))|(% style="width:102px" %)(((
488 (((
489 [[Temperature >>||anchor="H2.3.6A0Temperature26Humidity"]]
490 )))
491
492 (((
493 By SHT31
494 )))
495 )))|(% style="width:81px" %)(((
496 (((
497 [[Humidity>>||anchor="H2.3.6A0Temperature26Humidity"]]
498 )))
499
500 (((
501 By SHT31
502 )))
503 )))
504
505 (((
506
507
508 (((
509 If we use the MQTT client to subscribe to this MQTT topic, we can see the following information when the NB sensor uplink data.
510 )))
511 )))
512
513
514 [[image:1657354294009-643.png]]
515
516
517 The payload is ASCII string, representative same HEX: (% style="background-color:yellow" %)**0x724031607457 006e 0ccd 1b 01 00dc000ccc 00e1 0186**
518
519 **where:**
520
521 * (% style="color:#037691" %)**Device ID:** (%%) 0x724031607457 = 724031607457
522
523 * (% style="color:#037691" %)**Version: **(%%) 0x006e=110=1.1.0
524
525 * (% style="color:#037691" %)**BAT:**   (%%) 0x0ccd = 3277 mV = 3.277V
526
527 * (% style="color:#037691" %)**Signal:** (%%) 0x1b = 27
528
529 * (% style="color:#037691" %)**Model:** (%%) 0x01 = 1
530
531 * (% style="color:#037691" %)**0x00dc000ccc= reserve, ignore in N95S31B**
532
533 * (% style="color:#037691" %)**Temperature by SHT31:** (%%) 0x00e1 = 225 = 22.5 °C
534
535 * (% style="color:#037691" %)**Humidity by SHT31:**  (%%) 0x0186 = 390 = 39.0 %rh
536
537 (((
538
539
540
541
542 )))
543
544 ==== 2.3.1.2 Since Firmware v1.2 ====
545
546
547 In this mode, uplink payload includes 91 bytes in total by default.
548
549 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.
550
551
552 (% border="1" style="background-color:#ffffcc; color:green; width:520px" %)
553 |=(% scope="row" style="width: 50px;" %)**Size(bytes)**|(% style="width:40px" %)**8**|(% style="width:25px" %)**2**|(% style="width:25px" %)**2**|(% style="width:30px" %)**1**|(% style="width:25px" %)**1**|(% style="width:40px" %)**2**|(% style="width:30px" %)**1**|(% style="width:25px" %)**2**|(% style="width:30px" %)**2**|(% style="width:30px" %)**2**|(% style="width:30px" %)**4**|(% style="width:30px" %)**2**|(% style="width:30px" %)**2**|(% style="width:30px" %)**4**
554 |=(% 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 .....
555
556 If we use the MQTT client to subscribe to this MQTT topic, we can see the following information when the N95S31B uplink data.
557
558
559 [[image:image-20220908154949-1.png]]
560
561
562 The payload is ASCII string, representative same HEX:
563
564 **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__ **
565
566 **__0112023b631998f3__// //__011202426319983f__ __01110242631996eb__**
567
568 **where:**
569
570 * (% style="color:#037691" %)**Device ID:**(%%) f868411056758782 = f868411056758782
571
572 * (% style="color:#037691" %)**Version:** (%%)0x000c=120=1.2
573
574 * (% style="color:#037691" %)**BAT:**      (%%)0x0d0f = 3343 mV = 3.343V
575
576 * (% style="color:#037691" %)**Singal:**(%%)  0x0c = 12
577
578 * (% style="color:#037691" %)**Mod:**(%%)  0x01 = 1
579
580 * (% style="color:#037691" %)**TemDS18B20:**(%%)  0x0000= 0 = 0
581
582 * (% style="color:#037691" %)**Interrupt:**  (%%)0x00= 0
583
584 * (% style="color:#037691" %)**adc:**(%%)  0x0030= 48
585
586 * (% style="color:#037691" %)**SHTTEM:**(%%)  0x0114= 276 = 27.6
587
588 * (% style="color:#037691" %)**SHTHUM:**(%%)  0x0231 =561=56.1%
589
590 * (% style="color:#037691" %)**Time stamp :  **(%%)0x63199d3c =1662342011  ([[Unix Epoch Time>>url:http://www.epochconverter.com/]])
591
592 * (% style="color:#037691" %)**SHTTEM,SHTHUM,Time stamp :**(%%)  0113023163199d12
593
594 * (% style="color:#037691" %)**8 sets of recorded data:**(%%)** **SHTTEM,SHTHUM,Time stamp : 0113023163199c5e, .......
595
596 === 2.3.2  Device ID ===
597
598
599 (((
600 By default, the Device ID equal to the last 6 bytes of IMEI.
601 )))
602
603 (((
604 User can use (% style="color:blue" %)**AT+DEUI**(%%) to set Device ID
605
606
607 )))
608
609 (((
610 (% style="color:blue" %)**Example:**
611 )))
612
613 (((
614 AT+DEUI=A84041F15612
615 )))
616
617 (((
618 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.
619
620
621 )))
622
623 (% style="color:red" %)**NOTE: When the firmware version is v1.2 and later firmware:**
624
625
626 By default, the Device ID equal to the last 15 bits of IMEI.
627
628 User can use ** (% style="color:blue" %)AT+DEUI(%%)** to set Device ID
629
630
631 (% style="color:blue" %)**Example:**
632
633 AT+DEUI=868411056754138
634
635
636
637 === 2.3.3  Version Info ===
638
639
640 (((
641 These bytes include the hardware and software version.
642 )))
643
644 (((
645 Higher byte: Specify hardware version: always 0x00 for N95S31B
646 )))
647
648 (((
649 Lower byte: Specify the software version: 0x6E=110, means firmware version 110
650 )))
651
652 (((
653
654 )))
655
656 (((
657 For example: 0x00 6E: this device is N95S31B with firmware version 110.
658 )))
659
660 (((
661
662 )))
663
664
665 === 2.3.4  Battery Info ===
666
667
668 (((
669 Ex1: 0x0B45 = 2885mV
670 )))
671
672 (((
673 Ex2: 0x0B49 = 2889mV
674 )))
675
676
677
678 === 2.3.5  Signal Strength ===
679
680
681 (((
682 NB-IoT Network signal Strength.
683 )))
684
685 (((
686 **Ex1: 0x1d = 29**
687 )))
688
689 (((
690 (% style="color:blue" %)**0**(%%)  -113dBm or less
691 )))
692
693 (((
694 (% style="color:blue" %)**1**(%%)  -111dBm
695 )))
696
697 (((
698 (% style="color:blue" %)**2...30**(%%) -109dBm... -53dBm
699 )))
700
701 (((
702 (% style="color:blue" %)**31**  (%%) -51dBm or greater
703 )))
704
705 (((
706 (% style="color:blue" %)**99**   (%%) Not known or not detectable
707 )))
708
709
710
711 === 2.3.6  Temperature & Humidity ===
712
713
714 The device will be able to get the SHT31 temperature and humidity data now and upload to IoT Server.
715
716 [[image:image-20220709161741-3.png]]
717
718
719 Convert the read byte to decimal and divide it by ten.
720
721
722 **Example:**
723
724 Temperature:  Read:00ec (H) = 236(D)  Value:  236 /10=23.6℃
725
726 Humidity:    Read:0295(H)=661(D)    Value:  661 / 10=66.1, So 66.1%
727
728
729
730 == 2.4  Downlink Payload ==
731
732
733 By default, N95S31B prints the downlink payload to console port.
734
735 [[image:image-20220709100028-1.png]]
736
737
738 (((
739 (% style="color:blue" %)**Examples:**
740 )))
741
742 (((
743
744 )))
745
746 * (((
747 (% style="color:blue" %)**Set TDC**
748 )))
749
750 (((
751 If the payload=0100003C, it means set the END Node's TDC to 0x00003C=60(S), while type code is 01.
752 )))
753
754 (((
755 Payload:    01 00 00 1E    TDC=30S
756 )))
757
758 (((
759 Payload:    01 00 00 3C    TDC=60S
760 )))
761
762 (((
763
764 )))
765
766 * (((
767 (% style="color:blue" %)**Reset**
768 )))
769
770 (((
771 If payload = 0x04FF, it will reset the N95S31B
772 )))
773
774
775 * (% style="color:blue" %)**INTMOD**
776
777 (((
778 Downlink Payload: 06000003, Set AT+INTMOD=3
779 )))
780
781
782
783 == 2.5  Humidity and Temperature alarm function ==
784
785
786 **~ (% style="color:blue" %)➢ AT Command:(%%)**
787
788
789 (% style="color:#037691" %)**AT+ SHHUM=min,max**
790
791
792 ² When min=0, and max≠0, Alarm higher than max
793
794 ² When min≠0, and max=0, Alarm lower than min
795
796 ² When min≠0 and max≠0, Alarm higher than max or lower than min
797
798
799 (% style="color:blue" %)**Example:**
800
801 AT+ SHHUM=50,80 ~/~/ Alarm when humidity lower than 50.
802
803
804 (% style="color:#037691" %)**AT+ SHTEMP=min,max**
805
806 ² When min=0, and max≠0, Alarm higher than max
807
808 ² When min≠0, and max=0, Alarm lower than min
809
810 ² When min≠0 and max≠0, Alarm higher than max or lower than min
811
812
813 **~ (% style="color:blue" %)Example:(%%)**
814
815 AT+ SHTEMP=20,30 ~/~/ Alarm when temperature lower than 20.
816
817
818
819 == 2.6 Set the number of data to be uploaded and the recording time ==
820
821
822 **~ (% style="color:blue" %)➢ AT Command:(%%)**
823
824 * (% 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)
825 * (% 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.
826
827 The diagram below explains the relationship between TR, NOUD, and TDC more clearly**:**
828
829 [[image:image-20221009001045-1.png||height="726" width="1009"]]
830
831
832
833 == 2.7 Read or Clear cached data ==
834
835
836 **~ (% style="color:blue" %)➢ AT Command:(%%)**
837
838 * (% style="color:#037691" %)**AT+CDP**  (%%) ~/~/ Read cached data
839 * (% style="color:#037691" %)**AT+CDP=0** (%%) ~/~/  Clear cached data
840
841 [[image:image-20220908163102-2.png]]
842
843
844
845 == 2.8  ​Battery Analysis ==
846
847
848 === 2.8.1  ​Battery Type ===
849
850
851 (((
852 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.
853 )))
854
855 (((
856 The battery is designed to last for several years depends on the actually use environment and update interval. 
857 )))
858
859 (((
860 The battery related documents as below:
861 )))
862
863 * [[Battery Dimension>>http://www.dragino.com/downloads/index.php?dir=datasheet/Battery/ER26500/]]
864 * [[Lithium-Thionyl Chloride Battery datasheet>>http://www.dragino.com/downloads/index.php?dir=datasheet/Battery/ER26500/]]
865 * [[Lithium-ion Battery-Capacitor datasheet>>http://www.dragino.com/downloads/index.php?dir=datasheet/Battery/ER26500/]]
866
867 (((
868 [[image:image-20220709101450-2.png]]
869 )))
870
871
872
873 === 2.8.2  Power consumption Analyze ===
874
875
876 (((
877 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.
878 )))
879
880 (((
881
882 )))
883
884
885 === 2.8.3  ​Battery Note ===
886
887
888 (((
889 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.
890 )))
891
892
893
894 === 2.8.4  Replace the battery ===
895
896
897 (((
898 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.
899 )))
900
901
902 (((
903 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).
904 )))
905
906
907
908 = 3. ​ Access NB-IoT Module =
909
910
911 (((
912 Users can directly access the AT command set of the NB-IoT module.
913 )))
914
915 (((
916 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/]] 
917
918
919 )))
920
921 [[image:1657333200519-600.png]]
922
923
924
925 = 4.  Using the AT Commands =
926
927
928 == 4.1  Access AT Commands ==
929
930
931 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]]
932
933
934 AT+<CMD>?  : Help on <CMD>
935
936 AT+<CMD>         : Run <CMD>
937
938 AT+<CMD>=<value> : Set the value
939
940 AT+<CMD>=?  : Get the value
941
942
943 (% style="color:#037691" %)**General Commands**(%%)      
944
945 AT  : Attention       
946
947 AT?  : Short Help     
948
949 ATZ  : MCU Reset    
950
951 AT+TDC  : Application Data Transmission Interval
952
953 AT+CFG  : Print all configurations
954
955 AT+CFGMOD           : Working mode selection
956
957 AT+INTMOD            : Set the trigger interrupt mode
958
959 AT+5VT  : Set extend the time of 5V power  
960
961 AT+PRO  : Choose agreement
962
963 AT+WEIGRE  : Get weight or set weight to 0
964
965 AT+WEIGAP  : Get or Set the GapValue of weight
966
967 AT+RXDL  : Extend the sending and receiving time
968
969 AT+CNTFAC  : Get or set counting parameters
970
971 AT+SERVADDR  : Server Address
972
973 AT+TR      : Get or Set record time
974
975 AT+APN     : Get or set the APN
976
977 AT+FBAND   : Get or Set whether to automatically modify the frequency band
978
979 AT+DNSCFG  : Get or Set DNS Server
980
981 AT+GETSENSORVALUE   : Returns the current sensor measurement
982
983 AT+NOUD      : Get or Set the number of data to be uploaded
984
985 AT+CDP     : Read or Clear cached data
986
987 AT+SHTEMP: Get or Set alarm of temp
988
989 AT+SHHUM: Get or Set alarm of moisture
990
991 (% style="color:#037691" %)**COAP Management**      
992
993 AT+URI            : Resource parameters
994
995
996 (% style="color:#037691" %)**UDP Management**
997
998 AT+CFM          : Upload confirmation mode (only valid for UDP)
999
1000
1001 (% style="color:#037691" %)**MQTT Management**
1002
1003 AT+CLIENT               : Get or Set MQTT client
1004
1005 AT+UNAME  : Get or Set MQTT Username
1006
1007 AT+PWD                  : Get or Set MQTT password
1008
1009 AT+PUBTOPIC  : Get or Set MQTT publish topic
1010
1011 AT+SUBTOPIC  : Get or Set MQTT subscription topic
1012
1013
1014 (% style="color:#037691" %)**Information**          
1015
1016 AT+FDR  : Factory Data Reset
1017
1018 AT+PWORD  : Serial Access Password
1019
1020
1021
1022 = ​5.  FAQ =
1023
1024
1025 == 5.1 ​ How to Upgrade Firmware ==
1026
1027
1028 (((
1029 User can upgrade the firmware for 1) bug fix, 2) new feature release.
1030 )))
1031
1032 (((
1033 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]]
1034 )))
1035
1036 (((
1037
1038
1039 (((
1040 (% style="color:red" %)**Notice, N95S31B and LSN50v2 share the same mother board. They use the same connection and method to update.**
1041 )))
1042 )))
1043
1044
1045
1046 = 6.  Trouble Shooting =
1047
1048
1049 == 6.1  ​Connection problem when uploading firmware ==
1050
1051
1052 (((
1053 **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]]
1054 )))
1055
1056 (% class="wikigeneratedid" %)
1057 (((
1058
1059 )))
1060
1061
1062 == 6.2  AT Command input doesn't work ==
1063
1064
1065 (((
1066 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.
1067
1068
1069 )))
1070
1071
1072 = 7. ​ Order Info =
1073
1074
1075 Part Number**:** (% style="color:#4f81bd" %)**N95S31B-YY**
1076
1077
1078 (% class="wikigeneratedid" %)
1079 (((
1080
1081 )))
1082
1083 = 8.  Packing Info =
1084
1085 (((
1086
1087
1088 (% style="color:#037691" %)**Package Includes**:
1089
1090 * N95S31B NB-IoT Temperature and Humidity Sensor
1091 * External antenna x 1
1092 )))
1093
1094 (((
1095
1096
1097 (% style="color:#037691" %)**Dimension and weight**:
1098
1099 * Device Size: 13.0 x 5 x 4.5 cm
1100 * Device Weight: 150g
1101 * Package Size / pcs : 14.0 x 8x 5 cm
1102 * Weight / pcs : 180g
1103 )))
1104
1105 (((
1106
1107
1108
1109
1110 )))
1111
1112 = 9.  Support =
1113
1114
1115 * 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.
1116 * 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]]