Changes for page DS20L -- LoRaWAN Smart Distance Detector User Manual 01
Last modified by Mengting Qiu on 2023/12/14 11:15
Summary
-
Page properties (1 modified, 0 added, 0 removed)
-
Attachments (0 modified, 0 added, 5 removed)
Details
- Page properties
-
- Content
-
... ... @@ -47,8 +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 - 52 52 == 1.3 Specification == 53 53 54 54 ... ... @@ -62,8 +62,6 @@ 62 62 * ToF FoV: ±9°, Total 18° 63 63 * Light source: VCSEL 64 64 65 - 66 - 67 67 == 1.4 Power Consumption == 68 68 69 69 ... ... @@ -77,8 +77,6 @@ 77 77 * Idle: 21 mA @ 3.3v 78 78 * Max : 360 mA 79 79 80 - 81 - 82 82 = 2. Configure DS20L to connect to LoRaWAN network = 83 83 84 84 == 2.1 How it works == ... ... @@ -212,120 +212,219 @@ 212 212 === 2.3.2 Uplink Payload, FPORT~=2 === 213 213 214 214 215 -==== (% style="color:red" %)**MOD~=1**(%%) ==== 209 +((( 210 +DS20L will send this uplink **after** Device Status once join the LoRaWAN network successfully. And DS20L will: 216 216 217 - Regularlydetect distanceandreport. When the distanceexceedsthelimit, the alarm flagisset to 1, andtheeportcan betriggered by externalinterrupts.212 +periodically send this uplink every 20 minutes, this interval [[can be changed>>||anchor="H3.3.1SetTransmitIntervalTime"]]. 218 218 219 -Uplink Payload totals 10 bytes. 214 +Uplink Payload totals 11 bytes. 215 +))) 220 220 221 221 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 222 -|(% 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** 223 -|(% 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 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 +))) 224 224 225 -[[image:1 701155076393-719.png]]229 +[[image:image-20230805104104-2.png||height="136" width="754"]] 226 226 227 -(% style="color:blue" %)**Battery Info:** 228 228 229 - CheckthevoltageforDS20L232 +==== (% style="color:blue" %)**Battery Info**(%%) ==== 230 230 231 -Ex1: 0x0E10 = 3600mV 232 232 235 +Check the battery voltage for DS20L. 233 233 234 - (% style="color:blue"%)**MOD&Alarm& Interrupt:**237 +Ex1: 0x0B45 = 2885mV 235 235 236 - (%style="color:red"%)**MOD:**239 +Ex2: 0x0B49 = 2889mV 237 237 238 -**Example: ** (0x60>>6) & 0x3f =1 239 239 240 -**0x01:** Regularly detect distance and report. 241 -**0x02: ** Uninterrupted measurement (external power supply). 242 +==== (% style="color:blue" %)**DS18B20 Temperature sensor**(%%) ==== 242 242 243 -(% style="color:red" %)**Alarm:** 244 244 245 - Whenthedetectiondistance exceeds thelimit,the alarmflagisset to 1.245 +This is optional, user can connect external DS18B20 sensor to the +3.3v, 1-wire and GND pin . and this field will report temperature. 246 246 247 -(% style="color:red" %)**Interrupt:** 248 248 249 - Whether it is an externalinterrupt.248 +**Example**: 250 250 250 +If payload is: 0105H: (0105 & FC00 == 0), temp = 0105H /10 = 26.1 degree 251 251 252 - (%style="color:blue"%)**Distanceinfo:**252 +If payload is: FF3FH : (FF3F & FC00 == 1) , temp = (FF3FH - 65536)/10 = -19.3 degrees. 253 253 254 + 255 +==== (% style="color:blue" %)**Distance**(%%) ==== 256 + 257 + 258 +Represents the distance value of the measurement output, the default unit is cm, and the value range parsed as a decimal number is 0-1200. In actual use, when the signal strength value Strength. 259 + 260 + 254 254 **Example**: 255 255 256 -If payloadis:0708H:distance=0708H =1800 mm263 +If the data you get from the register is 0x0B 0xEA, the distance between the sensor and the measured object is 0BEA(H) = 3050 (D)/10 = 305cm. 257 257 258 258 259 -(% style="color:blue" %)** SensorState:**266 +==== (% style="color:blue" %)**Distance signal strength**(%%) ==== 260 260 261 -Ex1: 0x00: Normal collection distance 262 262 263 - Ex20x0x:Distance collection iswrong269 +Refers to the signal strength, the default output value will be between 0-65535. When the distance measurement gear is fixed, the farther the distance measurement is, the lower the signal strength; the lower the target reflectivity, the lower the signal strength. When Strength is greater than 100 and not equal to 65535, the measured value of Dist is considered credible. 264 264 265 265 266 - (% style="color:blue" %)**Interript Count:**272 +**Example**: 267 267 268 -If payload is:0 00007D0H:count= 07D0H=2000274 +If payload is: 01D7(H)=471(D), distance signal strength=471, 471>100,471≠65535, the measured value of Dist is considered credible. 269 269 276 +Customers can judge whether they need to adjust the environment based on the signal strength. 270 270 271 271 272 - ====(%style="color:red"%)**MOD~=2**(%%)** ** ====279 +**1) When the sensor detects valid data:** 273 273 274 - Uninterruptedmeasurement.Whenthedistance exceeds the limit, the output IO is set highand reportsare reported every five minutes. The time can be set and powered by an external power supply.Uplink Payloadotals 11bytes.281 +[[image:image-20230805155335-1.png||height="145" width="724"]] 275 275 283 + 284 +**2) When the sensor detects invalid data:** 285 + 286 +[[image:image-20230805155428-2.png||height="139" width="726"]] 287 + 288 + 289 +**3) When the sensor is not connected:** 290 + 291 +[[image:image-20230805155515-3.png||height="143" width="725"]] 292 + 293 + 294 +==== (% style="color:blue" %)**Interrupt Pin & Interrupt Level**(%%) ==== 295 + 296 + 297 +This data field shows if this packet is generated by interrupt or not. [[Click here>>||anchor="H3.3.2SetInterruptMode"]] for the hardware and software set up. 298 + 299 +Note: The Internet Pin is a separate pin in the screw terminal. See pin mapping of GPIO_EXTI . 300 + 301 +**Example:** 302 + 303 +If byte[0]&0x01=0x00 : Normal uplink packet. 304 + 305 +If byte[0]&0x01=0x01 : Interrupt Uplink Packet. 306 + 307 + 308 +==== (% style="color:blue" %)**LiDAR temp**(%%) ==== 309 + 310 + 311 +Characterize the internal temperature value of the sensor. 312 + 313 +**Example: ** 314 +If payload is: 1C(H) <<24>>24=28(D),LiDAR temp=28℃. 315 +If payload is: F2(H) <<24>>24=-14(D),LiDAR temp=-14℃. 316 + 317 + 318 +==== (% style="color:blue" %)**Message Type**(%%) ==== 319 + 320 + 321 +((( 322 +For a normal uplink payload, the message type is always 0x01. 323 +))) 324 + 325 +((( 326 +Valid Message Type: 327 +))) 328 + 329 +(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:499px" %) 330 +|=(% style="width: 161px;background-color:#4F81BD;color:white" %)**Message Type Code**|=(% style="width: 164px;background-color:#4F81BD;color:white" %)**Description**|=(% style="width: 174px;background-color:#4F81BD;color:white" %)**Payload** 331 +|(% style="width:160px" %)0x01|(% style="width:163px" %)Normal Uplink|(% style="width:173px" %)Normal Uplink Payload 332 +|(% style="width:160px" %)0x02|(% style="width:163px" %)Reply configures info|(% style="width:173px" %)Configure Info Payload 333 + 334 +[[image:image-20230805150315-4.png||height="233" width="723"]] 335 + 336 + 337 +=== 2.3.3 Historical measuring distance, FPORT~=3 === 338 + 339 + 340 +DS20L stores sensor values and users can retrieve these history values via the [[downlink command>>||anchor="H2.5.4Pollsensorvalue"]]. 341 + 342 +The historical payload includes one or multiplies entries and every entry has the same payload as Real-Time measuring distance. 343 + 276 276 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 277 -|(% 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** 278 -|(% 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 345 +|=(% style="width: 60px;background-color:#4F81BD;color:white" %)((( 346 +**Size(bytes)** 347 +)))|=(% 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 348 +|(% style="width:62.5px" %)Value|(% style="width:62.5px" %)Interrupt flag & Interrupt_level|(% style="width:62.5px" %)((( 349 +Reserve(0xFF) 350 +)))|Distance|Distance signal strength|(% style="width:88px" %)((( 351 +LiDAR temp 352 +)))|(% style="width:85px" %)Unix TimeStamp 279 279 280 - [[image:1701155150328-206.png]]354 +**Interrupt flag & Interrupt level:** 281 281 282 -(% style="color:blue" %)**MOD & Alarm & Do & Limit flag:** 356 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:480px" %) 357 +|=(% style="width: 60px;background-color:#4F81BD;color:white" %)((( 358 +**Size(bit)** 359 +)))|=(% 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** 360 +|(% 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" %)((( 361 +Interrupt flag 362 +))) 283 283 284 -(% style="color:red" %)**MOD:** 364 +* ((( 365 +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. 366 +))) 285 285 286 - **Example:**(0x60>>6)&0x3f=1368 +For example, in the US915 band, the max payload for different DR is: 287 287 288 -**0x01:** Regularly detect distance and report. 289 -**0x02: ** Uninterrupted measurement (external power supply). 370 +**a) DR0:** max is 11 bytes so one entry of data 290 290 291 - (%style="color:red"%)**Alarm:**372 +**b) DR1:** max is 53 bytes so devices will upload 4 entries of data (total 44 bytes) 292 292 293 - Whenthe detectiondistance exceedsthelimit, thealarm flagisset to1.374 +**c) DR2:** total payload includes 11 entries of data 294 294 295 - (%style="color:red"%)**Do:**376 +**d) DR3:** total payload includes 22 entries of data. 296 296 297 - Whendistanceexceedsthesetthreshold,pull theDopinhigh.378 +If DS20L doesn't have any data in the polling time. It will uplink 11 bytes of 0 298 298 299 -(% style="color:red" %)**Limit flag:** 300 300 301 - Mode for setting threshold:0~~5**381 +**Downlink:** 302 302 303 - **0:**doesnotuseupperandlowerlimits383 +0x31 64 CC 68 0C 64 CC 69 74 05 304 304 305 - **1:** Useupper and lowerlimits385 +[[image:image-20230805144936-2.png||height="113" width="746"]] 306 306 307 -** 2:**is less than the lower limit value387 +**Uplink:** 308 308 309 - **3:**isgreaterthanthelowerlimitvalue389 +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 310 310 311 -**4:** is less than the upper limit 312 312 313 -** 5:** is greaterthan the upper limit392 +**Parsed Value:** 314 314 394 +[DISTANCE , DISTANCE_SIGNAL_STRENGTH,LIDAR_TEMP,EXTI_STATUS , EXTI_FLAG , TIME] 315 315 316 -(% style="color:blue" %)**Upper limit:** 317 317 318 - The upper limit of the threshold cannot exceed2000mm.397 +[360,176,30,High,True,2023-08-04 02:53:00], 319 319 399 +[355,168,30,Low,False,2023-08-04 02:53:29], 320 320 321 - (% style="color:blue" %)**Lowerlimit:**401 +[245,211,30,Low,False,2023-08-04 02:54:29], 322 322 323 - The lower limit of the threshold cannot beless than3mm.403 +[57,700,30,Low,False,2023-08-04 02:55:29], 324 324 405 +[361,164,30,Low,True,2023-08-04 02:56:00], 325 325 326 - === 2.3.3Decode payload in The ThingsNetwork===407 +[337,184,30,Low,False,2023-08-04 02:56:40], 327 327 409 +[20,4458,30,Low,False,2023-08-04 02:57:40], 328 328 411 +[362,173,30,Low,False,2023-08-04 02:58:53], 412 + 413 + 414 +**History read from serial port:** 415 + 416 +[[image:image-20230805145056-3.png]] 417 + 418 + 419 +=== 2.3.4 Decode payload in The Things Network === 420 + 421 + 329 329 While using TTN network, you can add the payload format to decode the payload. 330 330 331 331 [[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"]] ... ... @@ -372,7 +372,7 @@ 372 372 373 373 After added, the sensor data arrive TTN V3, it will also arrive and show in Datacake. 374 374 375 -[[image:i mage-20231129085201-1.png||height="515" width="961"]]468 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDDS75%20-%20LoRaWAN%20Distance%20Detection%20Sensor%20User%20Manual/WebHome/image-20220610165129-11.png?width=1088&height=595&rev=1.1||alt="image-20220610165129-11.png"]] 376 376 377 377 378 378 == 2.5 Frequency Plans == ... ... @@ -396,8 +396,6 @@ 396 396 397 397 * LoRaWAN Downlink. Instruction for different platforms: See [[IoT LoRaWAN Server>>http://wiki.dragino.com/xwiki/bin/view/Main/]] section. 398 398 399 - 400 - 401 401 == 3.2 General Commands == 402 402 403 403 ... ... @@ -458,9 +458,6 @@ 458 458 ))) 459 459 * ((( 460 460 Example 2: Downlink Payload: 0100003C ~/~/ Set Transmit Interval (TDC) = 60 seconds 461 - 462 - 463 - 464 464 ))) 465 465 466 466 === 3.3.2 Set Interrupt Mode === ... ... @@ -502,10 +502,9 @@ 502 502 * Example 2: Downlink Payload: 06000003 ~/~/ Set the interrupt mode to rising edge trigger 503 503 504 504 593 +== 3.3.3 Set work mode == 505 505 506 -=== 3.3.3 Set work mode === 507 507 508 - 509 509 Feature: Switch working mode 510 510 511 511 (% style="color:blue" %)**AT Command: AT+MOD** ... ... @@ -524,8 +524,6 @@ 524 524 525 525 * **Example:** 0x0A01 ~/~/ Same as AT+MOD=1 526 526 527 - 528 - 529 529 === 3.3.4 Set threshold and threshold mode === 530 530 531 531 ... ... @@ -546,20 +546,7 @@ 546 546 547 547 548 548 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 549 -|(% rowspan="11" style="color:blue; width:120px" %)((( 550 - 551 - 552 - 553 - 554 - 555 - 556 - 557 - 558 - 559 - 560 - 561 -**AT+DOL=5,1800,0,0,400** 562 -)))|(% rowspan="6" style="width:240px" %)The first bit sets the limit mode|(% style="width:150px" %)0: Do not use upper and lower limits 634 +|(% 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 563 563 |(% style="width:251px" %)1: Use upper and lower limits 564 564 |(% style="width:251px" %)2: Less than the lower limit 565 565 |(% style="width:251px" %)3: Greater than the lower limit ... ... @@ -575,8 +575,6 @@ 575 575 576 576 ))) 577 577 578 - 579 - 580 580 (% style="color:blue" %)**Downlink Command: 0x07** 581 581 582 582 Format: Command Code (0x07) followed by 9bytes. ... ... @@ -585,16 +585,8 @@ 585 585 586 586 * Example 1: Downlink Payload: 070107080064000190 **~-~-->** AT+MOD=1,1800,100,0,400 587 587 588 -* Example 2: Downlink Payload: 070200000064000190 **~-~-->** AT+MOD=2,0,100,0,400 589 589 590 -* Example 3: Downlink Payload: 070300000064000190 **~-~-->** AT+MOD=3,1800,100,0,400 591 591 592 -* Example 4: Downlink Payload: 070407080000000190 **~-~-->** AT+MOD=4,0,100,0,400 593 - 594 -* Example 5: Downlink Payload: 070507080000000190 **~-~-->** AT+MOD=5,1800,100,0,400 595 - 596 - 597 - 598 598 = 4. Battery & Power Consumption = 599 599 600 600 ... ... @@ -623,8 +623,6 @@ 623 623 624 624 * 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]]**. 625 625 626 - 627 - 628 628 = 6. FAQ = 629 629 630 630 == 6.1 What is the frequency plan for DS20L? == ... ... @@ -633,33 +633,6 @@ 633 633 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"]] 634 634 635 635 636 -== 6.2 DS20L programming line == 637 - 638 - 639 -缺图 后续补上 640 - 641 -feature: 642 - 643 -for AT commands 644 - 645 -Update the firmware of DS20L 646 - 647 -Support interrupt mode 648 - 649 - 650 -== 6.3 LiDAR probe position == 651 - 652 - 653 -[[image:1701155390576-216.png||height="285" width="307"]] 654 - 655 -The black oval hole in the picture is the LiDAR probe. 656 - 657 - 658 -== 6.4 Interface definition == 659 - 660 -[[image:image-20231128151132-2.png||height="305" width="557"]] 661 - 662 - 663 663 = 7. Trouble Shooting = 664 664 665 665 == 7.1 AT Command input doesn't work == ... ... @@ -712,8 +712,6 @@ 712 712 713 713 * (% style="color:red" %)**CN470**(%%): LoRaWAN CN470 band 714 714 715 - 716 - 717 717 = 9. Packing Info = 718 718 719 719 ... ... @@ -731,8 +731,6 @@ 731 731 732 732 * Weight / pcs : g 733 733 734 - 735 - 736 736 = 10. Support = 737 737 738 738
- 1701155076393-719.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -54.6 KB - Content
- 1701155150328-206.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -54.6 KB - Content
- 1701155390576-216.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -293.9 KB - Content
- image-20231128151132-2.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -281.2 KB - Content
- image-20231129085201-1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -70.6 KB - Content