Version 170.1 by Edwin Chen on 2023/12/11 22:50

Hide last authors
Ellie Zhang 26.1 1 (% style="text-align:center" %)
Xiaoling 111.2 2 [[image:image-20231110085342-2.png||height="481" width="481"]]
Edwin Chen 1.1 3
4
Xiaoling 67.2 5
Xiaoling 75.2 6
7
8
9
Xiaoling 111.2 10
Xiaoling 126.3 11 **Table of Contents:(% style="display:none" %) (%%)**
Ellie Zhang 30.1 12
Edwin Chen 1.1 13 {{toc/}}
14
15
16
17
18
19
kai 31.1 20 = 1. Introduction =
Edwin Chen 1.1 21
Xiaoling 113.3 22 == 1.1 What is LoRaWAN Smart Distance Detector ==
Edwin Chen 1.1 23
Xiaoling 39.6 24
Edwin Chen 115.1 25 The Dragino (% style="color:blue" %)**DS20L is a smart distance detector**(%%) base on long-range wireless LoRaWAN technology. It uses (% style="color:blue" %)**LiDAR sensor**(%%) to detect the distance between DS20L and object, then DS20L will send the distance data to the IoT Platform via LoRaWAN. DS20L can measure range between 3cm ~~ 200cm.
Edwin Chen 1.1 26
Xiaoling 113.3 27 DS20L allows users to send data and reach extremely long ranges via LoRaWAN. It provides ultra-long range spread spectrum communication and high interference immunity whilst minimizing current 
28 consumption. It targets professional wireless sensor network applications such smart cities, building automation, and so on.
Edwin Chen 1.1 29
Xiaoling 113.3 30 DS20L has a (% style="color:blue" %)**built-in 2400mAh non-chargeable battery**(%%) for long-term use up to several years*. Users can also power DS20L with an external power source for (% style="color:blue" %)**continuous measuring and distance alarm / counting purposes.**
Edwin Chen 1.1 31
Xiaoling 113.3 32 DS20L is fully compatible with (% style="color:blue" %)**LoRaWAN v1.0.3 Class A protocol**(%%), it can work with a standard LoRaWAN gateway.
Xiaoling 62.4 33
Edwin Chen 1.1 34
Xiaoling 114.2 35 [[image:image-20231110102635-5.png||height="402" width="807"]]
Edwin Chen 1.1 36
Xiaoling 64.2 37
Edwin Chen 1.1 38 == 1.2 ​Features ==
39
Xiaoling 39.6 40
Xiaoling 113.4 41 * LoRaWAN Class A protocol
42 * LiDAR distance detector, range 3 ~~ 200cm
43 * Periodically detect or continuously detect mode
Xiaoling 70.5 44 * AT Commands to change parameters
Xiaoling 113.4 45 * Remotely configure parameters via LoRaWAN Downlink
46 * Alarm & Counting mode
47 * Firmware upgradable via program port or LoRa protocol
48 * Built-in 2400mAh battery or power by external power source
Edwin Chen 1.1 49
Edwin Chen 170.1 50
Edwin Chen 1.1 51 == 1.3 Specification ==
52
Xiaoling 113.5 53 (% style="color:#037691" %)**LiDAR Sensor:**
Xiaoling 70.6 54
Xiaoling 113.5 55 * Operation Temperature: -40 ~~ 80 °C
56 * Operation Humidity: 0~~99.9%RH (no Dew)
57 * Storage Temperature: -10 ~~ 45°C
Xiaoling 113.4 58 * Measure Range: 3cm~~200cm @ 90% reflectivity
59 * Accuracy: ±2cm @ (3cm~~100cm); ±5% @ (100~~200cm)
60 * ToF FoV: ±9°, Total 18°
61 * Light source: VCSEL
Xiaoling 82.3 62
Edwin Chen 170.1 63
Edwin Chen 115.1 64 == 1.4 Power Consumption ==
Xiaoling 114.2 65
Edwin Chen 115.1 66
Xiaoling 116.2 67 (% style="color:#037691" %)**Battery Power Mode:**
Edwin Chen 115.1 68
Edwin Chen 170.1 69 * Idle: 3uA @ 3.3v
kai 116.1 70 * Max : 360 mA
Edwin Chen 115.1 71
Xiaoling 116.2 72 (% style="color:#037691" %)**Continuously mode**:
Edwin Chen 115.1 73
kai 116.1 74 * Idle: 21 mA @ 3.3v
75 * Max : 360 mA
Edwin Chen 115.1 76
Edwin Chen 170.1 77
78 == 1.5 Use Case ==
79
80 (% class="mark" %)**Regular Distance Detect**
81
82 [[image:image-20231211220922-1.png||height="352" width="605"]]
83
84
85 (% class="mark" %)**Counting / Alarm**
86
87 [[image:image-20231211221253-2.png]]
88
89
90 [[image:image-20231211221436-3.png]]
91
92
Xiaoling 113.5 93 = 2. Configure DS20L to connect to LoRaWAN network =
Xiaoling 77.4 94
Edwin Chen 1.1 95 == 2.1 How it works ==
96
97
Xiaoling 113.6 98 The DS20L is configured as (% style="color:#037691" %)**LoRaWAN OTAA Class A**(%%) mode by default. It has OTAA keys to join LoRaWAN network. To connect a local LoRaWAN network, you need to input the OTAA keys in the LoRaWAN IoT server and press the button to activate the DS20L. It will automatically join the network via OTAA and start to send the sensor value. The default uplink interval is 20 minutes.
Edwin Chen 1.1 99
Xiaoling 64.2 100 (% style="display:none" %) (%%)
Edwin Chen 1.1 101
102 == 2.2 ​Quick guide to connect to LoRaWAN server (OTAA) ==
103
104
105 Following is an example for how to join the [[TTN v3 LoRaWAN Network>>url:https://console.cloud.thethings.network/]]. Below is the network structure; we use the [[LPS8v2>>url:https://www.dragino.com/products/lora-lorawan-gateway/item/228-lps8v2.html]] as a LoRaWAN gateway in this example.
106
Xiaoling 114.2 107 The LPS8v2 is already set to connected to [[TTN network >>url:https://console.cloud.thethings.network/]], so what we need to now is configure the TTN server.(% style="display:none" %)
Edwin Chen 1.1 108
Xiaoling 114.2 109 [[image:image-20231110102635-5.png||height="402" width="807"]](% style="display:none" %)
Edwin Chen 1.1 110
Mengting Qiu 140.1 111 === Step 1: Create a device in TTN with the OTAA keys from DS20L. ===
Edwin Chen 1.1 112
Xiaoling 113.6 113 Each DS20L is shipped with a sticker with the default device EUI as below:
Edwin Chen 1.1 114
Ellie Zhang 30.1 115 [[image:image-20230426084152-1.png||alt="图片-20230426084152-1.png" height="233" width="502"]]
Edwin Chen 1.1 116
117
Mengting Qiu 140.1 118 You can enter this key in the LoRaWAN Server portal. Below is TTN V3 screenshot:
Edwin Chen 1.1 119
120
121 (% style="color:blue" %)**Register the device**
122
Mengting Qiu 140.1 123 [[image:image-20231207144600-2.png||height="703" width="756"]]
Edwin Chen 1.1 124
125
Mengting Qiu 140.1 126 (% style="color:blue" %)**Add DevEUI and AppKey**
Edwin Chen 1.1 127
Mengting Qiu 140.1 128 [[image:image-20231207145121-5.png||height="540" width="756"]]
Edwin Chen 1.1 129
130
131
Edwin Chen 170.1 132 === Step 2: Activate DS20L ===
Edwin Chen 1.1 133
Xiaoling 118.2 134 [[image:image-20231128133704-1.png||height="189" width="441"]]
Edwin Chen 1.1 135
Xiaoling 113.6 136 Press the button for 5 seconds to activate the DS20L.
Edwin Chen 6.1 137
Mengting Qiu 159.1 138 The switch is switched to (% style="color:blue" %)**E** (%%)and the external power supply is used.
139
Edwin Chen 170.1 140 The switch is switched to (% style="color:blue" %)**I** (%%)and DS20L will be power by the built-in battery.
Mengting Qiu 159.1 141
Edwin Chen 1.1 142 (% style="color:green" %)**Green led**(%%) will fast blink 5 times, device will enter (% style="color:blue" %)**OTA mode**(%%) for 3 seconds. And then start to JOIN LoRaWAN network. (% style="color:green" %)**Green led**(%%) will solidly turn on for 5 seconds after joined in network.
143
144 After join success, it will start to upload messages to TTN and you can see the messages in the panel.
145
146
Mengting Qiu 140.1 147
Xiaoling 82.8 148 == 2.3 ​Uplink Payload ==
Edwin Chen 1.1 149
Saxer Lin 85.1 150 === 2.3.1 Device Status, FPORT~=5 ===
151
Xiaoling 90.2 152
Xiaoling 113.6 153 Users can use the downlink command(**0x26 01**) to ask DS20L to send device configure detail, include device configure status. DS20L will uplink a payload via FPort=5 to server.
Saxer Lin 85.1 154
155 The Payload format is as below.
156
Xiaoling 90.2 157 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
Xiaoling 90.11 158 |=(% style="width: 60px;background-color:#4F81BD;color:white" %)(((
Saxer Lin 85.1 159 **Size(bytes)**
Xiaoling 90.11 160 )))|=(% style="width: 100px; background-color: #4F81BD;color:white;" %)**1**|=(% style="width: 100px; background-color: #4F81BD;color:white;" %)**2**|=(% style="background-color: #4F81BD;color:white; width: 100px;" %)**1**|=(% style="background-color: #4F81BD;color:white; width: 100px;" %)**1**|=(% style="background-color: #4F81BD;color:white; width: 50px;" %)**2**
Saxer Lin 85.1 161 |(% style="width:62.5px" %)Value|(% style="width:110px" %)Sensor Model|(% style="width:48px" %)Firmware Version|(% style="width:94px" %)Frequency Band|(% style="width:91px" %)Sub-band|(% style="width:60px" %)BAT
162
163 Example parse in TTNv3
164
Mengting Qiu 130.2 165 [[image:image-20231206151412-3.png||height="179" width="1070"]]
Saxer Lin 93.1 166
Xiaoling 118.2 167 (% style="color:blue" %)**Sensor Model**(%%): For DS20L, this value is 0x21
Saxer Lin 85.1 168
Xiaoling 90.17 169 (% style="color:blue" %)**Firmware Version**(%%): 0x0100, Means: v1.0.0 version
Saxer Lin 85.1 170
Xiaoling 90.17 171 (% style="color:blue" %)**Frequency Band**:
Saxer Lin 85.1 172
173 0x01: EU868
174
175 0x02: US915
176
177 0x03: IN865
178
179 0x04: AU915
180
181 0x05: KZ865
182
183 0x06: RU864
184
185 0x07: AS923
186
187 0x08: AS923-1
188
189 0x09: AS923-2
190
191 0x0a: AS923-3
192
193 0x0b: CN470
194
195 0x0c: EU433
196
197 0x0d: KR920
198
199 0x0e: MA869
200
Xiaoling 90.17 201 (% style="color:blue" %)**Sub-Band**:
Saxer Lin 85.1 202
203 AU915 and US915:value 0x00 ~~ 0x08
204
205 CN470: value 0x0B ~~ 0x0C
206
207 Other Bands: Always 0x00
208
Xiaoling 90.17 209 (% style="color:blue" %)**Battery Info**:
Saxer Lin 85.1 210
211 Check the battery voltage.
212
213 Ex1: 0x0B45 = 2885mV
214
215 Ex2: 0x0B49 = 2889mV
216
217
Saxer Lin 89.1 218 === 2.3.2 Uplink Payload, FPORT~=2 ===
Saxer Lin 85.1 219
Xiaoling 90.2 220
Mengting Qiu 159.1 221 ==== (% style="color:red" %)**AT+MOD~=1**(%%) ====
Edwin Chen 1.1 222
Xiaoling 120.2 223 Regularly detect distance and report. When the distance exceeds the limit, the alarm flag is set to 1, and the report can be triggered by external interrupts.
Edwin Chen 1.1 224
Xiaoling 120.2 225 Uplink Payload totals 10 bytes.
Edwin Chen 1.1 226
Xiaoling 124.2 227 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
228 |(% style="background-color:#4f81bd; color:white; width:60px" %)**Size(bytes)**|(% style="background-color:#4f81bd; color:white; width:30px" %)**2**|(% style="background-color:#4f81bd; color:white; width:130px" %)**1**|(% style="background-color:#4f81bd; color:white; width:70px" %)**2**|(% style="background-color:#4f81bd; color:white; width:100px" %)**1**|(% style="background-color:#4f81bd; color:white; width:120px" %)**4**
229 |(% style="width:91px" %)Value|(% style="width:41px" %)BAT|(% style="width:176px" %)MOD+ Alarm+Interrupt|(% style="width:74px" %)Distance|(% style="width:100px" %)Sensor State|(% style="width:119px" %)Interrupt Count
Edwin Chen 1.1 230
Mengting Qiu 154.1 231 [[image:image-20231209152917-1.png||height="300" width="1172"]]
Edwin Chen 1.1 232
Xiaoling 124.2 233 (% style="color:blue" %)**Battery Info:**
Edwin Chen 1.1 234
Xiaoling 120.2 235 Check the battery voltage for DS20L
Edwin Chen 1.1 236
Xiaoling 120.2 237 Ex1: 0x0E10 = 3600mV
Xiaoling 67.7 238
Xiaoling 124.2 239
Xiaoling 120.8 240 (% style="color:blue" %)**MOD & Alarm & Interrupt:**
Xiaoling 67.7 241
Xiaoling 120.8 242 (% style="color:red" %)**MOD:**
Edwin Chen 1.1 243
Xiaoling 120.2 244 **Example: ** (0x60>>6) & 0x3f =1
Xiaoling 14.22 245
Xiaoling 120.2 246 **0x01:**  Regularly detect distance and report.
247 **0x02: ** Uninterrupted measurement (external power supply).
Edwin Chen 1.1 248
Xiaoling 120.8 249 (% style="color:red" %)**Alarm:**
Xiaoling 79.11 250
Xiaoling 120.2 251 When the detection distance exceeds the limit, the alarm flag is set to 1.
Xiaoling 67.7 252
Xiaoling 120.8 253 (% style="color:red" %)**Interrupt:**
Xiaoling 67.7 254
Xiaoling 120.2 255 Whether it is an external interrupt.
Edwin Chen 10.1 256
Edwin Chen 1.1 257
Xiaoling 124.2 258 (% style="color:blue" %)**Distance info:**
259
Xiaoling 82.4 260 **Example**:
261
Xiaoling 120.2 262 If payload is: 0708H: distance = 0708H = 1800 mm
Xiaoling 82.4 263
264
Xiaoling 124.2 265 (% style="color:blue" %)**Sensor State:**
266
Xiaoling 120.2 267 Ex1: 0x00: Normal collection distance
Xiaoling 82.4 268
Edwin Chen 170.1 269 Ex2: 0x0x: Distance collection is wrong
Xiaoling 82.4 270
271
Edwin Chen 170.1 272 (% style="color:blue" %)**Interrupt Count:**
Xiaoling 124.2 273
Xiaoling 120.2 274 If payload is:000007D0H: count = 07D0H =2000
Xiaoling 82.4 275
276
Xiaoling 120.8 277
Mengting Qiu 159.1 278 ==== (% style="color:red" %)**AT+MOD~=2**(%%)** ** ====
Xiaoling 120.8 279
Xiaoling 82.4 280
Mengting Qiu 159.1 281 The power consumption of uninterrupted measurement is high, and the device needs to use external power supply.(The switch is switched to E and the external power supply is used.)
282
283 [[image:image-20231128133704-1.png||height="189" width="441"]]
284
285
286 * **Set over-limit alarm mode: AT+DOL=3,500,244,**(% style="color:red" %)0(%%)**,120**
287
288 (% class="wikigeneratedid" id="HUninterruptedmeasurement.Whenthedistanceexceedsthelimit2CtheoutputIOissethighandreportsarereportedeveryfiveminutes.Thetimecanbesetandpoweredbyanexternalpowersupply.UplinkPayloadtotals11bytes." %)
289 Uninterrupted measurement. When the distance exceeds the limit, the output IO high, instant alarm. Uplink Payload totals 9 bytes.
290
Xiaoling 124.2 291 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
Mengting Qiu 159.1 292 |(% style="background-color:#4f81bd; color:white; width:70px" %)**Size(bytes)**|(% style="background-color:#4f81bd; color:white; width:40px" %)**2**|(% style="background-color:#4f81bd; color:white; width:130px" %)**1**|(% style="background-color:#4f81bd; color:white; width:130px" %)**2**|(% style="background-color:#4f81bd; color:white; width:70px" %)**2**|(% style="background-color:#4f81bd; color:white; width:70px" %)**2**
Edwin Chen 170.1 293 |(% style="width:91px" %)Value|(% style="width:41px" %)BAT|(% style="width:176px" %)MOD+Alarm+DO+Limit flag|(% style="width:74px" %)Distance |(% style="width:100px" %)Upper limit|(% style="width:119px" %)Lower limit
Xiaoling 82.4 294
Mengting Qiu 159.1 295 [[image:image-20231209171127-3.png||height="374" width="1209"]]
Xiaoling 82.4 296
Xiaoling 120.8 297 (% style="color:blue" %)**MOD & Alarm & Do & Limit flag:**
Saxer Lin 104.1 298
Xiaoling 120.8 299 (% style="color:red" %)**MOD:**
Saxer Lin 104.1 300
Xiaoling 120.2 301 **Example: ** (0x60>>6) & 0x3f =1
Saxer Lin 104.1 302
Xiaoling 120.2 303 **0x01:**  Regularly detect distance and report.
304 **0x02: ** Uninterrupted measurement (external power supply).
Saxer Lin 104.1 305
Xiaoling 120.8 306 (% style="color:red" %)**Alarm:**
Saxer Lin 104.1 307
Xiaoling 120.2 308 When the detection distance exceeds the limit, the alarm flag is set to 1.
Saxer Lin 104.1 309
Edwin Chen 170.1 310 (% style="color:red" %)**DO:**
Saxer Lin 104.1 311
Xiaoling 120.2 312 When the distance exceeds the set threshold, pull the Do pin high.
Saxer Lin 104.1 313
Xiaoling 120.8 314 (% style="color:red" %)**Limit flag:**
Xiaoling 82.4 315
Mengting Qiu 152.1 316 Mode for setting threshold: **0~~3**
Xiaoling 82.4 317
Xiaoling 125.6 318 **0:** does not use upper and lower limits
Xiaoling 82.4 319
Xiaoling 125.6 320 **1:** Use upper and lower limits
Xiaoling 82.4 321
Mengting Qiu 152.1 322 **2:** Less than the upper limit
Edwin Chen 1.1 323
Mengting Qiu 152.1 324 **3: **Greater than the lower limit
Edwin Chen 1.1 325
326
Mengting Qiu 159.1 327 (% style="color:blue" %)**Distance:**
328
329 Actual sampling distance values.
330
Mengting Qiu 164.1 331 **Example:**
Mengting Qiu 159.1 332
Mengting Qiu 164.1 333 **AT+DOL=1,500,244,**(% style="color:red" %)0(%%)**,120  **
334
335 The distance is detected every 120ms.
336
337 When the actual detection value is within the range of [244mm,500mm], the data is uploaded in the normal TDC time.
338
339 When the actual detection value is outside the range of [244mm,500mm], the uplink data will be immediately alerted.
340
341 If payload is: 0708H: distance = 0708H = 1800 mm
342
343
Xiaoling 120.8 344 (% style="color:blue" %)**Upper limit:**
345
Xiaoling 120.2 346 The upper limit of the threshold cannot exceed 2000mm.
Edwin Chen 1.1 347
Xiaoling 124.2 348
Xiaoling 120.8 349 (% style="color:blue" %)**Lower limit:**
Edwin Chen 1.1 350
Xiaoling 120.2 351 The lower limit of the threshold cannot be less than 3mm.
Edwin Chen 1.1 352
Xiaoling 39.5 353
Mengting Qiu 159.1 354 * **Set the person or object count mode: AT+DOL=1,500,244,**(% style="color:red" %)1(%%)**,120**
355
Mengting Qiu 163.1 356 Continuous measurement, detect and count people or things passing by in distance limit mode. Uplink Payload totals 11 bytes.
Mengting Qiu 159.1 357
Mengting Qiu 159.2 358 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:600px" %)
359 |(% style="background-color:#4f81bd; color:white; width:70px" %)**Size(bytes)**|(% style="background-color:#4f81bd; color:white; width:40px" %)**2**|(% style="background-color:#4f81bd; color:white; width:130px" %)**1**|(% style="background-color:#4f81bd; color:white; width:130px" %)**4**|(% style="background-color:#4f81bd; color:white; width:70px" %)**2**|(% style="background-color:#4f81bd; color:white; width:70px" %)**2**
Mengting Qiu 164.1 360 |(% style="width:91px" %)Value|(% style="width:41px" %)BAT|(% style="width:176px" %)MOD+Alarm+Do+Limit flag|(% style="width:176px" %)Distance limit alarm count|(% style="width:100px" %)Upper limit|(% style="width:119px" %)Lower limit
Mengting Qiu 159.2 361
Mengting Qiu 159.1 362 [[image:image-20231209173457-5.png||height="277" width="1098"]]
363
Mengting Qiu 164.1 364 (% style="color:blue" %)**MOD & Alarm & Do & Limit flag:**
Mengting Qiu 159.1 365
Mengting Qiu 164.1 366 (% style="color:red" %)**MOD:**
Mengting Qiu 159.1 367
Mengting Qiu 164.1 368 **Example: ** (0x60>>6) & 0x3f =1
Mengting Qiu 159.1 369
Mengting Qiu 164.1 370 **0x01:**  Regularly detect distance and report.
371 **0x02: ** Uninterrupted measurement (external power supply).
372
373 (% style="color:red" %)**Alarm:**
374
375 When the detection distance exceeds the limit, the alarm flag is set to 1.
376
377 (% style="color:red" %)**Do:**
378
379 When the distance exceeds the set threshold, pull the Do pin high.
380
381 (% style="color:red" %)**Limit flag:**
382
383 Mode for setting threshold: **0~~3**
384
385 **0:** does not use upper and lower limits
386
387 **1:** Use upper and lower limits
388
389 **2:** Less than the upper limit
390
391 **3: **Greater than the lower limit
392
393
394 (% style="color:blue" %)**Distance limit alarm count:**
395
396 People or objects are collected and counted within a limited distance.
397
398 The detection of a stationary person or object at each sampling time will be repeated three times, and the fourth sampling count will be added by 1.
399
400 **Example:**
401
402 **AT+DOL=1,500,244,**(% style="color:red" %)1(%%)**,120   **
403
404 People or objects passing within the distance range of [244mm,500mm] are detected and counted every 120ms.
405
406 If payload is: 0x56H, interrupt count =0x56H =86
407
408
409 (% style="color:blue" %)**Upper limit:**
410
411 The upper limit of the threshold cannot exceed 2000mm.
412
413
414 (% style="color:blue" %)**Lower limit:**
415
416 The lower limit of the threshold cannot be less than 3mm.
417
418
Xiaoling 125.8 419 == 2.4 Decode payload in The Things Network ==
Saxer Lin 97.1 420
Saxer Lin 99.1 421
Xiaoling 70.10 422 While using TTN network, you can add the payload format to decode the payload.
Edwin Chen 1.1 423
Mengting Qiu 130.2 424 [[image:image-20231206143515-1.png||height="534" width="759"]]
Edwin Chen 1.1 425
426
Xiaoling 62.5 427 (((
Xiaoling 82.4 428 The payload decoder function for TTN is here:
Xiaoling 62.5 429 )))
Edwin Chen 1.1 430
Xiaoling 82.4 431 (((
Xiaoling 113.6 432 DS20L TTN Payload Decoder:  [[https:~~/~~/github.com/dragino/dragino-end-node-decoder>>https://github.com/dragino/dragino-end-node-decoder]]
Xiaoling 82.4 433 )))
Edwin Chen 1.1 434
Xiaoling 82.4 435
Xiaoling 125.8 436 == 2.5 ​Show Data in DataCake IoT Server ==
Edwin Chen 1.1 437
438
Xiaoling 62.5 439 (((
Edwin Chen 170.1 440 [[DATACAKE>>url:https://datacake.co/]] provides a human friendly interface to show the sensor data, onhuman-friendlya in TTN, we can use [[DATACAKE>>url:https://datacake.co/]] to connect to TTN and see the data in DATACAKE. Below are the steps:
Xiaoling 62.5 441 )))
Edwin Chen 1.1 442
443
Xiaoling 62.5 444 (((
Xiaoling 70.10 445 (% style="color:blue" %)**Step 1**(%%)**: Be sure that your device is programmed and properly connected to the network at this time.**
Xiaoling 62.5 446 )))
Edwin Chen 1.1 447
Xiaoling 62.5 448 (((
Xiaoling 70.10 449 (% style="color:blue" %)**Step 2**(%%)**: To configure the Application to forward data to DATACAKE you will need to add integration. To add the DATACAKE integration, perform the following steps:**
Xiaoling 62.5 450 )))
Xiaoling 14.26 451
Saxer Lin 55.1 452
Mengting Qiu 148.1 453 [[image:image-20231207153532-6.png||height="562" width="861"]]
Edwin Chen 1.1 454
455
Mengting Qiu 148.1 456 [[image:image-20231207155940-8.png]]
Edwin Chen 1.1 457
Mengting Qiu 148.1 458 For more detailed instructions, refer to the following instructions: [[Welcome - Datacake Docs>>url:https://docs.datacake.de/]]
Edwin Chen 1.1 459
Mengting Qiu 148.1 460 [[image:image-20231207160733-11.png||height="429" width="759"]]
461
462
Xiaoling 70.10 463 (% style="color:blue" %)**Step 3**(%%)**: Create an account or log in Datacake.**
Edwin Chen 1.1 464
Xiaoling 113.6 465 (% style="color:blue" %)**Step 4**(%%)**: Search the DS20L and add DevEUI.**
Edwin Chen 1.1 466
Mengting Qiu 148.1 467 [[image:image-20231207160343-10.png||height="665" width="705"]]
Xiaoling 62.5 468
Edwin Chen 1.1 469
Xiaoling 70.10 470 After added, the sensor data arrive TTN V3, it will also arrive and show in Datacake.
Edwin Chen 1.1 471
Xiaoling 126.2 472 [[image:image-20231129100454-2.png||height="501" width="928"]]
Edwin Chen 1.1 473
474
Xiaoling 125.8 475 == 2.6 Frequency Plans ==
Edwin Chen 1.1 476
477
Xiaoling 113.7 478 The DS20L uses OTAA mode and below frequency plans by default. If user want to use it with different frequency plan, please refer the AT command sets.
Edwin Chen 1.1 479
480 [[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/>>http://wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/]]
481
482
Xiaoling 118.2 483 = 3. Configure DS20L =
Xiaoling 82.4 484
kai 16.4 485 == 3.1 Configure Methods ==
Edwin Chen 1.1 486
487
Xiaoling 113.7 488 DS20L supports below configure method:
Edwin Chen 1.1 489
490 * AT Command via Bluetooth Connection (**Recommended**): [[BLE Configure Instruction>>http://wiki.dragino.com/xwiki/bin/view/Main/BLE%20Bluetooth%20Remote%20Configure/]].
Xiaoling 67.20 491
Edwin Chen 11.1 492 * 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]].
Xiaoling 67.20 493
Edwin Chen 1.1 494 * LoRaWAN Downlink.  Instruction for different platforms: See [[IoT LoRaWAN Server>>http://wiki.dragino.com/xwiki/bin/view/Main/]] section.
495
496 == 3.2 General Commands ==
497
498
499 These commands are to configure:
500
501 * General system settings like: uplink interval.
Xiaoling 67.20 502
Edwin Chen 1.1 503 * LoRaWAN protocol & radio related command.
504
505 They are same for all Dragino Devices which support DLWS-005 LoRaWAN Stack. These commands can be found on the wiki:
506
507 [[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20AT%20Commands%20and%20Downlink%20Command/>>http://wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20AT%20Commands%20and%20Downlink%20Command/]]
508
509
Xiaoling 113.7 510 == 3.3 Commands special design for DS20L ==
Edwin Chen 1.1 511
512
Edwin Chen 170.1 513 Below commands only valid for DS20L, as below:
Edwin Chen 1.1 514
515
516 === 3.3.1 Set Transmit Interval Time ===
517
518
Xiaoling 62.5 519 (((
Edwin Chen 1.1 520 Feature: Change LoRaWAN End Node Transmit Interval.
Xiaoling 62.5 521 )))
522
523 (((
Edwin Chen 1.1 524 (% style="color:blue" %)**AT Command: AT+TDC**
Xiaoling 62.5 525 )))
Edwin Chen 1.1 526
Xiaoling 14.34 527 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
Xiaoling 82.16 528 |=(% style="width: 156px;background-color:#4F81BD;color:white" %)**Command Example**|=(% style="width: 137px;background-color:#4F81BD;color:white" %)**Function**|=(% style="background-color:#4F81BD;color:white" %)**Response**
Edwin Chen 1.1 529 |(% style="width:156px" %)AT+TDC=?|(% style="width:137px" %)Show current transmit Interval|(((
530 30000
531 OK
532 the interval is 30000ms = 30s
533 )))
534 |(% style="width:156px" %)AT+TDC=60000|(% style="width:137px" %)Set Transmit Interval|(((
535 OK
536 Set transmit interval to 60000ms = 60 seconds
537 )))
538
Xiaoling 62.5 539 (((
Edwin Chen 1.1 540 (% style="color:blue" %)**Downlink Command: 0x01**
Xiaoling 62.5 541 )))
Edwin Chen 1.1 542
Xiaoling 62.5 543 (((
Edwin Chen 1.1 544 Format: Command Code (0x01) followed by 3 bytes time value.
Xiaoling 62.5 545 )))
Edwin Chen 1.1 546
Xiaoling 62.5 547 (((
Edwin Chen 1.1 548 If the downlink payload=0100003C, it means set the END Node's Transmit Interval to 0x00003C=60(S), while type code is 01.
Xiaoling 62.5 549 )))
Edwin Chen 1.1 550
Xiaoling 62.5 551 * (((
552 Example 1: Downlink Payload: 0100001E  ~/~/ Set Transmit Interval (TDC) = 30 seconds
553 )))
554 * (((
Xiaoling 118.2 555 Example 2: Downlink Payload: 0100003C  ~/~/ Set Transmit Interval (TDC) = 60 seconds
Xiaoling 124.4 556
557
558
Xiaoling 118.2 559 )))
Xiaoling 82.22 560
Xiaoling 70.11 561 === 3.3.2 Set Interrupt Mode ===
Xiaoling 62.5 562
563
Saxer Lin 109.1 564 Feature, Set Interrupt mode for pin of GPIO_EXTI.
Edwin Chen 1.1 565
Saxer Lin 107.1 566 When AT+INTMOD=0 is set, GPIO_EXTI is used as a digital input port.
Saxer Lin 46.1 567
Edwin Chen 1.1 568 (% style="color:blue" %)**AT Command: AT+INTMOD**
569
Xiaoling 14.34 570 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
Xiaoling 82.16 571 |=(% style="width: 155px;background-color:#4F81BD;color:white" %)**Command Example**|=(% style="width: 197px;background-color:#4F81BD;color:white" %)**Function**|=(% style="width: 158px;background-color:#4F81BD;color:white" %)**Response**
Edwin Chen 1.1 572 |(% style="width:154px" %)AT+INTMOD=?|(% style="width:196px" %)Show current interrupt mode|(% style="width:157px" %)(((
573 0
574 OK
575 the mode is 0 =Disable Interrupt
576 )))
Saxer Lin 107.1 577 |(% style="width:154px" %)(((
Xiaoling 118.2 578 AT+INTMOD=3
Saxer Lin 107.1 579
580 (default)
581 )))|(% style="width:196px" %)(((
Edwin Chen 1.1 582 Set Transmit Interval
583 0. (Disable Interrupt),
584 ~1. (Trigger by rising and falling edge)
585 2. (Trigger by falling edge)
586 3. (Trigger by rising edge)
587 )))|(% style="width:157px" %)OK
588
589 (% style="color:blue" %)**Downlink Command: 0x06**
590
591 Format: Command Code (0x06) followed by 3 bytes.
592
593 This means that the interrupt mode of the end node is set to 0x000003=3 (rising edge trigger), and the type code is 06.
594
595 * Example 1: Downlink Payload: 06000000  ~/~/  Turn off interrupt mode
Xiaoling 62.6 596
Edwin Chen 1.1 597 * Example 2: Downlink Payload: 06000003  ~/~/  Set the interrupt mode to rising edge trigger
598
Edwin Chen 170.1 599
Xiaoling 125.4 600 === 3.3.3 Set work mode ===
Xiaoling 118.2 601
602
603 Feature: Switch working mode
604
605 (% style="color:blue" %)**AT Command: AT+MOD**
606
Xiaoling 118.12 607 (% border="1" cellspacing="5" style="background-color:#f2f2f2; width:510px" %)
608 |=(% style="width: 162px;background-color:#4F81BD;color:white" %)**Command Example**|=(% style="width: 193px;background-color:#4F81BD;color:white" %)**Function**|=(% style="width: 155px;background-color:#4F81BD;color:white" %)**Response**
Xiaoling 118.2 609 |(% style="width:162px" %)AT+MOD=?|(% style="width:191px" %)Get the current working mode.|(% style="width:106px" %)OK
610 |(% style="width:162px" %)AT+MOD=1|(% style="width:191px" %)Set the working mode to Regular measurements.|(% style="width:106px" %)(((
611 OK
612 Attention:Take effect after ATZ
613 )))
614
615 (% style="color:blue" %)**Downlink Command:**
616
Mengting Qiu 130.2 617 * **Example: **0x0A01 ~/~/  Same as AT+MOD=1
Xiaoling 118.2 618
Mengting Qiu 130.2 619 * **Example:** 0x0A02  ~/~/  Same as AT+MOD=2
Xiaoling 118.2 620
Edwin Chen 170.1 621
Xiaoling 118.2 622 === 3.3.4 Set threshold and threshold mode ===
623
624
625 Feature, Set threshold and threshold mode
626
Xiaoling 118.9 627 When (% style="color:#037691" %)**AT+DOL=0,0,0,0,400**(%%) is set, No threshold is used, the sampling time is 400ms.
Xiaoling 118.2 628
Xiaoling 118.3 629 (% style="color:blue" %)**AT Command: AT+DOL**
Xiaoling 118.2 630
Xiaoling 118.17 631 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
632 |(% style="background-color:#4f81bd; color:white; width:162px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:240px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:108px" %)**Response**
Xiaoling 118.2 633 |(% style="width:172px" %)AT+ DOL =?|(% style="width:279px" %)Get the current threshold mode and sampling time|(% style="width:118px" %)(((
634 0,0,0,0,400
635 OK
636 )))
637 |(% style="width:172px" %)AT+ DOL =1,1800,100,0,400|(% style="width:279px" %)Set only the upper and lower thresholds|(% style="width:118px" %)OK
638
Mengting Qiu 166.1 639 (% border="1" cellspacing="5" style="background-color:#f2f2f2; width:510px" %)
640 |=(% style="width: 162px;background-color:#4F81BD;color:white" %)**Command Example**|=(% style="width: 193px;background-color:#4F81BD;color:white" %)**Function**|=(% style="width: 155px;background-color:#4F81BD;color:white" %) Parameter
Xiaoling 125.4 641 |(% rowspan="11" style="color:blue; width:120px" %)(((
Xiaoling 118.2 642
643
Xiaoling 125.3 644
645
646
647
648
649
650
Xiaoling 125.4 651
652
Mengting Qiu 165.1 653 **AT+DOL=1,1800,3,0,400**
Mengting Qiu 150.1 654 )))|(% rowspan="4" style="width:240px" %)(((
Mengting Qiu 130.2 655
Xiaoling 125.10 656
657
658
Mengting Qiu 130.2 659 The first bit sets the limit mode
660 )))|(% style="width:150px" %)0: Do not use upper and lower limits
Xiaoling 125.3 661 |(% style="width:251px" %)1: Use upper and lower limits
Mengting Qiu 150.1 662 |(% style="width:251px" %)2:Less than the upper limit
Xiaoling 125.3 663 |(% style="width:251px" %)3: Greater than the lower limit
664 |(% style="width:226px" %)The second bit sets the upper limit value|(% style="width:251px" %)3~~2000MM
665 |(% style="width:226px" %)The third bit sets the lower limit value|(% style="width:251px" %)3~~2000MM
666 |(% rowspan="2" style="width:226px" %)The fourth bit sets the over-limit alarm or person or object count.|(% style="width:251px" %)0 Over-limit alarm, DO output is high
667 |(% style="width:251px" %)1 Person or object counting statistics
668 |(% style="width:226px" %)The fifth bit sets the sampling time|(% style="width:251px" %)(((
Mengting Qiu 154.1 669 100~~10000ms
Xiaoling 125.3 670
671
672 )))
673
Xiaoling 118.3 674 (% style="color:blue" %)**Downlink Command: 0x07**
Xiaoling 118.2 675
Mengting Qiu 131.1 676 Format: Command Code (0x07) followed by 9 bytes.
Xiaoling 118.2 677
Mengting Qiu 131.1 678 If the downlink payload=**07 01 0708 0064 00 0190**, it means set the END Node's limit mode to 0x01,upper limit value to 0x0708=1800(mm), lower limit value to 0x0064=100(mm), to over-limit alarm(0x00) ,the sampling time to 0x0190=400(ms), while type code is 0x07.
Xiaoling 118.3 679
Mengting Qiu 131.1 680 * Example 0: Downlink Payload: 07 00 0000 0000 00 0190  **~-~-->**  AT+MOD=0,0,0,0,400
681
Xiaoling 118.2 682 * Example 1: Downlink Payload: 070107080064000190  **~-~-->**  AT+MOD=1,1800,100,0,400
683
Mengting Qiu 166.1 684 * Example 2: Downlink Payload: 070200000064000190  **~-~-->**  AT+MOD=2,1800,100,0,400
Xiaoling 118.3 685
Mengting Qiu 151.1 686 * Example 3: Downlink Payload: 070300000064000190  **~-~-->**  AT+MOD=3,0,100,0,400
Xiaoling 124.3 687
Mengting Qiu 165.1 688 (% style="color:Red" %)**Note: The over-limit alarm is applied to MOD1 and MOD2.**
Mengting Qiu 163.1 689
Mengting Qiu 165.1 690 **For example:**
691
Mengting Qiu 163.1 692 * **AT+MOD=1**
693
Mengting Qiu 165.1 694 **AT+DOL=1,500,244,**(% style="color:blue" %)0(%%)**,300**
Mengting Qiu 163.1 695
Mengting Qiu 164.1 696 Send data according to the normal TDC time. If the mode limit is exceeded, the alarm flag is set to 1:
Mengting Qiu 163.1 697
698 [[image:image-20231211113204-2.png||height="292" width="1093"]]
699
700 * **AT+MOD=2  **
701
702 **AT+DOL=1,500,244,**(% style="color:blue" %)0(%%)**,300**
703
Mengting Qiu 164.1 704 If the mode limit is exceeded, the data is immediately uplink and the alarm flag is set to 1:
Mengting Qiu 163.1 705
706 [[image:image-20231211114932-3.png||height="277" width="1248"]]
707
708
709
710
711
kai 16.4 712 = 4. Battery & Power Consumption =
Xiaoling 14.45 713
Edwin Chen 1.1 714
Xiaoling 113.7 715 DS20L use built-in 2400mAh non-chargeable battery for long-term use up to several years*. See below link for detail information about the battery info and how to replace.
Edwin Chen 1.1 716
717 [[**Battery Info & Power Consumption Analyze**>>http://wiki.dragino.com/xwiki/bin/view/Main/How%20to%20calculate%20the%20battery%20life%20of%20Dragino%20sensors%3F/]] .
718
719
kai 16.4 720 = 5. OTA Firmware update =
Edwin Chen 1.1 721
722
Edwin Chen 13.1 723 (% class="wikigeneratedid" %)
Xiaoling 113.7 724 User can change firmware DS20L to:
Edwin Chen 1.1 725
Edwin Chen 13.1 726 * Change Frequency band/ region.
Xiaoling 62.7 727
Edwin Chen 13.1 728 * Update with new features.
Xiaoling 62.7 729
Edwin Chen 13.1 730 * Fix bugs.
Edwin Chen 1.1 731
Xiaoling 113.6 732 Firmware and changelog can be downloaded from : **[[Firmware download link>>https://www.dropbox.com/sh/zqv1vt3komgp4tu/AAC33PnXIcWOVl_UXBEAeT_xa?dl=0]]**
Edwin Chen 1.1 733
kai 31.1 734 Methods to Update Firmware:
Edwin Chen 1.1 735
Xiaoling 79.15 736 * (Recommanded way) OTA firmware update via wireless:  **[[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/Firmware%20OTA%20Update%20for%20Sensors/>>url:http://wiki.dragino.com/xwiki/bin/view/Main/Firmware%20OTA%20Update%20for%20Sensors/]]**
Xiaoling 62.7 737
Xiaoling 70.18 738 * 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]]**.
Edwin Chen 1.1 739
Edwin Chen 170.1 740
kai 31.1 741 = 6. FAQ =
Edwin Chen 1.1 742
Xiaoling 113.8 743 == 6.1 What is the frequency plan for DS20L? ==
Edwin Chen 1.1 744
Xiaoling 62.7 745
Xiaoling 113.8 746 DS20L use the same frequency as other Dragino products. User can see the detail from this link:  [[Introduction>>doc:Main.End Device Frequency Band.WebHome||anchor="H1.Introduction"]]
Xiaoling 62.7 747
Edwin Chen 1.1 748
Xiaoling 124.2 749 == 6.2 DS20L programming line ==
750
751
752 缺图 后续补上
753
754 feature:
755
756 for AT commands
757
758 Update the firmware of DS20L
759
760 Support interrupt mode
761
762
763 == 6.3 LiDAR probe position ==
764
765
766 [[image:1701155390576-216.png||height="285" width="307"]]
767
768 The black oval hole in the picture is the LiDAR probe.
769
770
771 == 6.4 Interface definition ==
772
773 [[image:image-20231128151132-2.png||height="305" width="557"]]
774
775
Xiaoling 80.4 776 = 7. Trouble Shooting =
Edwin Chen 1.1 777
Xiaoling 80.4 778 == 7.1 AT Command input doesn't work ==
Edwin Chen 1.1 779
Xiaoling 70.14 780
Xiaoling 80.4 781 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:blue" %)**ENTER**(%%) while sending out the command. Some serial tool doesn't send (% style="color:blue" %)**ENTER**(%%) while press the send key, user need to add ENTER in their string.
Xiaoling 70.14 782
783
Xiaoling 80.4 784 == 7.2 Significant error between the output distant value of LiDAR and actual distance ==
Xiaoling 70.14 785
786
Xiaoling 80.4 787 (((
Xiaoling 82.21 788 (% style="color:blue" %)**Cause ①**(%%)**:**Due to the physical principles of The LiDAR probe, the above phenomenon is likely to occur if the detection object is the material with high reflectivity (such as mirror, smooth floor tile, etc.) or transparent substance. (such as glass and water, etc.)
Xiaoling 80.4 789 )))
Xiaoling 70.14 790
Xiaoling 80.4 791 (((
Xiaoling 82.21 792 (% style="color:red" %)**Troubleshooting**(%%): Please avoid use of this product under such circumstance in practice.
Xiaoling 80.4 793 )))
Xiaoling 70.14 794
795
Xiaoling 80.4 796 (((
797 (% style="color:blue" %)**Cause ②**(%%)**: **The IR-pass filters are blocked.
798 )))
Xiaoling 70.14 799
Xiaoling 79.7 800 (((
Xiaoling 82.21 801 (% style="color:red" %)**Troubleshooting**(%%): please use dry dust-free cloth to gently remove the foreign matter.
Xiaoling 79.7 802 )))
Xiaoling 70.14 803
804
805 = 8. Order Info =
806
807
Xiaoling 113.5 808 Part Number: (% style="color:blue" %)**DS20L-XXX**
Xiaoling 70.14 809
Xiaoling 70.12 810 (% style="color:red" %)**XXX**(%%): **The default frequency band**
Edwin Chen 1.1 811
Ellie Zhang 38.1 812 * (% style="color:red" %)**AS923**(%%): LoRaWAN AS923 band
Edwin Chen 1.1 813
Ellie Zhang 38.1 814 * (% style="color:red" %)**AU915**(%%): LoRaWAN AU915 band
Edwin Chen 1.1 815
Ellie Zhang 38.1 816 * (% style="color:red" %)**EU433**(%%): LoRaWAN EU433 band
Edwin Chen 1.1 817
Ellie Zhang 38.1 818 * (% style="color:red" %)**EU868**(%%): LoRaWAN EU868 band
Edwin Chen 1.1 819
Ellie Zhang 38.1 820 * (% style="color:red" %)**KR920**(%%): LoRaWAN KR920 band
Edwin Chen 1.1 821
Ellie Zhang 38.1 822 * (% style="color:red" %)**US915**(%%): LoRaWAN US915 band
Edwin Chen 1.1 823
Ellie Zhang 38.1 824 * (% style="color:red" %)**IN865**(%%): LoRaWAN IN865 band
Edwin Chen 1.1 825
Ellie Zhang 38.1 826 * (% style="color:red" %)**CN470**(%%): LoRaWAN CN470 band
Edwin Chen 1.1 827
Xiaoling 70.14 828 = 9. ​Packing Info =
Xiaoling 67.11 829
830
Ellie Zhang 39.1 831 (% style="color:#037691" %)**Package Includes**:
Edwin Chen 1.1 832
Xiaoling 113.5 833 * DS20L LoRaWAN Smart Distance Detector x 1
Edwin Chen 1.1 834
Ellie Zhang 39.1 835 (% style="color:#037691" %)**Dimension and weight**:
Edwin Chen 1.1 836
kai 31.1 837 * Device Size: cm
Edwin Chen 1.1 838
kai 31.1 839 * Device Weight: g
Edwin Chen 1.1 840
kai 31.1 841 * Package Size / pcs : cm
Edwin Chen 1.1 842
kai 31.1 843 * Weight / pcs : g
Edwin Chen 1.1 844
Xiaoling 70.14 845 = 10. Support =
846
847
kai 31.1 848 * 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.
Xiaoling 39.6 849
850 * 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]].