Version 129.34 by Xiaoling on 2022/12/30 11:21

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