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

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

Summary

Details

Page properties
Content
... ... @@ -47,7 +47,6 @@
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 -
51 51  == 1.3 Specification ==
52 52  
53 53  
... ... @@ -61,7 +61,6 @@
61 61  * ToF FoV: ±9°, Total 18°
62 62  * Light source: VCSEL
63 63  
64 -
65 65  == 1.4 Power Consumption ==
66 66  
67 67  
... ... @@ -75,7 +75,6 @@
75 75  * Idle: 21 mA @ 3.3v
76 76  * Max : 360 mA
77 77  
78 -
79 79  = 2. Configure DS20L to connect to LoRaWAN network =
80 80  
81 81  == 2.1 How it works ==
... ... @@ -209,25 +209,45 @@
209 209  === 2.3.2 Uplink Payload, FPORT~=2 ===
210 210  
211 211  
212 -==== (% style="color:red" %)**MOD~=1**(%%) ====
209 +(((
210 +DS20L will send this uplink **after** Device Status once join the LoRaWAN network successfully. And DS20L will:
213 213  
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 +
214 214  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.
215 215  
216 216  Uplink Payload totals 10 bytes.
217 217  
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
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
221 221  
222 -[[image:1701155076393-719.png]]
223 223  
224 -(% style="color:blue" %)**Battery Info:**
240 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image001.png]]
225 225  
242 +(% style="color:blue" %)**Battery Info**
243 +
226 226  Check the battery voltage for DS20L
227 227  
228 228  Ex1: 0x0E10 = 3600mV
229 229  
230 -
231 231  (% style="color:blue" %)**MOD & Alarm & Interrupt:**
232 232  
233 233  (% style="color:red" %)**MOD:**
... ... @@ -245,37 +245,36 @@
245 245  
246 246  Whether it is an external interrupt.
247 247  
265 +(% style="color:blue" %)**Distance info**
248 248  
249 -(% style="color:blue" %)**Distance info:**
250 -
251 251  **Example**:
252 252  
253 253  If payload is: 0708H: distance = 0708H = 1800 mm
254 254  
271 +(% style="color:blue" %)**Sensor State**
255 255  
256 -(% style="color:blue" %)**Sensor State:**
257 -
258 258  Ex1: 0x00: Normal collection distance
259 259  
260 260  Ex2 0x0x: Distance collection is wrong
261 261  
277 +(% style="color:blue" %)**Interript Count**
262 262  
263 -(% style="color:blue" %)**Interript Count:**
264 -
265 265  If payload is:000007D0H: count = 07D0H =2000
266 266  
267 267  
268 268  
269 -==== (% style="color:red" %)**MOD~=2**(%%)** ** ====
270 270  
284 +==== (% style="color:red" %)**MOD=2** ====
285 +
271 271  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.
272 272  
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
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
276 276  
277 -[[image:1701155150328-206.png]]
278 278  
293 +[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image001.png]]
294 +
279 279  (% style="color:blue" %)**MOD & Alarm & Do & Limit flag:**
280 280  
281 281  (% style="color:red" %)**MOD:**
... ... @@ -314,15 +314,96 @@
314 314  
315 315  The upper limit of the threshold cannot exceed 2000mm.
316 316  
317 -
318 318  (% style="color:blue" %)**Lower limit:**
319 319  
320 320  The lower limit of the threshold cannot be less than 3mm.
321 321  
322 322  
323 -=== 2.3.3 Decode payload in The Things Network ===
338 +=== 2.3.3 Historical measuring distance, FPORT~=3 ===
324 324  
325 325  
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 +
326 326  While using TTN network, you can add the payload format to decode the payload.
327 327  
328 328  [[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"]]
... ... @@ -369,7 +369,7 @@
369 369  
370 370  After added, the sensor data arrive TTN V3, it will also arrive and show in Datacake.
371 371  
372 -[[image:image-20231129085201-1.png||height="515" width="961"]]
469 +[[image:1701152946067-561.png]]
373 373  
374 374  
375 375  == 2.5 Frequency Plans ==
... ... @@ -453,9 +453,6 @@
453 453  )))
454 454  * (((
455 455  Example 2: Downlink Payload: 0100003C  ~/~/ Set Transmit Interval (TDC) = 60 seconds
456 -
457 -
458 -
459 459  )))
460 460  
461 461  === 3.3.2 Set Interrupt Mode ===
... ... @@ -496,6 +496,7 @@
496 496  
497 497  * Example 2: Downlink Payload: 06000003  ~/~/  Set the interrupt mode to rising edge trigger
498 498  
593 +
499 499  == 3.3.3 Set work mode ==
500 500  
501 501  
... ... @@ -534,6 +534,8 @@
534 534  )))
535 535  |(% style="width:172px" %)AT+ DOL =1,1800,100,0,400|(% style="width:279px" %)Set only the upper and lower thresholds|(% style="width:118px" %)OK
536 536  
632 +
633 +
537 537  (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
538 538  |(% 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
539 539  |(% style="width:251px" %)1: Use upper and lower limits
... ... @@ -559,15 +559,8 @@
559 559  
560 560  * Example 1: Downlink Payload: 070107080064000190  **~-~-->**  AT+MOD=1,1800,100,0,400
561 561  
562 -* Example 2: Downlink Payload: 070200000064000190  **~-~-->**  AT+MOD=2,0,100,0,400
563 563  
564 -* Example 3: Downlink Payload: 0703200000064000190  **~-~-->**  AT+MOD=3,1800,100,0,400
565 565  
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 -
571 571  = 4. Battery & Power Consumption =
572 572  
573 573  
... ... @@ -604,33 +604,6 @@
604 604  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"]]
605 605  
606 606  
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 -
634 634  = 7. Trouble Shooting =
635 635  
636 636  == 7.1 AT Command input doesn't work ==
image-20231129085201-1.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -70.6 KB
Content