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, 9 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -47,6 +47,8 @@ 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 + 50 50 == 1.3 Specification == 51 51 52 52 ... ... @@ -60,7 +60,6 @@ 60 60 * ToF FoV: ±9°, Total 18° 61 61 * Light source: VCSEL 62 62 63 -(% style="display:none" %) 64 64 65 65 66 66 == 1.4 Power Consumption == ... ... @@ -78,7 +78,6 @@ 78 78 79 79 80 80 81 - 82 82 = 2. Configure DS20L to connect to LoRaWAN network = 83 83 84 84 == 2.1 How it works == ... ... @@ -130,6 +130,7 @@ 130 130 131 131 (% style="color:blue" %)**Step 2:**(%%) Activate on DS20L 132 132 133 +[[image:image-20231128133704-1.png||height="189" width="441"]] 133 133 134 134 Press the button for 5 seconds to activate the DS20L. 135 135 ... ... @@ -155,9 +155,9 @@ 155 155 156 156 Example parse in TTNv3 157 157 158 -[[image: image-20230805103904-1.png||height="131" width="711"]]159 +[[image:1701149922873-259.png]] 159 159 160 -(% style="color:blue" %)**Sensor Model**(%%): For DS20L, this value is 0x2 4161 +(% style="color:blue" %)**Sensor Model**(%%): For DS20L, this value is 0x21 161 161 162 162 (% style="color:blue" %)**Firmware Version**(%%): 0x0100, Means: v1.0.0 version 163 163 ... ... @@ -211,219 +211,120 @@ 211 211 === 2.3.2 Uplink Payload, FPORT~=2 === 212 212 213 213 214 -((( 215 -DS20L will send this uplink **after** Device Status once join the LoRaWAN network successfully. And DS20L will: 215 +==== (% style="color:red" %)**MOD~=1**(%%) ==== 216 216 217 - periodically send thisuplinkevery20minutes, thisinterval [[can bechanged>>||anchor="H3.3.1SetTransmitIntervalTime"]].217 +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. 218 218 219 -Uplink Payload totals 11 bytes. 220 -))) 219 +Uplink Payload totals 10 bytes. 221 221 222 222 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 223 -|=(% style="width: 60px;background-color:#4F81BD;color:white" %)((( 224 -**Size(bytes)** 225 -)))|=(% 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** 226 -|(% style="width:62.5px" %)Value|(% style="width:62.5px" %)[[BAT>>||anchor="HBatteryInfo"]]|(% style="width:62.5px" %)((( 227 -[[Temperature DS18B20>>||anchor="HDS18B20Temperaturesensor"]] 228 -)))|[[Distance>>||anchor="HDistance"]]|[[Distance signal strength>>||anchor="HDistancesignalstrength"]]|(% style="width:122px" %)((( 229 -[[Interrupt flag & Interrupt_level>>||anchor="HInterruptPin26A0InterruptLevel"]] 230 -)))|(% style="width:54px" %)[[LiDAR temp>>||anchor="HLiDARtemp"]]|(% style="width:96px" %)((( 231 -[[Message Type>>||anchor="HMessageType"]] 232 -))) 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 233 233 234 -[[image: image-20230805104104-2.png||height="136" width="754"]]225 +[[image:1701155076393-719.png]] 235 235 227 +(% style="color:blue" %)**Battery Info:** 236 236 237 - ====(% style="color:blue"%)**BatteryInfo**(%%)====229 +Check the battery voltage for DS20L 238 238 231 +Ex1: 0x0E10 = 3600mV 239 239 240 -Check the battery voltage for DS20L. 241 241 242 - Ex1:0x0B45=2885mV234 +(% style="color:blue" %)**MOD & Alarm & Interrupt:** 243 243 244 - Ex2:0x0B49=2889mV236 +(% style="color:red" %)**MOD:** 245 245 238 +**Example: ** (0x60>>6) & 0x3f =1 246 246 247 -==== (% style="color:blue" %)**DS18B20 Temperature sensor**(%%) ==== 240 +**0x01:** Regularly detect distance and report. 241 +**0x02: ** Uninterrupted measurement (external power supply). 248 248 243 +(% style="color:red" %)**Alarm:** 249 249 250 - Thisisoptional,user canonnectexternal DS18B20 sensorto the+3.3v,1-wire and GND pin .andthisfieldwillreport temperature.245 +When the detection distance exceeds the limit, the alarm flag is set to 1. 251 251 247 +(% style="color:red" %)**Interrupt:** 252 252 253 - **Example**:249 +Whether it is an external interrupt. 254 254 255 -If payload is: 0105H: (0105 & FC00 == 0), temp = 0105H /10 = 26.1 degree 256 256 257 - Ifpayload is:FF3FH : (FF3F & FC00 == 1),temp= (FF3FH - 65536)/10 = -19.3 degrees.252 +(% style="color:blue" %)**Distance info:** 258 258 259 - 260 -==== (% style="color:blue" %)**Distance**(%%) ==== 261 - 262 - 263 -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. 264 - 265 - 266 266 **Example**: 267 267 268 -If the datayouget from the registeris0x0B0xEA, thedistancebetweenthe sensor and the measured object is0BEA(H)=3050 (D)/10= 305cm.256 +If payload is: 0708H: distance = 0708H = 1800 mm 269 269 270 270 271 - ====(% style="color:blue" %)**Distancesignalstrength**(%%) ====259 +(% style="color:blue" %)**Sensor State:** 272 272 261 +Ex1: 0x00: Normal collection distance 273 273 274 - Refersto the signal strength, the default output value will be between0-65535. When the distance measurement gear is fixed,the farther the distancemeasurement is, the lower the signalstrength; thelower the target reflectivity, the lower the signalstrength. When Strengthisgreater than 100 and not equal to 65535, the measured value of Dist is considered credible.263 +Ex2 0x0x: Distance collection is wrong 275 275 276 276 277 - **Example**:266 +(% style="color:blue" %)**Interript Count:** 278 278 279 -If payload is: 1D7(H)=471(D),distance signal strength=471,471>100,471≠65535, the measured value ofDistis considered credible.268 +If payload is:000007D0H: count = 07D0H =2000 280 280 281 -Customers can judge whether they need to adjust the environment based on the signal strength. 282 282 283 283 284 - **1)Whenthesensor detects validdata:**272 +==== (% style="color:red" %)**MOD~=2**(%%)** ** ==== 285 285 286 - [[image:image-20230805155335-1.png||height="145"width="724"]]274 +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 - 289 -**2) When the sensor detects invalid data:** 290 - 291 -[[image:image-20230805155428-2.png||height="139" width="726"]] 292 - 293 - 294 -**3) When the sensor is not connected:** 295 - 296 -[[image:image-20230805155515-3.png||height="143" width="725"]] 297 - 298 - 299 -==== (% style="color:blue" %)**Interrupt Pin & Interrupt Level**(%%) ==== 300 - 301 - 302 -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. 303 - 304 -Note: The Internet Pin is a separate pin in the screw terminal. See pin mapping of GPIO_EXTI . 305 - 306 -**Example:** 307 - 308 -If byte[0]&0x01=0x00 : Normal uplink packet. 309 - 310 -If byte[0]&0x01=0x01 : Interrupt Uplink Packet. 311 - 312 - 313 -==== (% style="color:blue" %)**LiDAR temp**(%%) ==== 314 - 315 - 316 -Characterize the internal temperature value of the sensor. 317 - 318 -**Example: ** 319 -If payload is: 1C(H) <<24>>24=28(D),LiDAR temp=28℃. 320 -If payload is: F2(H) <<24>>24=-14(D),LiDAR temp=-14℃. 321 - 322 - 323 -==== (% style="color:blue" %)**Message Type**(%%) ==== 324 - 325 - 326 -((( 327 -For a normal uplink payload, the message type is always 0x01. 328 -))) 329 - 330 -((( 331 -Valid Message Type: 332 -))) 333 - 334 -(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:499px" %) 335 -|=(% 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** 336 -|(% style="width:160px" %)0x01|(% style="width:163px" %)Normal Uplink|(% style="width:173px" %)Normal Uplink Payload 337 -|(% style="width:160px" %)0x02|(% style="width:163px" %)Reply configures info|(% style="width:173px" %)Configure Info Payload 338 - 339 -[[image:image-20230805150315-4.png||height="233" width="723"]] 340 - 341 - 342 -=== 2.3.3 Historical measuring distance, FPORT~=3 === 343 - 344 - 345 -DS20L stores sensor values and users can retrieve these history values via the [[downlink command>>||anchor="H2.5.4Pollsensorvalue"]]. 346 - 347 -The historical payload includes one or multiplies entries and every entry has the same payload as Real-Time measuring distance. 348 - 349 349 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 350 -|=(% style="width: 60px;background-color:#4F81BD;color:white" %)((( 351 -**Size(bytes)** 352 -)))|=(% 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 353 -|(% style="width:62.5px" %)Value|(% style="width:62.5px" %)Interrupt flag & Interrupt_level|(% style="width:62.5px" %)((( 354 -Reserve(0xFF) 355 -)))|Distance|Distance signal strength|(% style="width:88px" %)((( 356 -LiDAR temp 357 -)))|(% style="width:85px" %)Unix TimeStamp 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 358 358 359 - **Interrupt flag& Interrupt level:**280 +[[image:1701155150328-206.png]] 360 360 361 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:480px" %) 362 -|=(% style="width: 60px;background-color:#4F81BD;color:white" %)((( 363 -**Size(bit)** 364 -)))|=(% 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** 365 -|(% 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" %)((( 366 -Interrupt flag 367 -))) 282 +(% style="color:blue" %)**MOD & Alarm & Do & Limit flag:** 368 368 369 -* ((( 370 -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. 371 -))) 284 +(% style="color:red" %)**MOD:** 372 372 373 - For example,inthe US915 band, the maxpayloadfordifferent DR is:286 +**Example: ** (0x60>>6) & 0x3f =1 374 374 375 -**a) DR0:** max is 11 bytes so one entry of data 288 +**0x01:** Regularly detect distance and report. 289 +**0x02: ** Uninterrupted measurement (external power supply). 376 376 377 - **b)DR1:** max is53 bytes so devices will upload 4 entries ofdata(total 44 bytes)291 +(% style="color:red" %)**Alarm:** 378 378 379 - **c)DR2:**totalpayload includes11entriesofdata293 +When the detection distance exceeds the limit, the alarm flag is set to 1. 380 380 381 - **d)DR3:**total payload includes 22 entriesof data.295 +(% style="color:red" %)**Do:** 382 382 383 - If DS20L doesn'thave anydatainthe pollingtime.Itwill uplink11 bytes of 0297 +When the distance exceeds the set threshold, pull the Do pin high. 384 384 299 +(% style="color:red" %)**Limit flag:** 385 385 386 - **Downlink:**301 +Mode for setting threshold: **0~~5** 387 387 388 -0 x3164CC680C64CC69 74 05303 +**0:** does not use upper and lower limits 389 389 390 - [[image:image-20230805144936-2.png||height="113"width="746"]]305 +**1:** Use upper and lower limits 391 391 392 -** Uplink:**307 +**2:** is less than the lower limit value 393 393 394 - 43FF0E1000B01E64 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 6D309 +**3:** is greater than the lower limit value 395 395 311 +**4:** is less than the upper limit 396 396 397 -** ParsedValue:**313 +**5:** is greater than the upper limit 398 398 399 -[DISTANCE , DISTANCE_SIGNAL_STRENGTH,LIDAR_TEMP,EXTI_STATUS , EXTI_FLAG , TIME] 400 400 316 +(% style="color:blue" %)**Upper limit:** 401 401 402 - [360,176,30,High,True,2023-08-0402:53:00],318 +The upper limit of the threshold cannot exceed 2000mm. 403 403 404 -[355,168,30,Low,False,2023-08-04 02:53:29], 405 405 406 - [245,211,30,Low,False,2023-08-0402:54:29],321 +(% style="color:blue" %)**Lower limit:** 407 407 408 - [57,700,30,Low,False,2023-08-0402:55:29],323 +The lower limit of the threshold cannot be less than 3mm. 409 409 410 -[361,164,30,Low,True,2023-08-04 02:56:00], 411 411 412 - [337,184,30,Low,False,2023-08-0402:56:40],326 +== 2.4 Decode payload in The Things Network == 413 413 414 -[20,4458,30,Low,False,2023-08-04 02:57:40], 415 415 416 -[362,173,30,Low,False,2023-08-04 02:58:53], 417 - 418 - 419 -**History read from serial port:** 420 - 421 -[[image:image-20230805145056-3.png]] 422 - 423 - 424 -=== 2.3.4 Decode payload in The Things Network === 425 - 426 - 427 427 While using TTN network, you can add the payload format to decode the payload. 428 428 429 429 [[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"]] ... ... @@ -438,7 +438,7 @@ 438 438 ))) 439 439 440 440 441 -== 2. 4Show Data in DataCake IoT Server ==343 +== 2.5 Show Data in DataCake IoT Server == 442 442 443 443 444 444 ((( ... ... @@ -470,81 +470,9 @@ 470 470 471 471 After added, the sensor data arrive TTN V3, it will also arrive and show in Datacake. 472 472 473 -[[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"]]375 +[[image:image-20231129085201-1.png||height="515" width="961"]] 474 474 475 475 476 -== 2.5 Datalog Feature == 477 - 478 - 479 -Datalog Feature is to ensure IoT Server can get all sampling data from Sensor even if the LoRaWAN network is down. For each sampling, DS20L will store the reading for future retrieving purposes. 480 - 481 - 482 -=== 2.5.1 Ways to get datalog via LoRaWAN === 483 - 484 - 485 -Set PNACKMD=1, DS20L will wait for ACK for every uplink, when there is no LoRaWAN network, DS20L will mark these records with non-ack messages and store the sensor data, and it will send all messages (10s interval) after the network recovery. 486 - 487 -* ((( 488 -a) DS20L will do an ACK check for data records sending to make sure every data arrive server. 489 -))) 490 -* ((( 491 -b) DS20L will send data in **CONFIRMED Mode** when PNACKMD=1, but DS20L won't re-transmit the packet if it doesn't get ACK, it will just mark it as a NONE-ACK message. In a future uplink if DS20L gets a ACK, DS20L will consider there is a network connection and resend all NONE-ACK messages. 492 -))) 493 - 494 -=== 2.5.2 Unix TimeStamp === 495 - 496 - 497 -DS20L uses Unix TimeStamp format based on 498 - 499 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LHT65N%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20Manual/WebHome/image-20220523001219-11.png?width=627&height=97&rev=1.1||alt="图片-20220523001219-11.png" height="97" width="627"]] 500 - 501 -User can get this time from link: [[https:~~/~~/www.epochconverter.com/>>url:https://www.epochconverter.com/]] : 502 - 503 -Below is the converter example 504 - 505 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LHT65N%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20Manual/WebHome/image-20220523001219-12.png?width=720&height=298&rev=1.1||alt="图片-20220523001219-12.png" height="298" width="720"]] 506 - 507 - 508 -So, we can use AT+TIMESTAMP=1611889405 or downlink 3060137afd00 to set the current time 2021 – Jan ~-~- 29 Friday 03:03:25 509 - 510 - 511 -=== 2.5.3 Set Device Time === 512 - 513 - 514 -User need to set (% style="color:blue" %)**SYNCMOD=1**(%%) to enable sync time via MAC command. 515 - 516 -Once DS20L Joined LoRaWAN network, it will send the MAC command (DeviceTimeReq) and the server will reply with (DeviceTimeAns) to send the current time to DS20L. If DS20L fails to get the time from the server, DS20L will use the internal time and wait for next time request (AT+SYNCTDC to set the time request period, default is 10 days). 517 - 518 -(% style="color:red" %)**Note: LoRaWAN Server need to support LoRaWAN v1.0.3(MAC v1.0.3) or higher to support this MAC command feature, Chirpstack,TTN V3 v3 and loriot support but TTN V3 v2 doesn't support. If server doesn't support this command, it will through away uplink packet with this command, so user will lose the packet with time request for TTN V3 v2 if SYNCMOD=1.** 519 - 520 - 521 -=== 2.5.4 Poll sensor value === 522 - 523 - 524 -Users can poll sensor values based on timestamps. Below is the downlink command. 525 - 526 -(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:425.818px" %) 527 -|(% colspan="4" style="background-color:#4f81bd; color:white; width:423px" %)**Downlink Command to poll Open/Close status (0x31)** 528 -|(% style="width:58px" %)**1byte**|(% style="width:127px" %)**4bytes**|(% style="width:124px" %)**4bytes**|(% style="width:114px" %)**1byte** 529 -|(% style="width:58px" %)31|(% style="width:127px" %)Timestamp start|(% style="width:124px" %)Timestamp end|(% style="width:114px" %)Uplink Interval 530 - 531 -((( 532 -Timestamp start and Timestamp end-use Unix TimeStamp format as mentioned above. Devices will reply with all data logs during this period, using the uplink interval. 533 -))) 534 - 535 -((( 536 -For example, downlink command [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/CPL01%20LoRaWAN%20Outdoor%20PulseContact%20%20Sensor%20Manual/WebHome/image-20220518162852-1.png?rev=1.1||alt="image-20220518162852-1.png"]] 537 -))) 538 - 539 -((( 540 -Is to check 2021/11/12 12:00:00 to 2021/11/12 15:00:00's data 541 -))) 542 - 543 -((( 544 -Uplink Internal =5s,means DS20L will send one packet every 5s. range 5~~255s. 545 -))) 546 - 547 - 548 548 == 2.6 Frequency Plans == 549 549 550 550 ... ... @@ -553,7 +553,7 @@ 553 553 [[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/>>http://wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/]] 554 554 555 555 556 -3. Configure DS20L 386 += 3. Configure DS20L = 557 557 558 558 == 3.1 Configure Methods == 559 559 ... ... @@ -566,6 +566,8 @@ 566 566 567 567 * LoRaWAN Downlink. Instruction for different platforms: See [[IoT LoRaWAN Server>>http://wiki.dragino.com/xwiki/bin/view/Main/]] section. 568 568 399 + 400 + 569 569 == 3.2 General Commands == 570 570 571 571 ... ... @@ -625,7 +625,7 @@ 625 625 Example 1: Downlink Payload: 0100001E ~/~/ Set Transmit Interval (TDC) = 30 seconds 626 626 ))) 627 627 * ((( 628 -Example 2: Downlink Payload: 0100003C ~/~/ Set Transmit Interval (TDC) = 60 seconds 460 +Example 2: Downlink Payload: 0100003C ~/~/ Set Transmit Interval (TDC) = 60 seconds 629 629 630 630 631 631 ... ... @@ -648,7 +648,7 @@ 648 648 the mode is 0 =Disable Interrupt 649 649 ))) 650 650 |(% style="width:154px" %)((( 651 -AT+INTMOD= 2483 +AT+INTMOD=3 652 652 653 653 (default) 654 654 )))|(% style="width:196px" %)((( ... ... @@ -669,6 +669,103 @@ 669 669 670 670 * Example 2: Downlink Payload: 06000003 ~/~/ Set the interrupt mode to rising edge trigger 671 671 504 + 505 + 506 +=== 3.3.3 Set work mode === 507 + 508 + 509 +Feature: Switch working mode 510 + 511 +(% style="color:blue" %)**AT Command: AT+MOD** 512 + 513 +(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:510px" %) 514 +|=(% 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** 515 +|(% style="width:162px" %)AT+MOD=?|(% style="width:191px" %)Get the current working mode.|(% style="width:106px" %)OK 516 +|(% style="width:162px" %)AT+MOD=1|(% style="width:191px" %)Set the working mode to Regular measurements.|(% style="width:106px" %)((( 517 +OK 518 +Attention:Take effect after ATZ 519 +))) 520 + 521 +(% style="color:blue" %)**Downlink Command:** 522 + 523 +* **Example: **0x0A00 ~/~/ Same as AT+MOD=0 524 + 525 +* **Example:** 0x0A01 ~/~/ Same as AT+MOD=1 526 + 527 + 528 + 529 +=== 3.3.4 Set threshold and threshold mode === 530 + 531 + 532 +Feature, Set threshold and threshold mode 533 + 534 +When (% style="color:#037691" %)**AT+DOL=0,0,0,0,400**(%%) is set, No threshold is used, the sampling time is 400ms. 535 + 536 +(% style="color:blue" %)**AT Command: AT+DOL** 537 + 538 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 539 +|(% 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** 540 +|(% style="width:172px" %)AT+ DOL =?|(% style="width:279px" %)Get the current threshold mode and sampling time|(% style="width:118px" %)((( 541 +0,0,0,0,400 542 +OK 543 +))) 544 +|(% style="width:172px" %)AT+ DOL =1,1800,100,0,400|(% style="width:279px" %)Set only the upper and lower thresholds|(% style="width:118px" %)OK 545 + 546 + 547 + 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 + 562 + 563 + 564 +**AT+DOL=5,1800,0,0,400** 565 +)))|(% rowspan="6" style="width:240px" %)The first bit sets the limit mode|(% style="width:150px" %)0: Do not use upper and lower limits 566 +|(% style="width:251px" %)1: Use upper and lower limits 567 +|(% style="width:251px" %)2: Less than the lower limit 568 +|(% style="width:251px" %)3: Greater than the lower limit 569 +|(% style="width:251px" %)4: Less than the upper limit 570 +|(% style="width:251px" %)5: Greater than the upper limit 571 +|(% style="width:226px" %)The second bit sets the upper limit value|(% style="width:251px" %)3~~2000MM 572 +|(% style="width:226px" %)The third bit sets the lower limit value|(% style="width:251px" %)3~~2000MM 573 +|(% 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 574 +|(% style="width:251px" %)1 Person or object counting statistics 575 +|(% style="width:226px" %)The fifth bit sets the sampling time|(% style="width:251px" %)((( 576 +0~~10000ms 577 + 578 + 579 +))) 580 + 581 + 582 + 583 +(% style="color:blue" %)**Downlink Command: 0x07** 584 + 585 +Format: Command Code (0x07) followed by 9bytes. 586 + 587 +* Example 0: Downlink Payload: 070000000000000190 **~-~-->** AT+MOD=0,0,0,0,400 588 + 589 +* Example 1: Downlink Payload: 070107080064000190 **~-~-->** AT+MOD=1,1800,100,0,400 590 + 591 +* Example 2: Downlink Payload: 070200000064000190 **~-~-->** AT+MOD=2,0,100,0,400 592 + 593 +* Example 3: Downlink Payload: 070300000064000190 **~-~-->** AT+MOD=3,1800,100,0,400 594 + 595 +* Example 4: Downlink Payload: 070407080000000190 **~-~-->** AT+MOD=4,0,100,0,400 596 + 597 +* Example 5: Downlink Payload: 070507080000000190 **~-~-->** AT+MOD=5,1800,100,0,400 598 + 599 + 600 + 672 672 = 4. Battery & Power Consumption = 673 673 674 674 ... ... @@ -697,6 +697,8 @@ 697 697 698 698 * 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]]**. 699 699 629 + 630 + 700 700 = 6. FAQ = 701 701 702 702 == 6.1 What is the frequency plan for DS20L? == ... ... @@ -705,6 +705,33 @@ 705 705 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"]] 706 706 707 707 639 +== 6.2 DS20L programming line == 640 + 641 + 642 +缺图 后续补上 643 + 644 +feature: 645 + 646 +for AT commands 647 + 648 +Update the firmware of DS20L 649 + 650 +Support interrupt mode 651 + 652 + 653 +== 6.3 LiDAR probe position == 654 + 655 + 656 +[[image:1701155390576-216.png||height="285" width="307"]] 657 + 658 +The black oval hole in the picture is the LiDAR probe. 659 + 660 + 661 +== 6.4 Interface definition == 662 + 663 +[[image:image-20231128151132-2.png||height="305" width="557"]] 664 + 665 + 708 708 = 7. Trouble Shooting = 709 709 710 710 == 7.1 AT Command input doesn't work == ... ... @@ -757,6 +757,8 @@ 757 757 758 758 * (% style="color:red" %)**CN470**(%%): LoRaWAN CN470 band 759 759 718 + 719 + 760 760 = 9. Packing Info = 761 761 762 762 ... ... @@ -774,6 +774,8 @@ 774 774 775 775 * Weight / pcs : g 776 776 737 + 738 + 777 777 = 10. Support = 778 778 779 779
- 1701149922873-259.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoling - Size
-
... ... @@ -1,0 +1,1 @@ 1 +24.5 KB - Content
- 1701152902759-553.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoling - Size
-
... ... @@ -1,0 +1,1 @@ 1 +52.2 KB - Content
- 1701152946067-561.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoling - Size
-
... ... @@ -1,0 +1,1 @@ 1 +52.2 KB - Content
- 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-20231128133704-1.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Xiaoling - Size
-
... ... @@ -1,0 +1,1 @@ 1 +190.6 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