Last modified by Xiaoling on 2025/07/16 14:33

Show last authors
1 (% aria-label="image-20230911134259-1.png image widget" contenteditable="false" role="region" tabindex="-1" %)
2 (((
3 (% data-widget="image" style="text-align:center;" %)
4 [[image:image-20230911134259-1.png||height="570" width="570"]](% title="Click and drag to resize" %)​
5
6 (% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||height="15" role="presentation" title="Click and drag to move" width="15"]]
7 )))
8
9
10
11
12
13
14 **Table of Contents:**
15
16 (% aria-label="macro:toc widget" contenteditable="false" role="region" tabindex="-1" %)
17 (((
18 {{toc/}}
19
20 (% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||height="15" role="presentation" title="Click and drag to move" width="15"]]
21 )))
22
23
24
25
26
27
28 = 1. Introduction =
29
30 == 1.1 What is DDS20-NB NB-IoT Ultrasonic liquid level Sensor ==
31
32
33 The Dragino DDS20-NB is a (% style="color:blue" %)**NB-IoT Ultrasonic liquid level sensor**(%%) for Internet of Things solution. It uses (% style="color:blue" %)**none-contact method **(%%)to measure the (% style="color:blue" %)**height of liquid**(%%) in a container without opening the container, and send IoT platform via NB-IoT network.
34
35 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. 
36
37 DDS20-NB uses (% style="color:blue" %)**ultrasonic sensing technology**(%%) for distance measurement. DDS20-NB is of high accuracy to measure various liquid such as: (% style="color:blue" %)**toxic substances**, **strong acids**, **strong alkalis**(%%) and (% style="color:blue" %)**various pure liquids**(%%) in high-temperature and high-pressure airtight containers.
38
39 DDS20-NB supports different uplink methods including (% style="color:blue" %)**MQTT, MQTTs, UDP, TCP & COAP**(%%) for different application requirement, and support uplinks to various IoT Servers.
40
41 DDS20-NB (% style="color:blue" %)**supports BLE configure **(%%)and(% style="color:blue" %)** OTA update**(%%) which make user easy to use.
42
43 DDS20-NB is powered by (% style="color:blue" %)**8500mAh Li-SOCI2 battery**(%%), it is designed for long-term use up to several years.
44
45 DDS20-NB has optional built-in SIM card and default IoT server connection version. Which makes it works with simple configuration.
46
47
48 (% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]]
49
50 == 1.2 ​Features ==
51
52
53 * NB-IoT Bands: B1/B2/B3/B4/B5/B8/B12/B13/B17/B18/B19/B20/B25/B28/B66/B70/B85 @H-FDD
54 * Ultra-low power consumption
55 * Liquid Level Measurement by Ultrasonic technology
56 * Measure through container, No need to contact Liquid
57 * Valid level range 20mm - 2000mm
58 * Accuracy: ±(5mm+S*0.5%) (S: Measure Value)
59 * Multiply Sampling and one uplink
60 * Support Bluetooth v5.1 remote configure and update firmware
61 * Uplink on periodically
62 * Downlink to change configure
63 * IP66 Waterproof Enclosure
64 * 8500mAh Battery for long term use
65 * Nano SIM card slot for NB-IoT SIM
66
67 == 1.3 Specification ==
68
69
70 (% style="color:blue" %)**Common DC Characteristics:**
71
72 * Supply Voltage: 2.5v ~~ 3.6v
73 * Operating Temperature: -40 ~~ 85°C
74
75 (% style="color:blue" %)**NB-IoT Spec:**
76
77 (% style="color:#037691" %)**NB-IoT Module: BC660K-GL**
78
79 (% style="color:#037691" %)**Support Bands:**
80
81 * B1 @H-FDD: 2100MHz
82 * B2 @H-FDD: 1900MHz
83 * B3 @H-FDD: 1800MHz
84 * B4 @H-FDD: 2100MHz
85 * B5 @H-FDD: 860MHz
86 * B8 @H-FDD: 900MHz
87 * B12 @H-FDD: 720MHz
88 * B13 @H-FDD: 740MHz
89 * B17 @H-FDD: 730MHz
90 * B18 @H-FDD: 870MHz
91 * B19 @H-FDD: 870MHz
92 * B20 @H-FDD: 790MHz
93 * B25 @H-FDD: 1900MHz
94 * B28 @H-FDD: 750MHz
95 * B66 @H-FDD: 2000MHz
96 * B70 @H-FDD: 2000MHz
97 * B85 @H-FDD: 700MHz
98
99 (% style="color:blue" %)**Battery:**
100
101 * Li/SOCI2 un-chargeable battery
102 * Capacity: 8500mAh
103 * Self Discharge: <1% / Year @ 25°C
104 * Max continuously current: 130mA
105 * Max boost current: 2A, 1 second
106
107 (% style="color:blue" %)**Power Consumption**
108
109 * STOP Mode: 10uA @ 3.3v
110 * Max transmit power: 350mA@3.3v
111
112 == 1.4 Suitable Container & Liquid ==
113
114
115 * Solid Wall container such as: steel, iron, glass, ceramics, non-foaming plastics etc.
116 * Container shape is regular, and surface is smooth.
117 * Container Thickness:
118 ** Pure metal material.  2~~8mm, best is 3~~5mm
119 ** Pure non metal material: <10 mm
120 * Pure liquid without irregular deposition.
121
122 (% style="display:none" %)
123
124 == 1.5 Install DDS20-NB ==
125
126
127 (% style="color:blue" %)**Step 1**(%%):  ** Choose the installation point.**
128
129 DDS20-NB (% style="color:red" %)**MUST**(%%) be installed on the container bottom middle position.
130
131 [[image:image-20250411145934-12.jpeg]]
132
133 (% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]]
134
135
136 (((
137 (% style="color:blue" %)**Step 2**(%%):  **Polish the installation point.**
138 )))
139
140 (((
141 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.
142
143 [[image:image-20250411150038-13.jpeg]]
144 )))
145
146 (% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]]
147
148
149 No polish needed if the container is shine metal surface without paint or non-metal container.
150
151 [[image:image-20250411150057-14.jpeg]]
152
153 (% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]](% title="Click and drag to resize" %)​
154
155 (((
156 (% style="color:blue" %)**Step3:   **(%%)**Test the installation point.**
157 )))
158
159 (((
160 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.
161 )))
162
163 (((
164 It is necessary to put the coupling paste between the sensor and the container, otherwise DDS20-NB won't detect the liquid level.
165 )))
166
167 (((
168 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.
169 )))
170
171
172 (((
173 (% style="color:blue" %)**LED Status:**
174 )))
175
176 * (((
177 **Onboard LED**: When power on device, the onboard LED will fast blink 4 times which means detect the sensor well.
178 )))
179
180 * (((
181 (% 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.
182 )))
183 * (((
184 (% style="color:blue" %)**BLUE LED**(% style="color:red" %)** slowly blinking**(%%): Sensor detects Liquid Level, The installation point is good.
185 )))
186
187 (((
188 DDS20-NB will enter into low power mode at 30 seconds after system reset or power on, Blue LED will be off after that.
189 )))
190
191 (((
192 (% 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.
193 )))
194
195
196
197
198 (((
199 (% style="color:blue" %)**Step4:   **(%%)**Install use Epoxy ab glue.**
200
201
202 After ensuring that the ultrasonic coupling paste is applied to the sensor and adheres closely to the mounting point, and the sensor can work normally, add AB epoxy glue.
203
204 ((% style="color:red" %)**Note :**(%%)The ultrasonic coupling agent is used to help the sensor detect the liquid in the container, and the epoxy AB glue is used to fix the probe. Both need to be used at the same time.)
205 )))
206
207 (((
208 Prepare Eproxy AB glue.
209 )))
210
211 (((
212 Put Eproxy AB glue in the sensor and press it hard on the container installation point.
213 )))
214
215 (((
216 Reset DDS20-NB and see if the BLUE LED is slowly blinking.
217
218 [[image:image-20250411150157-15.jpeg]]
219 )))
220
221 (% style="color:red" %)**Note :**(% style="color:red; display:none" %)** **
222
223 (((
224 (% 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.
225 )))
226
227 (((
228 (% 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.
229 )))
230
231
232 == 1.6 Applications ==
233
234
235 * Smart liquid control solution
236
237 * Smart liquefied gas solution
238
239 == 1.7 Precautions ==
240
241
242 * 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.
243
244 * 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.
245
246 * 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.
247
248 (% style="display:none" %)
249
250
251 == 1.8 Sleep mode and working mode ==
252
253
254 (% style="color:blue" %)**Deep Sleep Mode: **(%%)Sensor doesn't have any NB-IoT activate. This mode is used for storage and shipping to save battery life.
255
256 (% style="color:blue" %)**Working Mode:** (%%)In this mode, Sensor will work as NB-IoT Sensor to Join NB-IoT 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.
257
258
259 == 1.9 Button & LEDs ==
260
261
262 (% aria-label="1675071855856-879.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:Main.User Manual for LoRaWAN End Nodes.D20-LBD22-LBD23-LB_LoRaWAN_Temperature_Sensor_User_Manual.WebHome@1675071855856-879.png]](% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]](% title="Click and drag to resize" %)​
263
264
265 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
266 |=(% 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**
267 |[[image:1749547877408-385.png]] 1~~3s|(% style="width:117px" %)Send an uplink|(% style="width:225px" %)(((
268 If sensor has already attached to NB-IoT network, sensor will send an uplink packet, (% style="color:blue" %)**blue led** (%%)will blink once.
269 Meanwhile, BLE module will be active and user can connect via BLE to configure device.
270 )))
271 |[[image:1749547878871-885.png]] >3s|(% style="width:117px" %)Active Device|(% style="width:225px" %)(((
272 (% 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.
273 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.
274 )))
275 |[[image:1749547859394-793.png]] x5|(% 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.
276
277 (% style="color:red" %)**Note: When the device is executing a program, the buttons may become invalid. It is best to press the buttons after the device has completed the program execution.**
278
279
280 == 1.10 BLE connection ==
281
282
283 DDS20-NB support BLE remote configure and firmware update.
284
285 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:
286
287 * Press button to send an uplink
288 * Press button to active device.
289 * Device Power on or reset.
290
291 If there is no activity connection on BLE in 60 seconds, sensor will shut down BLE module to enter low power mode.
292
293
294 == 1.11 Pin Definitions , Switch & SIM Direction ==
295
296
297 [[image:image-20250218150249-1.jpeg||height="356" width="775"]](% title="Click and drag to resize" %)​
298
299
300 === 1.11.1 Jumper JP2 ===
301
302
303 Power on Device when put this jumper.
304
305
306 === 1.11.2 BOOT MODE / SW1 ===
307
308
309 **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.
310
311 **2)** (% style="color:blue" %)**Flash**(%%): work mode, device starts to work and send out console output for further debug
312
313
314 === 1.11.3 Reset Button ===
315
316
317 Press to reboot the device.
318
319 (% style="display:none" %)
320
321
322 === 1.11.4 SIM Card Direction ===
323
324
325 See this link. [[How to insert SIM Card>>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]].
326
327
328 == 1.12 Mechanical ==
329
330 [[image:image-20250411150635-16.jpeg]]
331
332
333 (% style="color:blue" %)**Probe Mechanical:**
334
335 (% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]](% title="Click and drag to resize" %)​[[image:image-20250411150722-17.png]]
336
337 (% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]](% title="Click and drag to resize" %)​
338
339 = 2. Use DDS20-NB to communicate with IoT Server =
340
341 == 2.1 Send data to IoT server via NB-IoT network ==
342
343
344 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.
345
346 Below shows the network structure:
347
348 (% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]](% title="Click and drag to resize" %)​[[image:image-20250411144415-1.png]]
349
350
351 There are two version: (% style="color:blue" %)**-GE**(%%) and (% style="color:blue" %)**-1T**(%%) version of DDS20-NB.
352
353 (% 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 DDS20-NB send data to IoT server.
354
355 * 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]].
356
357 * 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]]. 
358
359 Below shows result of different server as a glance.
360
361 (% border="1" cellspacing="4" style="width:515px" %)
362 |(% 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**
363 |(% 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" %)(((
364 (% aria-label="image-20230819113244-8.png image widget" contenteditable="false" role="region" tabindex="-1" %)
365 (((
366 (% data-widget="image" style="text-align:center;" %)
367 [[image:image-20230819113244-8.png||height="183" width="367"]](% title="Click and drag to resize" %)​
368
369 (% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||height="15" role="presentation" title="Click and drag to move" width="15"]]
370 )))
371 )))|(% style="width:170px" %)
372 |(% 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" %)(((
373 (% aria-label="image-20230819113244-9.png image widget" contenteditable="false" role="region" tabindex="-1" %)
374 (((
375 (% data-widget="image" style="text-align:center;" %)
376 [[image:image-20230819113244-9.png||height="119" width="367"]](% title="Click and drag to resize" %)​
377
378 (% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||height="15" role="presentation" title="Click and drag to move" width="15"]]
379 )))
380 )))|(% style="width:170px" %)
381 |(% 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" %)
382 |(% 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" %)
383 |(% 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" %)
384 |(% 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" %)(((
385 (% aria-label="image-20230819113244-10.png image widget" contenteditable="false" role="region" tabindex="-1" %)
386 (((
387 (% data-widget="image" style="text-align:center;" %)
388 [[image:image-20230819113244-10.png||height="104" width="367"]](% title="Click and drag to resize" %)​
389
390 (% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||height="15" role="presentation" title="Click and drag to move" width="15"]]
391 )))
392 )))|(% style="width:170px" %)
393 |(% 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" %)(((
394 (% aria-label="image-20230819113244-11.png image widget" contenteditable="false" role="region" tabindex="-1" %)
395 (((
396 (% data-widget="image" style="text-align:center;" %)
397 [[image:image-20230819113244-11.png||height="141" width="367"]](% title="Click and drag to resize" %)​
398
399 (% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||height="15" role="presentation" title="Click and drag to move" width="15"]]
400 )))
401 )))|(% style="width:170px" %)
402
403 (% style="color:blue" %)**1T Version**(%%): This version has 1NCE SIM card pre-installed and configure to send value to ThingsEye. User Just need to select the sensor type in ThingsEyeand Activate DDS20-NB and user will be able to see data in ThingsEye. See here for [[ThingsEye Config Instruction>>url:https://wiki.thingseye.io/xwiki/bin/view/Main/]].
404
405
406 == 2.2 ​Payload Types ==
407
408
409 To meet different server requirement, DDS20-NB supports different payload type.
410
411 **Includes:**
412
413 * [[General JSON format payload>>||anchor="H2.2.1GeneralJsonFormat28Type3D529"]]. (Type=5)
414
415 * [[HEX format Payload>>||anchor="H2.2.2HEXformatPayload28Type3D029"]]. (Type=0)
416
417 * [[ThingSpeak Format>>||anchor="H2.2.4ThingSpeakPayload28Type3D129"]]. (Type=1)
418
419 * [[ThingsBoard Format>>||anchor="H2.2.3ThingsBoardPayload28Type3D329"]]. (Type=3)
420
421 User can specify the payload type when choose the connection protocol. Example:
422
423 (% style="color:#037691" %)**AT+PRO=1,0**  (%%) ~/~/ Use COAP Connection & hex Payload
424
425 (% style="color:#037691" %)**AT+PRO=1,5**   (%%) ~/~/ Use COAP Connection & Json Payload
426
427 (% style="color:#037691" %)**AT+PRO=2,0**  (%%) ~/~/ Use UDP Connection & hex Payload
428
429 (% style="color:#037691" %)**AT+PRO=2,5**   (%%) ~/~/ Use UDP Connection & Json Payload
430
431 (% style="color:#037691" %)**AT+PRO=3,0**  (%%) ~/~/ Use MQTT Connection & hex Payload
432
433 (% style="color:#037691" %)**AT+PRO=3,5**   (%%) ~/~/ Use MQTT Connection & Json Payload
434
435 (% style="color:#037691" %)**AT+PRO=4,0**  (%%) ~/~/ Use TCP Connection & hex Payload
436
437 (% style="color:#037691" %)**AT+PRO=4,5**   (%%) ~/~/ Use TCP Connection & Json Payload
438
439
440 === 2.2.1 General Json Format(Type~=5) ===
441
442
443 This is the General Json Format. As below:
444
445 (% style="color:#4472c4" %)**{"IMEI":"863663062798914","IMSI":"460083513507314","Model":"DDS20-NB","distance":31,"interrupt":0,"interrupt_level":0,"battery":3.26,"signal":16,"time":"2024/11/21 06:47:49","1":[0,"2024/11/21 05:26:12"],"2":[0,"2024/11/21 05:11:12"],"3":[0,"2024/11/21 04:56:12"],"4":[0,"2024/11/21 04:41:12"],"5":[0,"2024/11/21 04:26:12"],"6":[0,"2024/11/21 04:11:12"],"7":[0,"2024/11/21 03:10:21"],"8":[0,"2024/11/21 01:22:43"]}**
446
447 [[image:image-20241121145000-1.png]]
448
449 (% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]](% title="Click and drag to resize" %)​
450
451 (% style="color:red" %)**Notice, from above payload:**
452
453 * Distance, interrupt, interrupt_level, Battery, Signal & time are the value at uplink time.
454
455 * Json entry 1 ~~ 8 are the last 1 ~~ 8 sampling data as specify by (% style="color:#037691" %)**AT+CLOCKLOG=1,65535,15,8** (%%)Command. Each entry includes (from left to right): Distance, Sampling time.
456
457 === 2.2.2 HEX format Payload(Type~=0) ===
458
459
460 This is the HEX Format. As below:
461
462 (% style="color:#4472c4" %)**f863663062798914f4600835135073140a820cd413010000001f673ed8a40000673ec4740000673ec0f00000673ebd6c0000673eb9e80000673eb6640000673eb2e00000673ea49d0000673e8b63**
463
464 (% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]][[image:image-20240528101748-3.png||height="206" width="1226"]](% title="Click and drag to resize" %)​[[image:image-20250321101721-1.png]]
465
466 If we use the MQTT client to subscribe to this MQTT topic, we can see the following information when the NB sensor uplink data.
467
468 (% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]](% title="Click and drag to resize" %)​[[image:image-20241121145354-2.png]]
469
470 (% style="color:blue" %)**Version:**
471
472 These bytes include the hardware and software version.
473
474 (% style="color:#037691" %)**Higher byte:**(%%) Specify Sensor Model: 0x0a for DDS20-NB
475
476 (% style="color:#037691" %)**Lower byte:**(%%) Specify the software version: 0x82=130, means firmware version 1.3.0
477
478
479 (% style="color:blue" %)**BAT (Battery Info):**
480
481 Ex1: 0x0d28 = 3368mV
482
483
484 (% style="color:blue" %)**Signal Strength:**
485
486 NB-IoT Network signal Strength.
487
488 **Ex1: 0x12 = 18**
489
490 **0**  -113dBm or less
491
492 **1**  -111dBm
493
494 **2...30** -109dBm... -53dBm
495
496 **31**   -51dBm or greater
497
498 **99**    Not known or not detectable
499
500
501 (% style="color:blue" %)**Distance:  **
502
503 Ex1: 0x002C = 44 mm
504
505
506 (% style="color:blue" %)**TimeStamp:   **
507
508 Unit TimeStamp Example: 66518047(H) = 1716617287(D)
509
510 Put the decimal value into this link ([[https:~~/~~/www.epochconverter.com)>>https://www.epochconverter.com]])to get the time.
511
512
513 === 2.2.3 ThingsBoard Payload(Type~=3) ===
514
515
516 Type3 payload special design for ThingsBoard, it will also configure other default server to ThingsBoard.
517
518 (% style="color:#4472c4" %)**{
519 "topic": "2276492",
520 "payload": {
521 "IMEI": "863663062798914",
522 "Model": "DDS20-NB",
523 "distance": 44,
524 "interrupt": 0,
525 "interrupt_level": 0,
526 "battery": 3.38,
527 "signal": 13,
528 "1": [44, "2024/05/25 06:18:55"],
529 "2": [44, "2024/05/25 06:14:13"],
530 "3": [44, "2024/05/25 06:11:12"],
531 "4": [44, "2024/05/25 05:25:53"],
532 "5": [44, "2024/05/25 05:10:53"],
533 "6": [44, "2024/05/25 04:55:53"],
534 "7": [44, "2024/05/25 04:40:52"],
535 "8": [44, "2024/05/25 04:25:53"]
536 }
537 }**
538
539 [[image:image-20240528102652-6.png||height="673" width="1358"]]
540
541 === 2.2.4 ThingSpeak Payload(Type~=1) ===
542
543
544 This payload meets ThingSpeak platform requirement. It includes only four fields. Form 1~~3 are:
545
546 Distance, Battery & Signal. This payload type only valid for ThingsSpeak Platform
547
548 As below:
549
550 (% style="color:#4472c4" %)**field1=Distance value&field2=Battery value&field3=Signal value**
551
552 (% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]][[image:image-20240528102726-8.png]]
553
554 (% title="Click and drag to resize" %)​
555
556 == 2.3 Test Uplink and Change Update Interval ==
557
558
559 By default, Sensor will send uplinks (% style="color:blue" %)**every 2 hours**(%%) & AT+NOUD=8
560
561 User can use below commands to change the (% style="color:blue" %)**uplink interval**.
562
563 (% style="color:#037691" %)**AT+TDC=7200 ** (%%) ~/~/ Set Update Interval to 7200s
564
565 User can also push the button for more than 1 seconds to activate an uplink.
566
567
568 == 2.4 Multi-Samplings and One uplink ==
569
570
571 (% style="color:red" %)**Notice: The AT+NOUD feature is upgraded to Clock Logging, please refer [[Clock Logging Feature>>||anchor="H2.7Clocklogging28Sincefirmwareversionv1.2.129"]]**
572
573 To save battery life, DDS20-NB will sample Distance 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:
574
575 * (% 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)
576
577 * (% 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.
578
579 The diagram below explains the relationship between TR, NOUD, and TDC more clearly:
580
581 (% aria-label="1692424376354-959.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:1692424376354-959.png]](% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]](% title="Click and drag to resize" %)​
582
583
584 == 2.5 Trggier an uplink by external interrupt ==
585
586
587 DDS20-NB has an external trigger interrupt function. Users can use the GPIO_EXTI pin to trigger the upload of data packets.
588
589 (% style="color:blue" %)**AT command:**
590
591 * (% style="color:#037691" %)**AT+INTMOD **(%%) ~/~/ Set the trigger interrupt mode
592
593 * (% style="color:#037691" %)**AT+INTMOD=0 **(%%) ~/~/ Disable Interrupt
594
595 * (% style="color:#037691" %)**AT+INTMOD=1 **(%%) ~/~/ Trigger by rising and falling edge
596
597 * (% style="color:#037691" %)**AT+INTMOD=2 **(%%) ~/~/ Trigger by falling edge
598
599 * (% style="color:#037691" %)**AT+INTMOD=3  **(%%) ~/~/ Trigger by rising edge
600
601 == 2.6 Clock logging (Since firmware version v1.2.1) ==
602
603
604 Sometimes when we deploy lots of end nodes in field. We want all sensors sample data at the same time, and upload these data together for analyze. In such case, we can use clock loging feature.
605
606 We can use this command to set the start time of data recording and the time interval to meet the requirements of the specific collection time of data.
607
608 * (% style="color:blue" %)**AT command: **(% style="color:#037691" %)**AT+CLOCKLOG=a,b,c,d**
609
610 (% style="color:#037691" %)**a:**(%%)** 0:** Disable Clock logging.  ** 1: **Enable Clock Logging
611
612 (% style="color:#037691" %)**b:**(%%)** **Specify First sampling start second: range **(0 ~~ 3599, 65535)   ** ~/~/ (% style="color:red" %)**Note:**(%%)** **If parameter b is set to 65535, the log period starts after the node accesses the network and sends packets.
613
614 (% style="color:#037691" %)**c:**(%%)** **Specify the sampling interval: range **(0 ~~ 255 minutes)**
615
616 (% style="color:#037691" %)**d:**(%%)** **How many entries should be uplink on every TDC **(max 32)**
617
618 (% style="color:red" %)**Note: To disable clock recording, set the following parameters: AT+CLOCKLOG=1,65535,0,0**
619
620 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/SPH01-NB_NB-IoT_Soil_pH_Sensor_User_Manual/WebHome/image-20240315141254-1.png?rev=1.1||alt="image-20240315141254-1.png"]]
621
622 **Example:**
623
624 **AT+CLOCKLOG=1,65535,1,5**
625
626 After the node sends the first packet, data is recorded to the memory at intervals of 1 minute. For each TDC uplink, the uplink load will include: battery information + the last 5 memory records (payload + timestamp).
627
628 (% class="wikigeneratedid" %)
629 [[image:image-20240316112756-1.png||height="559" width="1218"]]
630
631 (% class="wikigeneratedid" %)
632 (% style="color:red" %)**Note: Users need to synchronize the server time before configuring this command. If the server time is not synchronized before this command is configured, the command takes effect only after the node is reset.**
633
634
635 * (% style="color:blue" %)**Downlink command:**(%%)** (% style="color:#037691" %)0x0A(%%)**
636
637 Format: Command Code (0x0A) followed by 5 bytes.
638
639 * **Example 1**: Downlink Payload:** 0A01FFFF0F08**  ~/~/ Set SHT record time: AT+CLOCKLOG=1,65535,15,8
640 * **Example 1**: Downlink Payload:** 0A0104B00F08**  ~/~/ Set SHT record time: AT+CLOCKLOG=1,1200,15,8
641
642 (% style="color:red" %)**Note: When entering the downlink payload, there must be no Spaces between bytes.**
643
644
645 == 2.7 Example Query saved historical records ==
646
647
648 * (% style="color:blue" %)**AT command:**(%%)** (% style="color:#037691" %)AT+CDP(%%)**
649
650 This command can be used to search the saved history, recording up to 32 groups of data, each group of historical data contains a maximum of 100 bytes.
651
652 (% class="wikigeneratedid" %)
653 [[image:image-20240316112902-2.png||height="699" width="905"]]
654
655
656 == 2.8 Uplink log query ==
657
658
659 * (% style="color:blue" %)**AT command:**(%%)** (% style="color:#037691" %)AT+GETLOG(%%)**
660
661 This command can be used to query upstream logs of data packets.
662
663 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/PS-NB-NA_NB-IoT_Analog_Sensor_User_Manual/WebHome/image-20240407191922-2.png?width=903&height=631&rev=1.1||alt="image-20240407191922-2.png"]]
664
665
666 == 2.9 Scheduled domain name resolution ==
667
668
669 This command is used to set up scheduled domain name resolution.
670
671 (% style="color:blue" %)**AT command:**
672
673 * (% style="color:#037691" %)**AT+DNSTIMER=XX   **(%%)~/~/ Unit: hour
674
675 After setting this command, domain name resolution will be performed regularly.
676
677
678 == 2.10 Set the QoS level ==
679
680
681 This command is used to set the QoS level of **MQTT**.
682
683 (% style="color:blue" %)**AT command:**
684
685 * (% style="color:#037691" %)**AT+MQOS=xx**(%%)**   **~/~/ 0~~2
686
687 (% style="color:blue" %)**Downlink command:**(%%)** (% style="color:#037691" %)0x07(%%)**
688
689 Format: Command Code (0x07) followed by 1 byte.
690
691 **Ex1:** Downlink payload: **0x0700**  ~/~/ AT+MQOS=0
692
693 **Ex2:** Downlink payload: **0x0701**  ~/~/ AT+MQOS=1
694
695
696 == 2.11 Distance Alarm ==
697
698
699 Feature: Set alarm of LDDS and NMDS.
700
701 (% style="color:blue" %)**AT command:**(%%)** (% style="color:#037691" %)AT+LDDSALARM(%%) ** (Range: 20mm - 2000mm)
702
703 Example: AT+LDDSALARM=500,1000  ~/~/ Set the alarm threshold
704
705
706 (% style="color:blue" %)**Downlink Command:**(%%)** (% style="color:#037691" %)0x08(%%)**
707
708 Format: Command Code (0x08) followed by 4 bytes.
709
710 Example:  Downlink Payload: ** 08 01 F4  03 E8   **~/~/ AT+LDDSALARM=500,1000
711
712
713 == 2.12 Set the downlink debugging mode(Since firmware v1.3.0) ==
714
715
716 Feature: Set the conversion between the standard version and 1T version downlinks.
717
718 (% style="color:blue" %)**AT command: AT+DOWNTE**
719
720 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:510px" %)
721 |=(% style="width: 138px; background-color: rgb(79, 129, 189); color: white;" %)**Command Example**|=(% style="width: 143px; background-color: rgb(79, 129, 189); color: white;" %)**Function/Parameters**|=(% style="width: 229px; background-color: rgb(79, 129, 189); color: white;" %)**Response/Explanation**
722 |(% style="width:134px" %)AT+DOWNTE=?|(% style="width:143px" %)Get current Settings|(% style="width:229px" %)(((
723 0,0  (default)
724 OK
725 )))
726 |(% colspan="1" rowspan="2" style="width:134px" %)(((
727
728
729
730
731 AT+DOWNTE=a,b
732 )))|(% style="width:143px" %)**a**: Set the conversion between the downlink of the standard version and 1T version|(% style="width:229px" %)(((
733 **0**: Set the downlink of the standard version.
734 **1**: Set the downlink of the 1T version(ThingsEye platform)
735 )))
736 |(% style="width:143px" %)**b**: Enable/Disable downlink debugging|(% style="width:229px" %)(((
737 **0**: Disable downlink debugging mode.
738 **1**: Enable downlink debugging mode, users can see the original downlink reception.
739 )))
740
741 **Example:**
742
743 * AT+DOWNTE=0,1  ~/~/ Set to standard version downlink, and enable downlink debugging.
744 * AT+DOWNTE=1,1  ~/~/ Set to 1T version downlink, and enable downlink debugging.
745
746 (% style="color:blue" %)**Downlink Command:  **
747
748 No downlink commands for feature
749
750
751 == 2.13 Domain name resolution settings(Since firmware v1.3.0) ==
752
753
754 Feature: Set dynamic domain name resolution IP.
755
756 (% style="color:blue" %)**AT command: AT+BKDNS**
757
758 (% border="1" cellspacing="3" style="background-color:#f2f2f2; width:510px" %)
759 |=(% style="width: 138px; background-color: rgb(79, 129, 189); color: white;" %)**Command Example**|=(% style="width: 143px; background-color: rgb(79, 129, 189); color: white;" %)**Function/Parameters**|=(% style="width: 229px; background-color: rgb(79, 129, 189); color: white;" %)**Response/Explanation**
760 |(% style="width:134px" %)(((
761 AT+BKDNS=?
762 )))|(% style="width:143px" %)Get current Settings|(% style="width:606px" %)(((
763 0,0,NULL  (default)
764 OK
765 )))
766 |(% colspan="1" rowspan="3" style="width:134px" %)(((
767
768
769
770
771
772
773
774
775
776
777
778 AT+BKDNS=a,b,c
779 )))|(% style="width:143px" %)(((
780 **a**: Enable/Disable dynamic domain name resolution.
781 )))|(% style="width:606px" %)**1**: Disable dynamic domain name update. The ip address will be saved after the domain name is resolved, if the next domain name resolution fails, the last saved ip address will be used.
782 **2**: Enable dynamic domain name update. The ip address will be saved after domain name resolution, if the next domain name resolution fails, the last saved ip address will be used, and the domain name resolution will be updated regularly according to the time set by the customer.
783 |(% style="width:143px" %)**b**: Set the time to update the domain name resolution at regular intervals.|(% style="width:606px" %)(((
784 Unit: hour
785 )))
786 |(% style="width:143px" %)(((
787 **c**: Set the IP address manually.
788 )))|(% style="width:606px" %)(((
789 The format is the same as AT+SERVADDR.
790 If domain name resolution fails, this ip address will be used directly, if domain name resolution succeeds, parameter c will be updated to the successfully resolved IP address.
791 )))
792
793 **Example:**
794
795 * AT+BKDNS=1,0  ~/~/ Dynamic domain name resolution is disabled.
796 * AT+BKDNS=2,1  ~/~/ The dynamic domain name resolution function is enabled and the automatic update time is set to 1 hour.
797 * AT+BKDNS=2,4,3.69.98.183,1883  ~/~/ The dynamic domain name resolution function is enabled and the automatic update time is set to 4 hour, and manually set the ip address, if the domain name failed to resolve, it will directly use this ip to communicate. When the next domain name resolution is successful, it will be updated to the ip address of the successful resolution.
798
799 (% style="color:blue" %)**Downlink Command:  **
800
801 No downlink commands for feature
802
803
804 == 2.14  Set CoAP option ==
805
806
807 This command sets the connection parameters of the COAP.
808
809 (% style="color:blue" %)**AT command:**
810
811 * AT+URI1       ~/~/ CoAP option name, CoAP option length, "CoAP option value"
812 * AT+URI2      ~/~/ CoAP option name, CoAP option length,  "CoAP option value"
813 * AT+URI3     ~/~/ CoAP option name, CoAP option length,  "CoAP option value"
814 * AT+URI4     ~/~/ CoAP option name, CoAP option length,  "CoAP option value"
815
816 **Example:**
817
818 * AT+URI1=11,38,"i/faaa241f-af4a-b780-4468-c671bb574858"
819
820 = 3. Configure DDS20-NB =
821
822 == 3.1 Configure Methods ==
823
824
825 DDS20-NB supports below configure method:
826
827 * AT Command via Bluetooth Connection (**Recommended**): [[BLE Configure Instruction>>http://wiki.dragino.com/xwiki/bin/view/Main/BLE%20Bluetooth%20Remote%20Configure/]].
828
829 * 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]].
830
831 == 3.2  Serial Access Password ==
832
833
834 After the Bluetooth or UART connection is successful, use the Serial Access Password to enter the AT command window.
835
836 The label on the box of the node will print the initial password: AT+PIN=**xxxxxx**, and directly use the six-digit password to access the AT instruction window.
837
838 [[image:https://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/RS485-NB%2C-NS_RS485%2CUART_to_NB-IoT_Converter_User_Manual/WebHome/image-20250226165815-1.png?rev=1.1||alt="image-20250226165815-1.png"]]
839
840
841 If you need to change the password, use **AT+PWORD=**xxxxxx (6 characters), NB nodes only support lowercase letters.
842
843 [[image:image-20240826175850-2.png]]
844
845
846 (% style="color:red" %)**Note: After entering the command, you need to add a line break, and you can also set automatic line breaks in the Bluetooth tool or UART connection tool.**
847
848 [[image:image-20240826175856-3.png]]
849
850
851 == 3.3 AT Commands Set ==
852
853
854 AT+<CMD>?        : Help on <CMD>
855
856 AT+<CMD>         : Run <CMD>
857
858 AT+<CMD>=<value> : Set the value
859
860 AT+<CMD>=?       : Get the value
861
862
863 (% style="color:blue" %)**General Commands**      
864
865 AT                    : Attention       
866
867 AT?  : Short Help     
868
869 ATZ  : MCU Reset    
870
871 AT+TDC  : Application Data Transmission Interval
872
873 AT+CFG  : Print all configurations
874
875 AT+CFGMOD           : Working mode selection
876
877 AT+DEUI  : Get or set the Device ID
878
879 AT+INTMOD            : Set the trigger interrupt mode
880
881 AT+5VT           : Set extend the time of 5V power  
882
883 AT+PRO          : Choose agreement
884
885 AT+RXDL  : Extend the sending and receiving time
886
887 AT+DNSCFG  : Get or Set DNS Server
888
889 AT+GETSENSORVALUE   : Returns the current sensor measurement
890
891 AT+NOUD  : Get or Set the number of data to be uploaded
892
893 AT+CDP     : Read or Clear cached data
894
895 AT+SHTEMP:  Get or Set alarm of temp
896
897 AT+SHHUM:  Get or Set alarm of moisture
898
899 AT+SERVADDR :  Server Address
900
901
902
903 (% style="color:blue" %)**MQTT Management**
904
905 AT+CLIENT               : Get or Set MQTT client
906
907 AT+UNAME              : Get or Set MQTT Username
908
909 AT+PWD                  : Get or Set MQTT password
910
911 AT+PUBTOPIC  : Get or Set MQTT publish topic
912
913 AT+SUBTOPIC  : Get or Set MQTT subscription topic
914
915
916 (% style="color:blue" %)**Information**          
917
918 AT+FDR  : Factory Data Reset
919
920 AT+PWORD  : Serial Access Password
921
922 AT+LDATA  : Get the last upload data
923
924 AT+CDP  : Read or Clear cached data
925
926
927 = 4. Battery & Power Consumption =
928
929
930 DDS20-NB use ER26500 + SPC1520 battery pack. See below link for detail information about the battery info and how to replace.
931
932 [[**Battery Info & Power Consumption Analyze**>>http://wiki.dragino.com/xwiki/bin/view/Main/How%20to%20calculate%20the%20battery%20life%20of%20Dragino%20sensors%3F/]] .
933
934
935 = 5. Firmware update =
936
937
938 User can change device firmware to:
939
940 * Update with new features.
941
942 * Fix bugs.
943
944 Firmware and changelog can be downloaded from : **[[Firmware download link>>https://www.dropbox.com/sh/nyzeu0lf0amcaek/AAC6UZrqyTcAyJgXOH7l9F9Ka?dl=0]]**
945
946 Methods to Update Firmware:
947
948 * (Recommended way) OTA firmware update via BLE: [[**Instruction**>>url:http://wiki.dragino.com/xwiki/bin/view/Main/BLE_Firmware_Update_NB_Sensors_BC660K-GL/]].
949
950 * Update through UART TTL interface : **[[Instruction>>http://wiki.dragino.com/xwiki/bin/view/Main/UART_Access_for_NB_ST_BC660K-GL/#H4.2UpdateFirmware28Assumethedevicealreadyhaveabootloader29]]**.
951
952 = 6. FAQ =
953
954 == 6.1 How can I access t BC660K-GL AT Commands? ==
955
956
957 User can access to BC660K-GL directly and send AT Commands.
958
959 [[See BC660K-GL AT Command set>>url:https://www.dropbox.com/sh/5f6ssda5fum8rvs/AABT68l8ZzWOvZ5eg2qwOoFda?dl=0]]
960
961
962 == 6.2 How to configure the certificate? ==
963
964
965 User can can refer to this [[description>>url:http://wiki.dragino.com/xwiki/bin/view/How%20to%20configure%20the%20certificate%3F/]] to configure the certificate.
966
967
968 = 7.  Trouble Shooting =
969
970 == 7.1  Why i always see 0x0000 or 0 for the distance value? ==
971
972
973 (((
974 DDS20-NB has a strict [[**installation requirement**>>||anchor="H1.5A0InstallDDS20-NB"]]. Please make sure the installation method exactly follows up with the installation requirement. Otherwise, the reading might be always 0x00.
975
976 If you have followed the instruction requirement exactly but still see the 0x00 reading issue, please. please double-check the decoder, you can check the raw payload to verify.
977
978
979 )))
980
981 = 8. Order Info =
982
983
984 Part Number: (% style="color:blue" %)**DDS20-NB-XX**
985
986 (% style="color:red" %)**XX**(%%):
987
988 * (% style="color:#037691" %)**GE**(%%): General version ( Exclude SIM card)
989
990 * (% style="color:#037691" %)**1T**(%%): with 1NCE * 10 years 500MB SIM card and Pre-configure to ThingsEye server
991
992 = 9. ​Packing Info =
993
994
995 (% style="color:#037691" %)**Package Includes**:
996
997 * DDS20-NB NB-IoT Ultrasonic liquid level sensor x 1
998
999 * External antenna x 1
1000
1001 (% style="color:#037691" %)**Dimension and weight**:
1002
1003 * Device Size: 13.0 x 5 x 4.5 cm
1004
1005 * Device Weight: 150g
1006
1007 * Package Size / pcs : 14.0 x 8x 5 cm
1008
1009 * Weight / pcs : 180g
1010
1011 = 10. Support =
1012
1013
1014 * 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.
1015
1016 * 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]].
1017
1018 (% style="display:none" %) (%%)