Version 129.3 by Xiaoling on 2022/10/15 10:08

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