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

From version 124.1
edited by Xiaoling
on 2023/11/28 15:11
Change comment: Uploaded new attachment "image-20231128151132-2.png", version {1}
To version 125.2
edited by Xiaoling
on 2023/11/29 08:52
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -47,6 +47,7 @@
47 47  * Firmware upgradable via program port or LoRa protocol
48 48  * Built-in 2400mAh battery or power by external power source
49 49  
50 +
50 50  == 1.3 Specification ==
51 51  
52 52  
... ... @@ -60,6 +60,7 @@
60 60  * ToF FoV: ±9°, Total 18°
61 61  * Light source: VCSEL
62 62  
64 +
63 63  == 1.4 Power Consumption ==
64 64  
65 65  
... ... @@ -73,6 +73,7 @@
73 73  * Idle: 21 mA @ 3.3v
74 74  * Max : 360 mA
75 75  
78 +
76 76  = 2. Configure DS20L to connect to LoRaWAN network =
77 77  
78 78  == 2.1 How it works ==
... ... @@ -206,45 +206,25 @@
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:
212 +==== (% style="color:red" %)**MOD~=1**(%%) ====
211 211  
212 -periodically send this uplink every 20 minutes, this interval [[can be changed>>||anchor="H3.3.1SetTransmitIntervalTime"]].
213 -
214 -Uplink Payload totals 11 bytes.
215 -)))
216 -
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 -)))
228 -
229 -==== (% style="color:red" %)**MOD~=1** ====
230 -
231 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.
232 232  
233 233  Uplink Payload totals 10 bytes.
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
218 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
219 +|(% 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**
220 +|(% 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
238 238  
222 +[[image:1701155076393-719.png]]
239 239  
240 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image001.png]]
224 +(% style="color:blue" %)**Battery Info:**
241 241  
242 -(% style="color:blue" %)**Battery Info**
243 -
244 244  Check the battery voltage for DS20L
245 245  
246 246  Ex1: 0x0E10 = 3600mV
247 247  
230 +
248 248  (% style="color:blue" %)**MOD & Alarm & Interrupt:**
249 249  
250 250  (% style="color:red" %)**MOD:**
... ... @@ -262,36 +262,37 @@
262 262  
263 263  Whether it is an external interrupt.
264 264  
265 -(% style="color:blue" %)**Distance info**
266 266  
249 +(% style="color:blue" %)**Distance info:**
250 +
267 267  **Example**:
268 268  
269 269  If payload is: 0708H: distance = 0708H = 1800 mm
270 270  
271 -(% style="color:blue" %)**Sensor State**
272 272  
256 +(% style="color:blue" %)**Sensor State:**
257 +
273 273  Ex1: 0x00: Normal collection distance
274 274  
275 275  Ex2 0x0x: Distance collection is wrong
276 276  
277 -(% style="color:blue" %)**Interript Count**
278 278  
263 +(% style="color:blue" %)**Interript Count:**
264 +
279 279  If payload is:000007D0H: count = 07D0H =2000
280 280  
281 281  
282 282  
269 +==== (% style="color:red" %)**MOD~=2**(%%)** ** ====
283 283  
284 -==== (% style="color:red" %)**MOD=2** ====
285 -
286 286  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.
287 287  
288 -(% border="1" cellspacing="4" style="width:510px;background-color:#f2f2f2" %)
289 -|(% style="width:70px;background-color:#4F81BD;color:white" %)**Size(bytes)**|(% style="width:40px;background-color:#4F81BD;color:white" %)**2**|(% style="width:130px;background-color:#4F81BD;color:white" %)**1**|(% style="width:130px;background-color:#4F81BD;color:white" %)**4**|(% style="width:70px;background-color:#4F81BD;color:white" %)**2**|(% style="width:70px;background-color:#4F81BD;color:white" %)**2**
290 -|(% style="width:91px" %)Value|(% style="width:41px" %)[[BAT>>||anchor="HBatteryInfo"]]|(% style="width:176px" %)MOD+Alarm+Do+Limit flag|(% style="width:74px" %)Distance Limit Alarm count|(% style="width:100px" %)Upper limit|(% style="width:119px" %)Lower limit
273 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
274 +|(% 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**
275 +|(% style="width:91px" %)Value|(% style="width:41px" %)BAT|(% style="width:176px" %)MOD+Alarm+Do+Limit flag|(% style="width:74px" %)Distance Limit Alarm count|(% style="width:100px" %)Upper limit|(% style="width:119px" %)Lower limit
291 291  
277 +[[image:1701155150328-206.png]]
292 292  
293 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image001.png]]
294 -
295 295  (% style="color:blue" %)**MOD & Alarm & Do & Limit flag:**
296 296  
297 297  (% style="color:red" %)**MOD:**
... ... @@ -330,96 +330,15 @@
330 330  
331 331  The upper limit of the threshold cannot exceed 2000mm.
332 332  
317 +
333 333  (% style="color:blue" %)**Lower limit:**
334 334  
335 335  The lower limit of the threshold cannot be less than 3mm.
336 336  
337 337  
338 -=== 2.3.3 Historical measuring distance, FPORT~=3 ===
323 +=== 2.3.3 Decode payload in The Things Network ===
339 339  
340 340  
341 -DS20L stores sensor values and users can retrieve these history values via the [[downlink command>>||anchor="H2.5.4Pollsensorvalue"]].
342 -
343 -The historical payload includes one or multiplies entries and every entry has the same payload as Real-Time measuring distance.
344 -
345 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
346 -|=(% style="width: 60px;background-color:#4F81BD;color:white" %)(((
347 -**Size(bytes)**
348 -)))|=(% 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
349 -|(% style="width:62.5px" %)Value|(% style="width:62.5px" %)Interrupt flag & Interrupt_level|(% style="width:62.5px" %)(((
350 -Reserve(0xFF)
351 -)))|Distance|Distance signal strength|(% style="width:88px" %)(((
352 -LiDAR temp
353 -)))|(% style="width:85px" %)Unix TimeStamp
354 -
355 -**Interrupt flag & Interrupt level:**
356 -
357 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:480px" %)
358 -|=(% style="width: 60px;background-color:#4F81BD;color:white" %)(((
359 -**Size(bit)**
360 -)))|=(% 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**
361 -|(% 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" %)(((
362 -Interrupt flag
363 -)))
364 -
365 -* (((
366 -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.
367 -)))
368 -
369 -For example, in the US915 band, the max payload for different DR is:
370 -
371 -**a) DR0:** max is 11 bytes so one entry of data
372 -
373 -**b) DR1:** max is 53 bytes so devices will upload 4 entries of data (total 44 bytes)
374 -
375 -**c) DR2:** total payload includes 11 entries of data
376 -
377 -**d) DR3:** total payload includes 22 entries of data.
378 -
379 -If DS20L doesn't have any data in the polling time. It will uplink 11 bytes of 0
380 -
381 -
382 -**Downlink:**
383 -
384 -0x31 64 CC 68 0C 64 CC 69 74 05
385 -
386 -[[image:image-20230805144936-2.png||height="113" width="746"]]
387 -
388 -**Uplink:**
389 -
390 -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
391 -
392 -
393 -**Parsed Value:**
394 -
395 -[DISTANCE , DISTANCE_SIGNAL_STRENGTH,LIDAR_TEMP,EXTI_STATUS , EXTI_FLAG , TIME]
396 -
397 -
398 -[360,176,30,High,True,2023-08-04 02:53:00],
399 -
400 -[355,168,30,Low,False,2023-08-04 02:53:29],
401 -
402 -[245,211,30,Low,False,2023-08-04 02:54:29],
403 -
404 -[57,700,30,Low,False,2023-08-04 02:55:29],
405 -
406 -[361,164,30,Low,True,2023-08-04 02:56:00],
407 -
408 -[337,184,30,Low,False,2023-08-04 02:56:40],
409 -
410 -[20,4458,30,Low,False,2023-08-04 02:57:40],
411 -
412 -[362,173,30,Low,False,2023-08-04 02:58:53],
413 -
414 -
415 -**History read from serial port:**
416 -
417 -[[image:image-20230805145056-3.png]]
418 -
419 -
420 -=== 2.3.4 Decode payload in The Things Network ===
421 -
422 -
423 423  While using TTN network, you can add the payload format to decode the payload.
424 424  
425 425  [[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"]]
... ... @@ -466,7 +466,7 @@
466 466  
467 467  After added, the sensor data arrive TTN V3, it will also arrive and show in Datacake.
468 468  
469 -[[image:1701152946067-561.png]]
372 +[[image:image-20231129085201-1.png||height="515" width="961"]]
470 470  
471 471  
472 472  == 2.5 Frequency Plans ==
... ... @@ -550,6 +550,9 @@
550 550  )))
551 551  * (((
552 552  Example 2: Downlink Payload: 0100003C  ~/~/ Set Transmit Interval (TDC) = 60 seconds
456 +
457 +
458 +
553 553  )))
554 554  
555 555  === 3.3.2 Set Interrupt Mode ===
... ... @@ -590,7 +590,6 @@
590 590  
591 591  * Example 2: Downlink Payload: 06000003  ~/~/  Set the interrupt mode to rising edge trigger
592 592  
593 -
594 594  == 3.3.3 Set work mode ==
595 595  
596 596  
... ... @@ -629,8 +629,6 @@
629 629  )))
630 630  |(% style="width:172px" %)AT+ DOL =1,1800,100,0,400|(% style="width:279px" %)Set only the upper and lower thresholds|(% style="width:118px" %)OK
631 631  
632 -
633 -
634 634  (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
635 635  |(% 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
636 636  |(% style="width:251px" %)1: Use upper and lower limits
... ... @@ -656,8 +656,15 @@
656 656  
657 657  * Example 1: Downlink Payload: 070107080064000190  **~-~-->**  AT+MOD=1,1800,100,0,400
658 658  
562 +* Example 2: Downlink Payload: 070200000064000190  **~-~-->**  AT+MOD=2,0,100,0,400
659 659  
564 +* Example 3: Downlink Payload: 0703200000064000190  **~-~-->**  AT+MOD=3,1800,100,0,400
660 660  
566 +* Example 4: Downlink Payload: 070407080000000190  **~-~-->**  AT+MOD=4,0,100,0,400
567 +
568 +* Example 5: Downlink Payload: 070507080000000190  **~-~-->**  AT+MOD=5,1800,100,0,400
569 +
570 +
661 661  = 4. Battery & Power Consumption =
662 662  
663 663  
... ... @@ -694,6 +694,33 @@
694 694  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"]]
695 695  
696 696  
607 +== 6.2 DS20L programming line ==
608 +
609 +
610 +缺图 后续补上
611 +
612 +feature:
613 +
614 +for AT commands
615 +
616 +Update the firmware of DS20L
617 +
618 +Support interrupt mode
619 +
620 +
621 +== 6.3 LiDAR probe position ==
622 +
623 +
624 +[[image:1701155390576-216.png||height="285" width="307"]]
625 +
626 +The black oval hole in the picture is the LiDAR probe.
627 +
628 +
629 +== 6.4 Interface definition ==
630 +
631 +[[image:image-20231128151132-2.png||height="305" width="557"]]
632 +
633 +
697 697  = 7. Trouble Shooting =
698 698  
699 699  == 7.1 AT Command input doesn't work ==
image-20231129085201-1.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +70.6 KB
Content