Last modified by Mengting Qiu on 2023/12/14 11:15

From version 120.3
edited by Xiaoling
on 2023/11/28 14:43
Change comment: There is no comment for this version
To version 171.1
edited by Mengting Qiu
on 2023/12/12 11:11
Change comment: There is no comment for this version

Summary

Details

Page properties
Author
... ... @@ -1,1 +1,1 @@
1 -XWiki.Xiaoling
1 +XWiki.ting
Content
... ... @@ -8,7 +8,7 @@
8 8  
9 9  
10 10  
11 -**Table of Contents**
11 +**Table of Contents:(% style="display:none" %) (%%)**
12 12  
13 13  {{toc/}}
14 14  
... ... @@ -49,7 +49,6 @@
49 49  
50 50  == 1.3 Specification ==
51 51  
52 -
53 53  (% style="color:#037691" %)**LiDAR Sensor:**
54 54  
55 55  * Operation Temperature: -40 ~~ 80 °C
... ... @@ -65,7 +65,7 @@
65 65  
66 66  (% style="color:#037691" %)**Battery Power Mode:**
67 67  
68 -* Idle: 0.003 mA @ 3.3v
67 +* Idle: 3uA @ 3.3v
69 69  * Max : 360 mA
70 70  
71 71  (% style="color:#037691" %)**Continuously mode**:
... ... @@ -73,6 +73,21 @@
73 73  * Idle: 21 mA @ 3.3v
74 74  * Max : 360 mA
75 75  
75 +== 1.5 Use Case ==
76 +
77 +(% class="mark" %)**Regular Distance Detect**
78 +
79 +[[image:image-20231211220922-1.png||height="352" width="605"]]
80 +
81 +
82 +(% class="mark" %)**Counting / Alarm**
83 +
84 +[[image:image-20231211221253-2.png]]
85 +
86 +
87 +[[image:image-20231211221436-3.png]]
88 +
89 +
76 76  = 2. Configure DS20L to connect to LoRaWAN network =
77 77  
78 78  == 2.1 How it works ==
... ... @@ -91,7 +91,7 @@
91 91  
92 92  [[image:image-20231110102635-5.png||height="402" width="807"]](% style="display:none" %)
93 93  
94 -(% style="color:blue" %)**Step 1:**(%%) Create a device in TTN with the OTAA keys from DS20L.
108 +=== Step 1: Create a device in TTN with the OTAA keys from DS20L. ===
95 95  
96 96  Each DS20L is shipped with a sticker with the default device EUI as below:
97 97  
... ... @@ -98,41 +98,36 @@
98 98  [[image:image-20230426084152-1.png||alt="图片-20230426084152-1.png" height="233" width="502"]]
99 99  
100 100  
101 -You can enter this key in the LoRaWAN Server portal. Below is TTN screen shot:
115 +You can enter this key in the LoRaWAN Server portal. Below is TTN V3 screenshot:
102 102  
103 103  
104 104  (% style="color:blue" %)**Register the device**
105 105  
106 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50v2-S31-S31B%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20User%20Manual/WebHome/1654935135620-998.png?rev=1.1||alt="1654935135620-998.png"]]
120 +[[image:image-20231207144600-2.png||height="703" width="756"]]
107 107  
108 108  
109 -(% style="color:blue" %)**Add APP EUI and DEV EUI**
123 +(% style="color:blue" %)**Add DevEUI and AppKey**
110 110  
111 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50v2-S31-S31B%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20User%20Manual/WebHome/image-20220611161308-4.png?width=753&height=551&rev=1.1||alt="图片-20220611161308-4.png"]]
125 +[[image:image-20231207145121-5.png||height="540" width="756"]]
112 112  
113 113  
114 -(% style="color:blue" %)**Add APP EUI in the application**
115 115  
129 +=== Step 2: Activate DS20L ===
116 116  
117 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50v2-S31-S31B%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20User%20Manual/WebHome/image-20220611161308-5.png?width=742&height=601&rev=1.1||alt="图片-20220611161308-5.png"]]
118 -
119 -
120 -(% style="color:blue" %)**Add APP KEY**
121 -
122 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50v2-S31-S31B%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20User%20Manual/WebHome/image-20220611161308-6.png?width=744&height=485&rev=1.1||alt="图片-20220611161308-6.png"]]
123 -
124 -
125 -(% style="color:blue" %)**Step 2:**(%%) Activate on DS20L
126 -
127 127  [[image:image-20231128133704-1.png||height="189" width="441"]]
128 128  
129 129  Press the button for 5 seconds to activate the DS20L.
130 130  
135 +The switch is switched to (% style="color:blue" %)**E** (%%)and the external power supply is used.
136 +
137 +The switch is switched to (% style="color:blue" %)**I** (%%)and DS20L will be power by the built-in battery.
138 +
131 131  (% 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.
132 132  
133 133  After join success, it will start to upload messages to TTN and you can see the messages in the panel.
134 134  
135 135  
144 +
136 136  == 2.3 ​Uplink Payload ==
137 137  
138 138  === 2.3.1 Device Status, FPORT~=5 ===
... ... @@ -150,7 +150,7 @@
150 150  
151 151  Example parse in TTNv3
152 152  
153 -[[image:1701149922873-259.png]]
162 +[[image:image-20231206151412-3.png||height="179" width="1070"]]
154 154  
155 155  (% style="color:blue" %)**Sensor Model**(%%): For DS20L, this value is 0x21
156 156  
... ... @@ -206,218 +206,292 @@
206 206  === 2.3.2 Uplink Payload, FPORT~=2 ===
207 207  
208 208  
209 -(((
210 -DS20L will send this uplink **after** Device Status once join the LoRaWAN network successfully. And DS20L will:
218 +==== (% style="color:red" %)**AT+MOD~=1**(%%) ====
211 211  
212 -periodically send this uplink every 20 minutes, this interval [[can be changed>>||anchor="H3.3.1SetTransmitIntervalTime"]].
220 +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.
213 213  
214 -Uplink Payload totals 11 bytes.
215 -)))
222 +**Uplink Payload totals 10 bytes.**
216 216  
217 217  (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
218 -|=(% style="width: 60px;background-color:#4F81BD;color:white" %)(((
219 -**Size(bytes)**
220 -)))|=(% style="width: 30px;background-color:#4F81BD;color:white" %)**2**|=(% style="width: 80px;background-color:#4F81BD;color:white" %)**2**|=(% style="width: 50px;background-color:#4F81BD;color:white" %)**2**|=(% style="width: 70px;background-color:#4F81BD;color:white" %)**2**|=(% style="background-color:#4F81BD;color:white; width: 80px;" %)**1**|=(% style="background-color: #4F81BD;color:white; width: 70px;" %)**1**|=(% style="background-color: #4F81BD;color:white; width: 70px;" %)**1**
221 -|(% style="width:62.5px" %)Value|(% style="width:62.5px" %)[[BAT>>||anchor="HBatteryInfo"]]|(% style="width:62.5px" %)(((
222 -[[Temperature DS18B20>>||anchor="HDS18B20Temperaturesensor"]]
223 -)))|[[Distance>>||anchor="HDistance"]]|[[Distance signal strength>>||anchor="HDistancesignalstrength"]]|(% style="width:122px" %)(((
224 -[[Interrupt flag & Interrupt_level>>||anchor="HInterruptPin26A0InterruptLevel"]]
225 -)))|(% style="width:54px" %)[[LiDAR temp>>||anchor="HLiDARtemp"]]|(% style="width:96px" %)(((
226 -[[Message Type>>||anchor="HMessageType"]]
227 -)))
225 +|(% 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**
226 +|(% 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
228 228  
229 -==== **MOD~=1** ====
228 +**MOD+ Alarm+ Interrupt:**
230 230  
231 -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.
230 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:400px" %)
231 +|(% style="background-color:#4f81bd; color:White; width:50px" %)**Size(bit)**|(% style="background-color:#4f81bd; color:White; width:60px" %)**[bit7:bit6]**|(% style="background-color:#4f81bd; color:White; width:70px" %)**bit5**|(% style="background-color:#4f81bd; color:White; width:120px" %)**bit4**
232 +|(% style="width:80px" %)Value|(% style="width:80px" %)MOD|(% style="width:89px" %)Digital Interrupt
233 + |(% style="width:167px" %)(((
234 +Distance Alarm
232 232  
233 -Uplink Payload totals 10 bytes.
236 +0: No Alarm;
234 234  
235 -(% border="1" cellspacing="4" style="width:510px;background-color:#f2f2f2" %)
236 -|(% style="width:60px;background-color:#4F81BD;color:white" %)**Size(bytes)**|(% style="width:30px;background-color:#4F81BD;color:white" %)**2**|(% style="width:130px;background-color:#4F81BD;color:white" %)**1**|(% style="width:70px;background-color:#4F81BD;color:white" %)**2**|(% style="width:100px;background-color:#4F81BD;color:white" %)**1**|(% style="width:120px;background-color:#4F81BD;color:white" %)**4**
237 -|(% style="width:91px" %)Value|(% style="width:41px" %)[[BAT>>||anchor="HBatteryInfo"]]|(% style="width:176px" %)MOD+ Alarm+Interrupt|(% style="width:74px" %)Distance|(% style="width:100px" %)Sensor State|(% style="width:119px" %)Interrupt Count
238 +1: Alarm
239 +)))
238 238  
241 +Example parse in TTNv3
239 239  
240 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image001.png]]
243 +[[image:image-20231209152917-1.png||height="300" width="1172"]]
241 241  
242 -==== **Battery Info** ====
245 +(% style="color:blue" %)**Battery Info:**
243 243  
244 244  Check the battery voltage for DS20L
245 245  
246 246  Ex1: 0x0E10 = 3600mV
247 247  
248 -**MOD & Alarm & Interrupt**
249 249  
250 -**MOD:**
252 +(% style="color:blue" %)**MOD & Alarm & Interrupt:**
251 251  
254 +(% style="color:red" %)**MOD:**
255 +
252 252  **Example: ** (0x60>>6) & 0x3f =1
253 253  
254 254  **0x01:**  Regularly detect distance and report.
255 255  **0x02: ** Uninterrupted measurement (external power supply).
256 256  
257 -**Alarm:**
261 +(% style="color:red" %)**Alarm:**
258 258  
259 259  When the detection distance exceeds the limit, the alarm flag is set to 1.
260 260  
261 -**Interrupt:**
265 +(% style="color:red" %)**Interrupt:**
262 262  
263 263  Whether it is an external interrupt.
264 264  
265 -==== Distance** info** ====
266 266  
270 +(% style="color:blue" %)**Distance info:**
271 +
267 267  **Example**:
268 268  
269 269  If payload is: 0708H: distance = 0708H = 1800 mm
270 270  
271 -==== **Sensor State** ====
272 272  
277 +(% style="color:blue" %)**Sensor State:**
278 +
273 273  Ex1: 0x00: Normal collection distance
274 274  
275 -Ex2 0x0x: Distance collection is wrong
281 +Ex2: 0x0x: Distance collection is wrong
276 276  
277 -==== **Interript Count** ====
278 278  
284 +(% style="color:blue" %)**Interrupt Count:**
285 +
279 279  If payload is:000007D0H: count = 07D0H =2000
280 280  
281 -**MOD=2**
282 282  
283 -Uninterrupted measurement. When the distance exceeds the limit, the output IO is set high and reports are reported every five minutes. The time can be set and powered by an external power supply.Uplink Payload totals 11bytes.
284 284  
285 -|**Size(bytes)**|**2**|**1**|**4**|**2**|**2**
286 -|Value|[[BAT>>url:http://wiki.dragino.com/xwiki/bin/view/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/DS20L_LoRaWAN_Smart_Distance_Detector_User_Manual/#HBatteryInfo]]|MOD+ Alarm+Do+ Limit flag|Distance Limit  Alarm count|Upper limit|Lower limit
290 +==== (% style="color:red" %)**AT+MOD~=2**(%%)** ** ====
287 287  
288 288  
289 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image001.png]]
293 +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.)
290 290  
291 -**MOD & Alarm & Do & Limit** **flag**
295 +[[image:image-20231128133704-1.png||height="189" width="441"]]
292 292  
293 -**MOD:**
294 294  
298 +* **Set over-limit alarm mode: AT+DOL=3,500,244,**(% style="color:red" %)0(%%)**,120**
299 +
300 +(% class="wikigeneratedid" id="HUninterruptedmeasurement.Whenthedistanceexceedsthelimit2CtheoutputIOissethighandreportsarereportedeveryfiveminutes.Thetimecanbesetandpoweredbyanexternalpowersupply.UplinkPayloadtotals11bytes." %)
301 +Uninterrupted measurement. When the distance exceeds the limit, the output IO high, instant alarm.
302 +
303 +(% class="wikigeneratedid" %)
304 +**Uplink Payload totals 9 bytes.**
305 +
306 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:680px" %)
307 +|(% 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**
308 +|(% style="width:91px" %)Value|(% style="width:41px" %)BAT|(% style="width:210px" %)MOD+ DO+ Alarm+ DO flag+ Limit flag|(% style="width:74px" %)Distance |(% style="width:100px" %)Upper limit|(% style="width:119px" %)Lower limit
309 +
310 +**MOD+DO+ Alarm+ Do flag+ Limit flag:**
311 +
312 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:680px" %)
313 +|(% style="background-color:#4f81bd; color:white; width:50px" %)**Size(bit)**|(% style="background-color:#4f81bd; color:white; width:60px" %)**[bit7:bit6]**|(% style="background-color:#4f81bd; color:white; width:90px" %)**bit5**|(% style="background-color:#4f81bd; color:white; width:90px" %)**bit4**|(% style="background-color:#4f81bd; color:white; width:120px" %)**bit3**|(% style="background-color:#4f81bd; color:white; width:100px" %)**[bit2:bit1:bit0]**
314 +|(% style="width:50px" %)Value|(% style="width:60px" %)MOD|(% style="width:89px" %)(((
315 +(((
316 +DO
317 +)))
318 +
319 +(((
320 +0:Within limit
321 +
322 +1:Out of limit
323 +)))
324 +)))|(% style="width:73px" %)(((
325 +Alarm
326 +
327 +0: No Alarm;
328 +
329 +1: Alarm
330 +)))|(% style="width:150px" %)(((
331 +DO flag
332 +
333 +0:the over-limit alarm mode
334 +
335 +1:the person or object count mode
336 +)))|(% style="width:103px" %)Limit flag
337 +(0~~3)
338 +
339 +Example parse in TTNv3
340 +
341 +[[image:image-20231209171127-3.png||height="374" width="1209"]]
342 +
343 +(% style="color:blue" %)**MOD & Alarm & Do & Limit flag:**
344 +
345 +(% style="color:red" %)**MOD:**
346 +
295 295  **Example: ** (0x60>>6) & 0x3f =1
296 296  
297 297  **0x01:**  Regularly detect distance and report.
298 298  **0x02: ** Uninterrupted measurement (external power supply).
299 299  
300 -**Alarm:**
352 +(% style="color:red" %)**Alarm:**
301 301  
302 302  When the detection distance exceeds the limit, the alarm flag is set to 1.
303 303  
304 -**Do:**
356 +(% style="color:red" %)**DO:**
305 305  
306 306  When the distance exceeds the set threshold, pull the Do pin high.
307 307  
308 -**Limit** **flag:**
360 +(% style="color:red" %)**Limit flag:**
309 309  
310 -Mode for setting threshold: 0~~5
362 +Mode for setting threshold: **0~~3**
311 311  
312 -0: does not use upper and lower limits
364 +**0:** does not use upper and lower limits
313 313  
314 -1: Use upper and lower limits
366 +**1:** Use upper and lower limits
315 315  
316 -2: is less than the lower limit value
368 +**2:** Less than the upper limit
317 317  
318 -3: is greater than the lower limit value
370 +**3: **Greater than the lower limit
319 319  
320 -4: is less than the upper limit
321 321  
322 -5: is greater than the upper limit
373 +(% style="color:blue" %)**Distance:**
323 323  
324 -**Upper limit:**
375 + Actual sampling distance values.
325 325  
377 +**Example:**
378 +
379 +**AT+DOL=1,500,244,**(% style="color:red" %)0(%%)**,120  **
380 +
381 +The distance is detected every 120ms.
382 +
383 +When the actual detection value is within the range of [244mm,500mm], the data is uploaded in the normal TDC time.
384 +
385 +When the actual detection value is outside the range of [244mm,500mm], the uplink data will be immediately alerted.
386 +
387 +If payload is: 0708H: distance = 0708H = 1800 mm
388 +
389 +
390 +(% style="color:blue" %)**Upper limit:**
391 +
326 326  The upper limit of the threshold cannot exceed 2000mm.
327 327  
328 -**Lower limit:**
329 329  
395 +(% style="color:blue" %)**Lower limit:**
396 +
330 330  The lower limit of the threshold cannot be less than 3mm.
331 331  
332 332  
333 -=== 2.3.3 Historical measuring distance, FPORT~=3 ===
400 +* **Set the person or object count mode: AT+DOL=1,500,244,**(% style="color:red" %)1(%%)**,120**
334 334  
402 +Continuous measurement, detect and count people or things passing by in distance limit mode.
335 335  
336 -DS20L stores sensor values and users can retrieve these history values via the [[downlink command>>||anchor="H2.5.4Pollsensorvalue"]].
404 +**Uplink Payload totals 11 bytes.**
337 337  
338 -The historical payload includes one or multiplies entries and every entry has the same payload as Real-Time measuring distance.
406 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:680px" %)
407 +|(% 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**
408 +|(% style="width:91px" %)Value|(% style="width:41px" %)BAT|(% style="width:210px" %)MOD+ DO+ Alarm+ DO flag+ Limit flag|(% style="width:176px" %)Distance limit alarm count|(% style="width:100px" %)Upper limit|(% style="width:119px" %)Lower limit
339 339  
340 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
341 -|=(% style="width: 60px;background-color:#4F81BD;color:white" %)(((
342 -**Size(bytes)**
343 -)))|=(% style="width: 80px;background-color:#4F81BD;color:white" %)1|=(% style="width: 80px;background-color:#4F81BD;color:white" %)**1**|=(% style="width: 50px;background-color:#4F81BD;color:white" %)**2**|=(% style="width: 70px;background-color:#4F81BD;color:white" %)**2**|=(% style="background-color:#4F81BD; color: white; width: 85px;" %)**1**|=(% style="background-color: #4F81BD; color: white; width: 85px;" %)4
344 -|(% style="width:62.5px" %)Value|(% style="width:62.5px" %)Interrupt flag & Interrupt_level|(% style="width:62.5px" %)(((
345 -Reserve(0xFF)
346 -)))|Distance|Distance signal strength|(% style="width:88px" %)(((
347 -LiDAR temp
348 -)))|(% style="width:85px" %)Unix TimeStamp
410 +**MOD+DO+ Alarm+ Do flag+ Limit flag:**
349 349  
350 -**Interrupt flag & Interrupt level:**
351 -
352 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:480px" %)
353 -|=(% style="width: 60px;background-color:#4F81BD;color:white" %)(((
354 -**Size(bit)**
355 -)))|=(% style="width: 90px;background-color:#4F81BD;color:white" %)**bit7**|=(% style="width: 90px;background-color:#4F81BD;color:white" %)**bit6**|=(% style="width: 60px;background-color:#4F81BD;color:white" %)**[bit5:bit2]**|=(% style="width: 90px; background-color: #4F81BD; color: white;" %)**bit1**|=(% style="background-color: #4F81BD; color: white; width: 90px;" %)**bit0**
356 -|(% style="width:62.5px" %)Value|(% style="width:62.5px" %)No ACK message|(% style="width:62.5px" %)Poll Message Flag|Reserve|(% style="width:91px" %)Interrupt level|(% style="width:88px" %)(((
357 -Interrupt flag
412 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:680px" %)
413 +|(% style="background-color:#4f81bd; color:white; width:50px" %)**Size(bit)**|(% style="background-color:#4f81bd; color:white; width:60px" %)**[bit7:bit6]**|(% style="background-color:#4f81bd; color:white; width:90px" %)**bit5**|(% style="background-color:#4f81bd; color:white; width:90px" %)**bit4**|(% style="background-color:#4f81bd; color:white; width:120px" %)**bit3**|(% style="background-color:#4f81bd; color:white; width:100px" %)**[bit2:bit1:bit0]**
414 +|(% style="width:50px" %)Value|(% style="width:60px" %)MOD|(% style="width:89px" %)(((
415 +(((
416 +DO
358 358  )))
359 359  
360 -* (((
361 -Each data entry is 11 bytes and has the same structure as [[Uplink Payload>>||anchor="H2.3.2UplinkPayload2CFPORT3D2"]], to save airtime and battery, DS20L will send max bytes according to the current DR and Frequency bands.
419 +(((
420 +0:Within limit
421 +
422 +1:Out of limit
362 362  )))
424 +)))|(% style="width:73px" %)(((
425 +Alarm
363 363  
364 -For example, in the US915 band, the max payload for different DR is:
427 +0: No Alarm;
365 365  
366 -**a) DR0:** max is 11 bytes so one entry of data
429 +1: Alarm
430 +)))|(% style="width:150px" %)(((
431 +DO flag
367 367  
368 -**b) DR1:** max is 53 bytes so devices will upload 4 entries of data (total 44 bytes)
433 +0:the over-limit alarm mode
369 369  
370 -**c) DR2:** total payload includes 11 entries of data
435 +1:the person or object count mode
436 +)))|(% style="width:103px" %)Limit flag
437 +(0~~3)
371 371  
372 -**d) DR3:** total payload includes 22 entries of data.
439 +Example parse in TTNv3
373 373  
374 -If DS20L doesn't have any data in the polling time. It will uplink 11 bytes of 0
441 +[[image:image-20231209173457-5.png||height="277" width="1098"]]
375 375  
443 +(% style="color:blue" %)**MOD & Alarm & Do & Limit flag:**
376 376  
377 -**Downlink:**
445 +(% style="color:red" %)**MOD:**
378 378  
379 -0x31 64 CC 68 0C 64 CC 69 74 05
447 +**Example: ** (0x60>>6) & 0x3f =1
380 380  
381 -[[image:image-20230805144936-2.png||height="113" width="746"]]
449 +**0x01:**  Regularly detect distance and report.
450 +**0x02: ** Uninterrupted measurement (external power supply).
382 382  
383 -**Uplink:**
452 +(% style="color:red" %)**Alarm:**
384 384  
385 -43 FF 0E 10 00 B0 1E 64 CC 68 0C 40 FF 0D DE 00 A8 1E 64 CC 68 29 40 FF 09 92 00 D3 1E 64 CC 68 65 40 FF 02 3A 02 BC 1E 64 CC 68 A1 41 FF 0E 1A 00 A4 1E 64 CC 68 C0 40 FF 0D 2A 00 B8 1E 64 CC 68 E8 40 FF 00 C8 11 6A 1E 64 CC 69 24 40 FF 0E 24 00 AD 1E 64 CC 69 6D
454 +When the detection distance exceeds the limit, the alarm flag is set to 1.
386 386  
456 +(% style="color:red" %)**Do:**
387 387  
388 -**Parsed Value:**
458 +When the distance exceeds the set threshold, pull the Do pin high.
389 389  
390 -[DISTANCE , DISTANCE_SIGNAL_STRENGTH,LIDAR_TEMP,EXTI_STATUS , EXTI_FLAG , TIME]
460 +(% style="color:red" %)**Limit flag:**
391 391  
462 +Mode for setting threshold: **0~~3**
392 392  
393 -[360,176,30,High,True,2023-08-04 02:53:00],
464 +**0:** does not use upper and lower limits
394 394  
395 -[355,168,30,Low,False,2023-08-04 02:53:29],
466 +**1:** Use upper and lower limits
396 396  
397 -[245,211,30,Low,False,2023-08-04 02:54:29],
468 +**2:** Less than the upper limit
398 398  
399 -[57,700,30,Low,False,2023-08-04 02:55:29],
470 +**3: **Greater than the lower limit
400 400  
401 -[361,164,30,Low,True,2023-08-04 02:56:00],
402 402  
403 -[337,184,30,Low,False,2023-08-04 02:56:40],
473 +(% style="color:blue" %)**Distance limit alarm count:**
404 404  
405 -[20,4458,30,Low,False,2023-08-04 02:57:40],
475 +People or objects are collected and counted within a limited distance.
406 406  
407 -[362,173,30,Low,False,2023-08-04 02:58:53],
477 +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.
408 408  
479 +**Example:**
409 409  
410 -**History read from serial port:**
481 +**AT+DOL=1,500,244,**(% style="color:red" %)1(%%)**,120   **
411 411  
412 -[[image:image-20230805145056-3.png]]
483 +People or objects passing within the distance range of [244mm,500mm] are detected and counted every 120ms.
413 413  
485 +If payload is: 0x56H, interrupt count =0x56H =86
414 414  
415 -=== 2.3.4 Decode payload in The Things Network ===
416 416  
488 +(% style="color:blue" %)**Upper limit:**
417 417  
490 +The upper limit of the threshold cannot exceed 2000mm.
491 +
492 +
493 +(% style="color:blue" %)**Lower limit:**
494 +
495 +The lower limit of the threshold cannot be less than 3mm.
496 +
497 +
498 +== 2.4 Decode payload in The Things Network ==
499 +
500 +
418 418  While using TTN network, you can add the payload format to decode the payload.
419 419  
420 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LLDS12-LoRaWAN%20LiDAR%20ToF%20Distance%20Sensor%20User%20Manual/WebHome/1654592762713-715.png?rev=1.1||alt="1654592762713-715.png"]]
503 +[[image:image-20231206143515-1.png||height="534" width="759"]]
421 421  
422 422  
423 423  (((
... ... @@ -429,11 +429,11 @@
429 429  )))
430 430  
431 431  
432 -== 2.4 ​Show Data in DataCake IoT Server ==
515 +== 2.5 ​Show Data in DataCake IoT Server ==
433 433  
434 434  
435 435  (((
436 -[[DATACAKE>>url:https://datacake.co/]] provides a human friendly interface to show the sensor data, once we have data in TTN, we can use [[DATACAKE>>url:https://datacake.co/]] to connect to TTN and see the data in DATACAKE. Below are the steps:
519 +[[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:
437 437  )))
438 438  
439 439  
... ... @@ -446,25 +446,29 @@
446 446  )))
447 447  
448 448  
449 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDDS75%20-%20LoRaWAN%20Distance%20Detection%20Sensor%20User%20Manual/WebHome/1654592790040-760.png?rev=1.1||alt="1654592790040-760.png"]]
532 +[[image:image-20231207153532-6.png||height="562" width="861"]]
450 450  
451 451  
452 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDDS75%20-%20LoRaWAN%20Distance%20Detection%20Sensor%20User%20Manual/WebHome/1654592800389-571.png?rev=1.1||alt="1654592800389-571.png"]]
535 +[[image:image-20231207155940-8.png]]
453 453  
537 +For more detailed instructions, refer to the following instructions: [[Welcome - Datacake Docs>>url:https://docs.datacake.de/]]
454 454  
539 +[[image:image-20231207160733-11.png||height="429" width="759"]]
540 +
541 +
455 455  (% style="color:blue" %)**Step 3**(%%)**: Create an account or log in Datacake.**
456 456  
457 457  (% style="color:blue" %)**Step 4**(%%)**: Search the DS20L and add DevEUI.**
458 458  
459 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDDS75%20-%20LoRaWAN%20Distance%20Detection%20Sensor%20User%20Manual/WebHome/1654851029373-510.png?rev=1.1||alt="1654851029373-510.png"]]
546 +[[image:image-20231207160343-10.png||height="665" width="705"]]
460 460  
461 461  
462 462  After added, the sensor data arrive TTN V3, it will also arrive and show in Datacake.
463 463  
464 -[[image:1701152946067-561.png]]
551 +[[image:image-20231129100454-2.png||height="501" width="928"]]
465 465  
466 466  
467 -== 2.5 Frequency Plans ==
554 +== 2.6 Frequency Plans ==
468 468  
469 469  
470 470  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.
... ... @@ -502,7 +502,7 @@
502 502  == 3.3 Commands special design for DS20L ==
503 503  
504 504  
505 -These commands only valid for DS20L, as below:
592 +Below commands only valid for DS20L, as below:
506 506  
507 507  
508 508  === 3.3.1 Set Transmit Interval Time ===
... ... @@ -545,6 +545,9 @@
545 545  )))
546 546  * (((
547 547  Example 2: Downlink Payload: 0100003C  ~/~/ Set Transmit Interval (TDC) = 60 seconds
635 +
636 +
637 +
548 548  )))
549 549  
550 550  === 3.3.2 Set Interrupt Mode ===
... ... @@ -585,10 +585,9 @@
585 585  
586 586  * Example 2: Downlink Payload: 06000003  ~/~/  Set the interrupt mode to rising edge trigger
587 587  
678 +=== 3.3.3 Set work mode ===
588 588  
589 -== 3.3.3 Set work mode ==
590 590  
591 -
592 592  Feature: Switch working mode
593 593  
594 594  (% style="color:blue" %)**AT Command: AT+MOD**
... ... @@ -603,9 +603,9 @@
603 603  
604 604  (% style="color:blue" %)**Downlink Command:**
605 605  
606 -* **Example: **0x0A0 ~/~/  Same as AT+MOD=0
695 +* **Example: **0x0A01 ~/~/  Same as AT+MOD=1
607 607  
608 -* **Example:** 0x0A01  ~/~/  Same as AT+MOD=1
697 +* **Example:** 0x0A02  ~/~/  Same as AT+MOD=2
609 609  
610 610  === 3.3.4 Set threshold and threshold mode ===
611 611  
... ... @@ -624,21 +624,37 @@
624 624  )))
625 625  |(% style="width:172px" %)AT+ DOL =1,1800,100,0,400|(% style="width:279px" %)Set only the upper and lower thresholds|(% style="width:118px" %)OK
626 626  
716 +(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:510px" %)
717 +|=(% 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
718 +|(% rowspan="11" style="color:blue; width:120px" %)(((
719 +
627 627  
628 628  
629 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
630 -|(% rowspan="11" style="color:blue; width:120px" %)**AT+DOL=5,1800,0,0,400**|(% rowspan="6" style="width:240px" %)The first bit sets the limit mode|(% style="width:150px" %)0: Do not use upper and lower limits
722 +
723 +
724 +
725 +
726 +
727 +
728 +
729 +
730 +**AT+DOL=1,1800,3,0,400**
731 +)))|(% rowspan="4" style="width:240px" %)(((
732 +
733 +
734 +
735 +
736 +The first bit sets the limit mode
737 +)))|(% style="width:150px" %)0: Do not use upper and lower limits
631 631  |(% style="width:251px" %)1: Use upper and lower limits
632 -|(% style="width:251px" %)2: Less than the lower limit
739 +|(% style="width:251px" %)2:Less than the upper limit
633 633  |(% style="width:251px" %)3: Greater than the lower limit
634 -|(% style="width:251px" %)4: Less than the upper limit
635 -|(% style="width:251px" %)5: Greater than the upper limit
636 636  |(% style="width:226px" %)The second bit sets the upper limit value|(% style="width:251px" %)3~~2000MM
637 637  |(% style="width:226px" %)The third bit sets the lower limit value|(% style="width:251px" %)3~~2000MM
638 638  |(% 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
639 639  |(% style="width:251px" %)1 Person or object counting statistics
640 640  |(% style="width:226px" %)The fifth bit sets the sampling time|(% style="width:251px" %)(((
641 -0~~10000ms
746 +100~~10000ms
642 642  
643 643  
644 644  )))
... ... @@ -645,14 +645,42 @@
645 645  
646 646  (% style="color:blue" %)**Downlink Command: 0x07**
647 647  
648 -Format: Command Code (0x07) followed by 9bytes.
753 +Format: Command Code (0x07) followed by 9 bytes.
649 649  
650 -* Example 0: Downlink Payload070000000000000190  **~-~-->**  AT+MOD=0,0,0,0,400
755 +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.
651 651  
757 +* Example 0: Downlink Payload: 07 00 0000 0000 00 0190  **~-~-->**  AT+MOD=0,0,0,0,400
758 +
652 652  * Example 1: Downlink Payload: 070107080064000190  **~-~-->**  AT+MOD=1,1800,100,0,400
653 653  
761 +* Example 2: Downlink Payload: 070200000064000190  **~-~-->**  AT+MOD=2,1800,100,0,400
654 654  
763 +* Example 3: Downlink Payload: 070300000064000190  **~-~-->**  AT+MOD=3,0,100,0,400
655 655  
765 +(% style="color:Red" %)**Note: The over-limit alarm is applied to MOD1 and MOD2.**
766 +
767 +**For example:**
768 +
769 +* **AT+MOD=1**
770 +
771 + **AT+DOL=1,500,244,**(% style="color:blue" %)0(%%)**,300**
772 +
773 +Send data according to the normal TDC time. If the mode limit is exceeded, the alarm flag is set to 1:
774 +
775 +[[image:image-20231211113204-2.png||height="292" width="1093"]]
776 +
777 +* **AT+MOD=2  **
778 +
779 + **AT+DOL=1,500,244,**(% style="color:blue" %)0(%%)**,300**
780 +
781 +If the mode limit is exceeded, the data is immediately uplink and the alarm flag is set to 1:
782 +
783 +[[image:image-20231211114932-3.png||height="277" width="1248"]]
784 +
785 +
786 +
787 +
788 +
656 656  = 4. Battery & Power Consumption =
657 657  
658 658  
... ... @@ -689,6 +689,33 @@
689 689  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"]]
690 690  
691 691  
825 +== 6.2 DS20L programming line ==
826 +
827 +
828 +缺图 后续补上
829 +
830 +feature:
831 +
832 +for AT commands
833 +
834 +Update the firmware of DS20L
835 +
836 +Support interrupt mode
837 +
838 +
839 +== 6.3 LiDAR probe position ==
840 +
841 +
842 +[[image:1701155390576-216.png||height="285" width="307"]]
843 +
844 +The black oval hole in the picture is the LiDAR probe.
845 +
846 +
847 +== 6.4 Interface definition ==
848 +
849 +[[image:image-20231128151132-2.png||height="305" width="557"]]
850 +
851 +
692 692  = 7. Trouble Shooting =
693 693  
694 694  == 7.1 AT Command input doesn't work ==
1701155076393-719.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +54.6 KB
Content
1701155150328-206.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +54.6 KB
Content
1701155390576-216.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +293.9 KB
Content
image-20231128151132-2.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +281.2 KB
Content
image-20231129085201-1.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +70.6 KB
Content
image-20231129100454-2.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +70.1 KB
Content
image-20231206143515-1.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.ting
Size
... ... @@ -1,0 +1,1 @@
1 +89.5 KB
Content
image-20231206144950-2.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.ting
Size
... ... @@ -1,0 +1,1 @@
1 +41.0 KB
Content
image-20231206151412-3.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.ting
Size
... ... @@ -1,0 +1,1 @@
1 +58.8 KB
Content
image-20231206154621-4.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.ting
Size
... ... @@ -1,0 +1,1 @@
1 +71.2 KB
Content
image-20231206194804-5.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.ting
Size
... ... @@ -1,0 +1,1 @@
1 +53.7 KB
Content
image-20231206195704-6.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.ting
Size
... ... @@ -1,0 +1,1 @@
1 +64.1 KB
Content
image-20231207142208-1.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.ting
Size
... ... @@ -1,0 +1,1 @@
1 +27.2 KB
Content
image-20231207144600-2.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.ting
Size
... ... @@ -1,0 +1,1 @@
1 +55.4 KB
Content
image-20231207144837-3.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.ting
Size
... ... @@ -1,0 +1,1 @@
1 +31.1 KB
Content
image-20231207144856-4.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.ting
Size
... ... @@ -1,0 +1,1 @@
1 +31.1 KB
Content
image-20231207145121-5.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.ting
Size
... ... @@ -1,0 +1,1 @@
1 +33.3 KB
Content
image-20231207153532-6.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.ting
Size
... ... @@ -1,0 +1,1 @@
1 +164.7 KB
Content
image-20231207154046-7.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.ting
Size
... ... @@ -1,0 +1,1 @@
1 +23.0 KB
Content
image-20231207155940-8.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.ting
Size
... ... @@ -1,0 +1,1 @@
1 +41.7 KB
Content
image-20231207160053-9.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.ting
Size
... ... @@ -1,0 +1,1 @@
1 +95.5 KB
Content
image-20231207160343-10.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.ting
Size
... ... @@ -1,0 +1,1 @@
1 +80.5 KB
Content
image-20231207160733-11.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.ting
Size
... ... @@ -1,0 +1,1 @@
1 +136.0 KB
Content
image-20231209152917-1.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.ting
Size
... ... @@ -1,0 +1,1 @@
1 +65.9 KB
Content
image-20231209155616-2.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.ting
Size
... ... @@ -1,0 +1,1 @@
1 +57.1 KB
Content
image-20231209171127-3.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.ting
Size
... ... @@ -1,0 +1,1 @@
1 +80.8 KB
Content
image-20231209171549-4.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.ting
Size
... ... @@ -1,0 +1,1 @@
1 +45.7 KB
Content
image-20231209173457-5.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.ting
Size
... ... @@ -1,0 +1,1 @@
1 +66.3 KB
Content
image-20231211113113-1.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.ting
Size
... ... @@ -1,0 +1,1 @@
1 +64.5 KB
Content
image-20231211113204-2.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.ting
Size
... ... @@ -1,0 +1,1 @@
1 +59.7 KB
Content
image-20231211114932-3.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.ting
Size
... ... @@ -1,0 +1,1 @@
1 +57.3 KB
Content
image-20231211220922-1.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Edwin
Size
... ... @@ -1,0 +1,1 @@
1 +411.2 KB
Content
image-20231211221253-2.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Edwin
Size
... ... @@ -1,0 +1,1 @@
1 +90.8 KB
Content
image-20231211221436-3.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Edwin
Size
... ... @@ -1,0 +1,1 @@
1 +64.9 KB
Content