Version 84.6 by Xiaoling on 2023/09/11 14:53

Show last authors
1 (% style="text-align:center" %)
2 [[image:image-20230911134259-1.png||height="570" width="570"]]
3
4
5 **Table of Contents:**
6
7 {{toc/}}
8
9
10
11
12
13
14 = 1. Introduction =
15
16 == 1.1 What is DDS20-NB NB-IoT Ultrasonic liquid level Sensor ==
17
18
19 The Dragino DDS20-NB is a **NB-IoT Ultrasonic liquid level sensor** for Internet of Things solution. It uses **none-contact method **to measure the **height of liquid** in a container without opening the container, and send IoT platform via NB-IoT network.
20
21 The DDS20-NB sensor is installed directly below the container to detect the height of the liquid level. User doesn't need to open a hole on the container to be tested. The none-contact measurement makes the measurement safety, easier and possible for some strict situation. 
22
23 DDS20-NB uses **ultrasonic sensing technology** for distance measurement. DDS20-NB is of high accuracy to measure various liquid such as: **toxic substances**, **strong acids**, **strong alkalis** and **various pure liquids** in high-temperature and high-pressure airtight containers.
24
25 PS-NB-NA supports different uplink methods including **MQTT, MQTTs, UDP & TCP** for different application requirement, and support uplinks to various IoT Servers.
26
27 PS-NB-NA **supports BLE configure **and** OTA update** which make user easy to use.
28
29 PS-NB-NA is powered by **8500mAh Li-SOCI2 battery**, it is designed for long-term use up to severa years.
30
31 PS-NB-NA has optional built-in SIM card and default IoT server connection version. Which makes it works with simple configuration.
32
33
34 [[image:image-20230911140426-2.png||height="320" width="951"]]
35
36
37 == 1.2 ​Features ==
38
39
40 * NB-IoT Bands: B1/B2/B3/B4/B5/B8/B12/B13/B17/B18/B19/B20/B25/B28/B66/B70/B85 @H-FDD
41 * Ultra-low power consumption
42 * Liquid Level Measurement by Ultrasonic technology
43 * Measure through container, No need to contact Liquid
44 * Valid level range 20mm - 2000mm
45 * Accuracy: ±(5mm+S*0.5%) (S: Measure Value)
46 * Multiply Sampling and one uplink
47 * Support Bluetooth v5.1 remote configure and update firmware
48 * Uplink on periodically
49 * Downlink to change configure
50 * IP66 Waterproof Enclosure
51 * 8500mAh Battery for long term use
52 * Nano SIM card slot for NB-IoT SIM
53
54 == 1.3 Specification ==
55
56
57 (% style="color:blue" %)**Common DC Characteristics:**
58
59 * Supply Voltage: 2.5v ~~ 3.6v
60 * Operating Temperature: -40 ~~ 85°C
61
62 (% style="color:blue" %)**NB-IoT Spec:**
63
64 (% style="color:#037691" %)**NB-IoT Module: BC660K-GL**
65
66 (% style="color:#037691" %)**Support Bands:**
67
68 * B1 @H-FDD: 2100MHz
69 * B2 @H-FDD: 1900MHz
70 * B3 @H-FDD: 1800MHz
71 * B4 @H-FDD: 2100MHz
72 * B5 @H-FDD: 860MHz
73 * B8 @H-FDD: 900MHz
74 * B12 @H-FDD: 720MHz
75 * B13 @H-FDD: 740MHz
76 * B17 @H-FDD: 730MHz
77 * B18 @H-FDD: 870MHz
78 * B19 @H-FDD: 870MHz
79 * B20 @H-FDD: 790MHz
80 * B25 @H-FDD: 1900MHz
81 * B28 @H-FDD: 750MHz
82 * B66 @H-FDD: 2000MHz
83 * B70 @H-FDD: 2000MHz
84 * B85 @H-FDD: 700MHz
85
86 (% style="color:blue" %)**Battery:**
87
88 * Li/SOCI2 un-chargeable battery
89 * Capacity: 8500mAh
90 * Self Discharge: <1% / Year @ 25°C
91 * Max continuously current: 130mA
92 * Max boost current: 2A, 1 second
93
94 (% style="color:blue" %)**Power Consumption**
95
96 * STOP Mode: 10uA @ 3.3v
97 * Max transmit power: 350mA@3.3v
98
99 == 1.4 Suitable Container & Liquid ==
100
101
102 * Solid Wall container such as: steel, iron, glass, ceramics, non-foaming plastics etc.
103 * Container shape is regular, and surface is smooth.
104 * Container Thickness:
105 ** Pure metal material.  2~~8mm, best is 3~~5mm
106 ** Pure non metal material: <10 mm
107 * Pure liquid without irregular deposition.
108
109 (% style="display:none" %)
110
111 == 1.5 Install DDS20-NB ==
112
113
114 (% style="color:blue" %)**Step 1**(%%):  ** Choose the installation point.**
115
116 DDS20-NB (% style="color:red" %)**MUST**(%%) be installed on the container bottom middle position.
117
118 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDDS20%20-%20LoRaWAN%20Liquid%20Level%20Sensor%20User%20Manual/WebHome/image-20220615091045-3.png?rev=1.1||alt="image-20220615091045-3.png"]]
119
120
121 (((
122 (% style="color:blue" %)**Step 2**(%%):  **Polish the installation point.**
123 )))
124
125 (((
126 For Metal Surface with paint, it is important to polish the surface, first use crude sand paper to polish the paint level , then use exquisite sand paper to polish the metal level to make it shine & smooth.
127 )))
128
129 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/DDS20-LB_LoRaWAN_Ultrasonic_Liquid_Level_Sensor_User_Manual/WebHome/image-20230613143052-5.png?rev=1.1||alt="image-20230613143052-5.png"]]
130
131
132 No polish needed if the container is shine metal surface without paint or non-metal container.
133
134 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/DDS20-LB_LoRaWAN_Ultrasonic_Liquid_Level_Sensor_User_Manual/WebHome/image-20230613143125-6.png?rev=1.1||alt="image-20230613143125-6.png"]]
135
136
137 (((
138 (% style="color:blue" %)**Step3:   **(%%)**Test the installation point.**
139 )))
140
141 (((
142 Power on DDS20-NB, check if the blue LED is on, If the blue LED is on, means the sensor works. Then put ultrasonic coupling paste on the sensor and put it tightly on the installation point.
143 )))
144
145 (((
146 It is necessary to put the coupling paste between the sensor and the container, otherwise DDS20-NB won't detect the liquid level.
147 )))
148
149 (((
150 After paste the DDS20-NB well, power on DDS20-NB. In the first 30 seconds of booting, device will check the sensors status and BLUE LED will show the status as below. After 30 seconds, BLUE LED will be off to save battery life.
151 )))
152
153
154 (((
155 (% style="color:blue" %)**LED Status:**
156 )))
157
158 * (((
159 **Onboard LED**: When power on device, the onboard LED will fast blink 4 times which means detect the sensor well.
160 )))
161
162 * (((
163 (% style="color:blue" %)**BLUE LED**(% style="color:red" %)** always ON**(%%): Sensor is power on but doesn't detect liquid. There is problem in installation point.
164 )))
165 * (((
166 (% style="color:blue" %)**BLUE LED**(% style="color:red" %)** slowly blinking**(%%): Sensor detects Liquid Level, The installation point is good.
167 )))
168
169 (((
170 DDS20-NB will enter into low power mode at 30 seconds after system reset or power on, Blue LED will be off after that.
171 )))
172
173
174 (((
175 (% style="color:red" %)**Note :**(%%)** (% style="color:blue" %)Ultrasonic coupling paste(%%)**(% style="color:blue" %) (%%) is subjected in most shipping way. So the default package doesn't include it and user needs to purchase locally.
176 )))
177
178
179 (((
180 (% style="color:blue" %)**Step4:   **(%%)**Install use Epoxy ab glue.**
181 )))
182
183 (((
184 Prepare Eproxy AB glue.
185 )))
186
187 (((
188 Put Eproxy AB glue in the sensor and press it hard on the container installation point.
189 )))
190
191 (((
192 Reset DDS20-NB and see if the BLUE LED is slowly blinking.
193 )))
194
195 [[image:image-20230809172509-1.png]]
196
197 (((
198 (% style="color:red" %)**Note :**(% style="color:red; display:none" %)** **
199
200 (% style="color:red" %)**1:**(%%)** (% style="color:blue" %)Eproxy AB glue(%%)** needs 3~~ 5 minutes to stable attached. we can use other glue material to keep it in the position.
201 )))
202
203 (((
204 (% style="color:red" %)**2:**(%%)** (% style="color:blue" %)Eproxy AB glue(%%)** is subjected in most shipping way. So the default package doesn't include it and user needs to purchase locally.
205 )))
206
207
208 == 1.6 Applications ==
209
210
211 * Smart liquid control solution
212
213 * Smart liquefied gas solution
214
215 == 1.7 Precautions ==
216
217
218 * At room temperature, containers of different materials, such as steel, glass, iron, ceramics, non-foamed plastics and other dense materials, have different detection blind areas and detection limit heights.
219
220 * For containers of the same material at room temperature, the detection blind zone and detection limit height are also different for the thickness of the container.
221
222 * When the detected liquid level exceeds the effective detection value of the sensor, and the liquid level of the liquid to be measured shakes or tilts, the detected liquid height is unstable.
223
224 (% style="display:none" %)
225
226
227
228 == 1.8 Sleep mode and working mode ==
229
230
231 (% style="color:blue" %)**Deep Sleep Mode: **(%%)Sensor doesn't have any LoRaWAN activate. This mode is used for storage and shipping to save battery life.
232
233 (% style="color:blue" %)**Working Mode:** (%%)In this mode, Sensor will work as LoRaWAN Sensor to Join LoRaWAN network and send out sensor data to server. Between each sampling/tx/rx periodically, sensor will be in IDLE mode), in IDLE mode, sensor has the same power consumption as Deep Sleep mode.
234
235
236 == 1.9 Button & LEDs ==
237
238
239 [[image:Main.User Manual for LoRaWAN End Nodes.D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual.WebHome@1675071855856-879.png]]
240
241
242 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
243 |=(% style="width: 167px;background-color:#4F81BD;color:white" %)**Behavior on ACT**|=(% style="width: 117px;background-color:#4F81BD;color:white" %)**Function**|=(% style="width:225px;background-color:#4F81BD;color:white" %)**Action**
244 |(% style="width:167px" %)Pressing ACT between 1s < time < 3s|(% style="width:117px" %)Send an uplink|(% style="width:225px" %)(((
245 If sensor has already attached to NB-IoT network, sensor will send an uplink packet, (% style="color:blue" %)**blue led** (%%)will blink once.
246 Meanwhile, BLE module will be active and user can connect via BLE to configure device.
247 )))
248 |(% style="width:167px" %)Pressing ACT for more than 3s|(% style="width:117px" %)Active Device|(% style="width:225px" %)(((
249 (% style="color:green" %)**Green led**(%%) will fast blink 5 times, device will enter (% style="color:#037691" %)**OTA mode**(%%) for 3 seconds. And then start to attach NB-IoT network.
250 (% style="color:green" %)**Green led**(%%) will solidly turn on for 5 seconds after joined in network.
251 Once sensor is active, BLE module will be active and user can connect via BLE to configure device, no matter if device attach NB-IoT network or not.
252 )))
253 |(% style="width:167px" %)Fast press ACT 5 times.|(% style="width:117px" %)Deactivate Device|(% style="width:225px" %)(% style="color:red" %)**Red led**(%%) will solid on for 5 seconds. Means device is in Deep Sleep Mode.
254
255 == 1.10 BLE connection ==
256
257
258 DDS20-NB support BLE remote configure and firmware update.
259
260
261 BLE can be used to configure the parameter of sensor or see the console output from sensor. BLE will be only activate on below case:
262
263 * Press button to send an uplink
264 * Press button to active device.
265 * Device Power on or reset.
266
267 If there is no activity connection on BLE in 60 seconds, sensor will shut down BLE module to enter low power mode.
268
269
270 == 1.11 Pin Definitions & Switch ==
271
272
273 [[image:image-20230819104805-5.png]]
274
275
276 === 1.11.1 Jumper JP2 ===
277
278
279 Power on Device when put this jumper.
280
281
282 === 1.11.2 BOOT MODE / SW1 ===
283
284
285 **1)** (% style="color:blue" %)**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.
286
287 **2)** (% style="color:blue" %)**Flash**(%%): work mode, device starts to work and send out console output for further debug
288
289
290 === 1.11.3 Reset Button ===
291
292
293 Press to reboot the device.
294
295 (% style="display:none" %)
296
297
298 = 2. Use S31-NB to communicate with IoT Server =
299
300 == 2.1 Send data to IoT server via NB-IoT network ==
301
302
303 The DDS20-NB is equipped with a NB-IoT module, the pre-loaded firmware in DDS20-NB 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 DDS20-NB.
304
305
306 Below shows the network structure:
307
308 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/DDS20-NB_NB-IoT_Ultrasonic_Liquid_Level_Sensor_User_Manual/WebHome/image-20230911140426-2.png?width=951&height=320&rev=1.1||alt="image-20230911140426-2.png"]]
309
310
311 There are two version: (% style="color:blue" %)**-GE**(%%) and (% style="color:blue" %)**-1D**(%%) version of S31-NB.
312
313
314 (% style="color:blue" %)**GE Version**(%%): This version doesn't include SIM card or point to any IoT server. User needs to use AT Commands to configure below two steps to set S31-NB send data to IoT server.
315
316 * Install NB-IoT SIM card and configure APN. See instruction of [[Attach Network>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H2.AttachNetwork]].
317
318 * Set up sensor to point to IoT Server. See instruction of [[Configure to Connect Different Servers>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.Configuretoconnecttodifferentservers]]. 
319
320 Below shows result of different server as a glance.
321
322 (% border="1" cellspacing="4" style="width:515px" %)
323 |(% style="background-color:#4f81bd; color:white; width:100px" %)**Servers**|(% style="background-color:#4f81bd; color:white; width:300px" %)**Dash Board**|(% style="background-color:#4f81bd; color:white; width:115px" %)**Comments**
324 |(% style="width:127px" %)[[Node-Red>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.5A0Node-RedA028viaA0MQTT29]]|(% style="width:385px" %)(((
325 (% style="text-align:center" %)
326 [[image:image-20230819113244-8.png||height="183" width="367"]]
327 )))|(% style="width:170px" %)
328 |(% style="width:127px" %)[[DataCake>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.4Datacake]]|(% style="width:385px" %)(((
329 (% style="text-align:center" %)
330 [[image:image-20230819113244-9.png||height="119" width="367"]]
331 )))|(% style="width:170px" %)
332 |(% style="width:127px" %)[[Tago.IO>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.7A0Tago.ioA028viaA0MQTT29]]|(% style="width:385px" %) |(% style="width:170px" %)
333 |(% style="width:127px" %)[[General UDP>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.1GeneralA0UDPA0Connection]]|(% style="width:385px" %)Raw Payload. Need Developer to design Dash Board|(% style="width:170px" %)
334 |(% style="width:127px" %)[[General MQTT>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.2GeneralA0MQTTA0Connection]]|(% style="width:385px" %)Raw Payload. Need Developer to design Dash Board|(% style="width:170px" %)
335 |(% style="width:127px" %)[[ThingSpeak>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.3A0ThingSpeakA028viaA0MQTT29]]|(% style="width:385px" %)(((
336 (% style="text-align:center" %)
337 [[image:image-20230819113244-10.png||height="104" width="367"]]
338 )))|(% style="width:170px" %)
339 |(% style="width:127px" %)[[ThingsBoard>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.6A0ThingsBoard.CloudA028viaA0MQTT29]]|(% style="width:385px" %)(((
340 (% style="text-align:center" %)
341 [[image:image-20230819113244-11.png||height="141" width="367"]]
342 )))|(% style="width:170px" %)
343
344 (% style="color:blue" %)**1D Version**(%%): This version has 1NCE SIM card pre-installed and configure to send value to DataCake. User Just need to select the sensor type in DataCake and Activate S31-NB and user will be able to see data in DataCake. See here for [[DataCake Config Instruction>>url:http://wiki.dragino.com/xwiki/bin/view/Main/General%20Configure%20to%20Connect%20to%20IoT%20server%20for%20-NB%20%26%20-NS%20NB-IoT%20models/#H3.4Datacake]].
345
346
347 == 2.2 ​Payload Types ==
348
349
350 To meet different server requirement, S31-NB supports different payload type.
351
352 **Includes:**
353
354 * [[General JSON format payload>>||anchor="H2.2.1GeneralJsonFormat28Type3D529"]]. (Type=5)
355
356 * [[HEX format Payload>>||anchor="H2.2.2HEXformatPayload28Type3D029"]]. (Type=0)
357
358 * [[ThingSpeak Format>>||anchor="H2.2.4ThingSpeakPayload28Type3D129"]]. (Type=1)
359
360 * [[ThingsBoard Format>>||anchor="H2.2.3ThingsBoardPayload28Type3D329"]]. (Type=3)
361
362 User can specify the payload type when choose the connection protocol. Example:
363
364 (% style="color:#037691" %)**AT+PRO=2,0**  (%%) ~/~/ Use UDP Connection & hex Payload
365
366 (% style="color:#037691" %)**AT+PRO=2,5**   (%%) ~/~/ Use UDP Connection & Json Payload
367
368 (% style="color:#037691" %)**AT+PRO=3,5 ** (%%) ~/~/ Use MQTT Connection & Json Payload
369
370
371 === 2.2.1 General Json Format(Type~=5) ===
372
373
374 This is the General Json Format. As below:
375
376 (% style="color:#4472c4" %)**{"IMEI":866207053462762,"temperature":29.2,"humidity":54.2,"battery":3.27,"signal":24,"Model":S31x-NB, "1":{28.2,48.3,2023/08/10 08:00:37},"2":{28.1,49.1,2023/08/10 07:57:37},"3":{28.1,48.5,2023/08/10 07:54:37},"4":{28.2,48.6,2023/08/10 07:51:37},"5":{28.1,48.9,2023/08/10 07:48:37},"6":{28.2,48.8,2023/08/10 07:45:37},"7":{28.2,48.8,2023/08/10 07:42:37},"8":{28.0,48.8,2023/08/10 07:39:37}}**
377
378
379 (% style="color:red" %)**Notice, from above payload:**
380
381 * Temperature , Humidity , Battery & Signal are the value at uplink time.
382
383 * Json entry 1 ~~ 8 are the last 1 ~~ 8 sampling data as specify by (% style="color:#037691" %)**AT+NOUD=8 ** (%%)Command. Each entry includes (from left to right): Temperature, Humidity, Sampling time.
384
385 === 2.2.2 HEX format Payload(Type~=0) ===
386
387
388 This is the HEX Format. As below:
389
390 (% style="color:#4472c4" %)**f86620705346276200640cba16010000000011011801e864d49c2d011a01e364d49925011901eb64d49871011901e564d497bd011a01e664d49709011901e964d49655011a01e864d495a1011a01e864d494ed011801e864d49439**
391
392 [[image:1692424009971-458.png]]
393
394
395 (% style="color:blue" %)**Version:**
396
397 These bytes include the hardware and software version.
398
399 (% style="color:#037691" %)**Higher byte:**(%%) Specify Sensor Model: 0x00 for S31B-NB & S31-NB
400
401 (% style="color:#037691" %)**Lower byte:**(%%) Specify the software version: 0x64=100, means firmware version 100
402
403
404 (% style="color:blue" %)**BAT (Battery Info):**
405
406 Ex1: 0x0CBA = 3258mV
407
408
409 (% style="color:blue" %)**Signal Strength:**
410
411 NB-IoT Network signal Strength.
412
413 **Ex1: 0x16 = 22**
414
415 **0**  -113dBm or less
416
417 **1**  -111dBm
418
419 **2...30** -109dBm... -53dBm
420
421 **31**   -51dBm or greater
422
423 **99**    Not known or not detectable
424
425
426 (% style="color:blue" %)**Temperature: **
427
428 If payload is: 0105H:  (0105 & 8000 == 0), temp = 0105H /10 = 26.1 degree
429
430 If payload is: FF3FH :  (FF3F & 8000 == 1) , temp = (FF3FH - 65536)/10 = -19.3 degrees.
431
432 (FF3F & 8000: Judge whether the highest bit is 1, when the highest bit is 1, it is negative)
433
434
435 (% style="color:blue" %)**Humidity:   **
436
437 Read:0295(H)=661(D)    Value:  661 / 10=66.1, So 66.1%
438
439
440 (% style="color:blue" %)**TimeStamp:   **
441
442 Unit TimeStamp Example: 64d49439(H) = 1691653177(D)
443
444 Put the decimal value into this link(https:~/~/www.epochconverter.com/) to get the time.
445
446
447 === 2.2.3 ThingsBoard Payload(Type~=3) ===
448
449
450 Type3 payload special design for ThingsBoard, it will also configure other default server to ThingsBoard.
451
452 (% style="color:#4472c4" %)**{"IMEI":866207053462762,"temperature":29.2,"humidity":54.2,"battery":3.27,"signal":24}**
453
454
455 === 2.2.4 ThingSpeak Payload(Type~=1) ===
456
457
458 This payload meets ThingSpeak platform requirement. It includes only four fields. Form 1~~4 are:
459
460 Temperature, Humidity, Battery & Signal. This payload type only valid for ThingsSpeak Platform
461
462 As below:
463
464 (% style="color:#4472c4" %)**field1=27.9&field2=49.9&field3=3.23&field4=28**
465
466
467 == 2.3 Test Uplink and Change Update Interval ==
468
469
470 By default, Sensor will send uplinks (% style="color:blue" %)**every 2 hours**(%%) & AT+NOUD=8
471
472 User can use below commands to change the (% style="color:blue" %)**uplink interval**.
473
474 (% style="color:#037691" %)**AT+TDC=600 ** (%%) ~/~/ Set Update Interval to 600s
475
476 User can also push the button for more than 1 seconds to activate an uplink.
477
478
479 == 2.4 Multi-Samplings and One uplink ==
480
481
482 To save battery life, S31-NB will sample temperature & humidity data every 15 minutes and send one uplink every 2 hours. So each uplink it will include 8 stored data + 1 real-time data. They are defined by:
483
484 * (% style="color:#037691" %)**AT+TR=900**   (%%) ~/~/ The unit is seconds, and the default is to record data once every 900 seconds (15 minutes, the minimum can be set to 180 seconds)
485
486 * (% 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.
487
488 The diagram below explains the relationship between TR, NOUD, and TDC more clearly:
489
490 [[image:1692424376354-959.png]]
491
492
493 == 2.5 Humidity and Temperature alarm function ==
494
495
496 On each sampling define by AT+TR ( default 900s or 15 minutes), when the value exceed the range, it will trigger an Alarm and immediately sends a uplink.
497
498
499 (% style="color:blue" %)**AT Commands:**
500
501 (% style="color:#037691" %)**AT+ SHHUM=min,max**
502
503 Example: AT+ SHHUM=50,80  ~/~/ Alarm when humidity lower than 50 or higher than 80.
504
505
506 (% style="color:#037691" %)**AT+ SHTEMP=min,max**
507
508 Example: AT+ SHTEMP=20,30  ~/~/ Alarm when temperature lower than 20 or higher than 30
509
510
511 (% style="color:red" %)**Notice:**
512
513 * To disable Alarm, user can set min and max to same value , such as (% style="color:#037691" %)**AT+SHTEMP=0,0.**
514
515 * If user only want to send only min or max, user can set the alarm to a value that device won’t reach. For example: (% style="color:#037691" %)**AT+SHTEMP=-80,0.**
516
517 == 2.6 Trggier an uplink by external interrupt ==
518
519
520 S31-NB has an external trigger interrupt function. Users can use the PB15 pin to trigger the upload of data packets.
521
522 (% style="color:blue" %)**AT command:**
523
524 * (% style="color:#037691" %)**AT+INTMOD **(%%) ~/~/ Set the trigger interrupt mode
525
526 * (% style="color:#037691" %)**AT+INTMOD=0 **(%%) ~/~/ Disable Interrupt
527
528 * (% style="color:#037691" %)**AT+INTMOD=1 **(%%) ~/~/ Trigger by rising and falling edge
529
530 * (% style="color:#037691" %)**AT+INTMOD=2 **(%%) ~/~/ Trigger by falling edge
531
532 * (% style="color:#037691" %)**AT+INTMOD=3  **(%%) ~/~/ Trigger by rising edge
533
534 = 3. Configure S31x-NB =
535
536 == 3.1 Configure Methods ==
537
538
539 S31x-NB supports below configure method:
540
541 * AT Command via Bluetooth Connection (**Recommended**): [[BLE Configure Instruction>>http://wiki.dragino.com/xwiki/bin/view/Main/BLE%20Bluetooth%20Remote%20Configure/]].
542
543 * AT Command via UART Connection : See [[UART Connection>>http://wiki.dragino.com/xwiki/bin/view/Main/UART%20Access%20for%20LoRa%20ST%20v4%20base%20model/#H2.3UARTConnectionforSN50v3basemotherboard]].
544
545 == 3.2 AT Commands Set ==
546
547
548 AT+<CMD>?        : Help on <CMD>
549
550 AT+<CMD>         : Run <CMD>
551
552 AT+<CMD>=<value> : Set the value
553
554 AT+<CMD>=?       : Get the value
555
556
557 (% style="color:blue" %)**General Commands**      
558
559 AT                    : Attention       
560
561 AT?  : Short Help     
562
563 ATZ  : MCU Reset    
564
565 AT+TDC  : Application Data Transmission Interval
566
567 AT+CFG  : Print all configurations
568
569 AT+CFGMOD           : Working mode selection
570
571 AT+DEUI  : Get or set the Device ID
572
573 AT+INTMOD            : Set the trigger interrupt mode
574
575 AT+5VT           : Set extend the time of 5V power  
576
577 AT+PRO          : Choose agreement
578
579 AT+RXDL  : Extend the sending and receiving time
580
581 AT+DNSCFG  : Get or Set DNS Server
582
583 AT+GETSENSORVALUE   : Returns the current sensor measurement
584
585 AT+NOUD  : Get or Set the number of data to be uploaded
586
587 AT+CDP     : Read or Clear cached data
588
589 AT+SHTEMP:  Get or Set alarm of temp
590
591 AT+SHHUM:  Get or Set alarm of moisture
592
593 AT+SERVADDR :  Server Address
594
595
596 (% style="color:blue" %)**UDP Management**
597
598 AT+CFM  :  Upload confirmation mode (only valid for UDP)
599
600
601 (% style="color:blue" %)**MQTT Management**
602
603 AT+CLIENT               : Get or Set MQTT client
604
605 AT+UNAME              : Get or Set MQTT Username
606
607 AT+PWD                  : Get or Set MQTT password
608
609 AT+PUBTOPIC  : Get or Set MQTT publish topic
610
611 AT+SUBTOPIC  : Get or Set MQTT subscription topic
612
613
614 (% style="color:blue" %)**Information**          
615
616 AT+FDR  : Factory Data Reset
617
618 AT+PWORD  : Serial Access Password
619
620 AT+LDATA  : Get the last upload data
621
622 AT+CDP  : Read or Clear cached data
623
624
625 = 4. Battery & Power Consumption =
626
627
628 S31x-NB use ER26500 + SPC1520 battery pack. See below link for detail information about the battery info and how to replace.
629
630 [[**Battery Info & Power Consumption Analyze**>>http://wiki.dragino.com/xwiki/bin/view/Main/How%20to%20calculate%20the%20battery%20life%20of%20Dragino%20sensors%3F/]] .
631
632
633 = 5. Firmware update =
634
635
636 User can change device firmware to::
637
638 * Update with new features.
639
640 * Fix bugs.
641
642 Firmware and changelog can be downloaded from : **[[Firmware download link>>https://www.dropbox.com/sh/fhb3uyl4gt6clru/AAAiZVTFcxrfE1JOOyfcgO9ha?dl=0]]**
643
644 Methods to Update Firmware:
645
646 * (Recommended way) OTA firmware update via BLE: [[**Instruction**>>url:http://wiki.dragino.com/xwiki/bin/view/Main/BLE_Firmware_Update_NB_Sensors_BC660K-GL/]].
647
648 * Update through UART TTL interface : **[[Instruction>>url:http://wiki.dragino.com/xwiki/bin/view/Main/UART%20Access%20for%20LoRa%20ST%20v4%20base%20model/#H1.LoRaSTv4baseHardware]]**.
649
650 = 6. FAQ =
651
652 == 6.1 How can I access t BC660K-GL AT Commands? ==
653
654
655 User can access to BC660K-GL directly and send AT Commands.
656
657 [[See BC660K-GL AT Command set>>url:https://www.dropbox.com/sh/5f6ssda5fum8rvs/AABT68l8ZzWOvZ5eg2qwOoFda?dl=0]]
658
659
660 = 7. Order Info =
661
662
663 Part Number: (% style="color:blue" %)**S31-NB-XX  / S31B-NB-XX**
664
665 (% style="color:red" %)**XX**(%%):
666
667 * (% style="color:#037691" %)**GE**(%%): General version ( Exclude SIM card)
668
669 * (% style="color:#037691" %)**1D**(%%): with 1NCE* 10 years 500MB SIM card and Pre-configure to DataCake server
670
671 (% style="color:#037691" %)**1NCE SIM Card NB-IoT network coverage**(%%): Austria, Belgium, Bulgaria, Croatia, Czech Republic, Denmark, Finland, Germany, Great Britain, Greece, Hungary, Ireland, Italy, Latvia, Malta, Netherlands, Norway, Puerto Rico, Russia, Slovak , Republic, Slovenia, Spain, Sweden, Switzerland, Taiwan, USA, US Virgin Islands
672
673
674 = 8. ​Packing Info =
675
676
677 (% style="color:#037691" %)**Package Includes**:
678
679 * S31-NB or S31-NB NB-IoT Sensor Node x 1
680
681 * External antenna x 1
682
683 (% style="color:#037691" %)**Dimension and weight**:
684
685 * Device Size: 13.0 x 5 x 4.5 cm
686
687 * Device Weight: 150g
688
689 * Package Size / pcs : 14.0 x 8x 5 cm
690
691 * Weight / pcs : 180g
692
693 = 9. Support =
694
695
696 * 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.
697
698 * 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.cc>>mailto:Support@dragino.cc]].
699
700 (% style="display:none" %) (%%)