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

From version 118.1
edited by Xiaoling
on 2023/11/28 13:38
Change comment: Uploaded new attachment "1701149922873-259.png", version {1}
To version 125.3
edited by Xiaoling
on 2023/11/29 08:58
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -60,8 +60,6 @@
60 60  * ToF FoV: ±9°, Total 18°
61 61  * Light source: VCSEL
62 62  
63 -
64 -
65 65  == 1.4 Power Consumption ==
66 66  
67 67  
... ... @@ -75,8 +75,6 @@
75 75  * Idle: 21 mA @ 3.3v
76 76  * Max : 360 mA
77 77  
78 -
79 -
80 80  = 2. Configure DS20L to connect to LoRaWAN network =
81 81  
82 82  == 2.1 How it works ==
... ... @@ -128,6 +128,7 @@
128 128  
129 129  (% style="color:blue" %)**Step 2:**(%%) Activate on DS20L
130 130  
127 +[[image:image-20231128133704-1.png||height="189" width="441"]]
131 131  
132 132  Press the button for 5 seconds to activate the DS20L.
133 133  
... ... @@ -153,9 +153,9 @@
153 153  
154 154  Example parse in TTNv3
155 155  
156 -[[image:image-20230805103904-1.png||height="131" width="711"]]
153 +[[image:1701149922873-259.png]]
157 157  
158 -(% style="color:blue" %)**Sensor Model**(%%): For DS20L, this value is 0x24
155 +(% style="color:blue" %)**Sensor Model**(%%): For DS20L, this value is 0x21
159 159  
160 160  (% style="color:blue" %)**Firmware Version**(%%): 0x0100, Means: v1.0.0 version
161 161  
... ... @@ -209,219 +209,120 @@
209 209  === 2.3.2 Uplink Payload, FPORT~=2 ===
210 210  
211 211  
212 -(((
213 -DS20L will send this uplink **after** Device Status once join the LoRaWAN network successfully. And DS20L will:
209 +==== (% style="color:red" %)**MOD~=1**(%%) ====
214 214  
215 -periodically send this uplink every 20 minutes, this interval [[can be changed>>||anchor="H3.3.1SetTransmitIntervalTime"]].
211 +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.
216 216  
217 -Uplink Payload totals 11 bytes.
218 -)))
213 +Uplink Payload totals 10 bytes.
219 219  
220 220  (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
221 -|=(% style="width: 60px;background-color:#4F81BD;color:white" %)(((
222 -**Size(bytes)**
223 -)))|=(% 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**
224 -|(% style="width:62.5px" %)Value|(% style="width:62.5px" %)[[BAT>>||anchor="HBatteryInfo"]]|(% style="width:62.5px" %)(((
225 -[[Temperature DS18B20>>||anchor="HDS18B20Temperaturesensor"]]
226 -)))|[[Distance>>||anchor="HDistance"]]|[[Distance signal strength>>||anchor="HDistancesignalstrength"]]|(% style="width:122px" %)(((
227 -[[Interrupt flag & Interrupt_level>>||anchor="HInterruptPin26A0InterruptLevel"]]
228 -)))|(% style="width:54px" %)[[LiDAR temp>>||anchor="HLiDARtemp"]]|(% style="width:96px" %)(((
229 -[[Message Type>>||anchor="HMessageType"]]
230 -)))
216 +|(% 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**
217 +|(% 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
231 231  
232 -[[image:image-20230805104104-2.png||height="136" width="754"]]
219 +[[image:1701155076393-719.png]]
233 233  
221 +(% style="color:blue" %)**Battery Info:**
234 234  
235 -==== (% style="color:blue" %)**Battery Info**(%%) ====
223 +Check the battery voltage for DS20L
236 236  
225 +Ex1: 0x0E10 = 3600mV
237 237  
238 -Check the battery voltage for DS20L.
239 239  
240 -Ex1: 0x0B45 = 2885mV
228 +(% style="color:blue" %)**MOD & Alarm & Interrupt:**
241 241  
242 -Ex2: 0x0B49 = 2889mV
230 +(% style="color:red" %)**MOD:**
243 243  
232 +**Example: ** (0x60>>6) & 0x3f =1
244 244  
245 -==== (% style="color:blue" %)**DS18B20 Temperature sensor**(%%) ====
234 +**0x01:**  Regularly detect distance and report.
235 +**0x02: ** Uninterrupted measurement (external power supply).
246 246  
237 +(% style="color:red" %)**Alarm:**
247 247  
248 -This is optional, user can connect external DS18B20 sensor to the +3.3v, 1-wire and GND pin . and this field will report temperature.
239 +When the detection distance exceeds the limit, the alarm flag is set to 1.
249 249  
241 +(% style="color:red" %)**Interrupt:**
250 250  
251 -**Example**:
243 +Whether it is an external interrupt.
252 252  
253 -If payload is: 0105H:  (0105 & FC00 == 0), temp = 0105H /10 = 26.1 degree
254 254  
255 -If payload is: FF3FH :  (FF3F & FC00 == 1) , temp = (FF3FH - 65536)/10 = -19.3 degrees.
246 +(% style="color:blue" %)**Distance info:**
256 256  
257 -
258 -==== (% style="color:blue" %)**Distance**(%%) ====
259 -
260 -
261 -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.
262 -
263 -
264 264  **Example**:
265 265  
266 -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.
250 +If payload is: 0708H: distance = 0708H = 1800 mm
267 267  
268 268  
269 -==== (% style="color:blue" %)**Distance signal strength**(%%) ====
253 +(% style="color:blue" %)**Sensor State:**
270 270  
255 +Ex1: 0x00: Normal collection distance
271 271  
272 -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.
257 +Ex2 0x0x: Distance collection is wrong
273 273  
274 274  
275 -**Example**:
260 +(% style="color:blue" %)**Interript Count:**
276 276  
277 -If payload is: 01D7(H)=471(D), distance signal strength=471, 471>100,471≠65535, the measured value of Dist is considered credible.
262 +If payload is:000007D0H: count = 07D0H =2000
278 278  
279 -Customers can judge whether they need to adjust the environment based on the signal strength.
280 280  
281 281  
282 -**1) When the sensor detects valid data:**
266 +==== (% style="color:red" %)**MOD~=2**(%%)** ** ====
283 283  
284 -[[image:image-20230805155335-1.png||height="145" width="724"]]
268 +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.
285 285  
286 -
287 -**2) When the sensor detects invalid data:**
288 -
289 -[[image:image-20230805155428-2.png||height="139" width="726"]]
290 -
291 -
292 -**3) When the sensor is not connected:**
293 -
294 -[[image:image-20230805155515-3.png||height="143" width="725"]]
295 -
296 -
297 -==== (% style="color:blue" %)**Interrupt Pin & Interrupt Level**(%%) ====
298 -
299 -
300 -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.
301 -
302 -Note: The Internet Pin is a separate pin in the screw terminal. See pin mapping of GPIO_EXTI .
303 -
304 -**Example:**
305 -
306 -If byte[0]&0x01=0x00 : Normal uplink packet.
307 -
308 -If byte[0]&0x01=0x01 : Interrupt Uplink Packet.
309 -
310 -
311 -==== (% style="color:blue" %)**LiDAR temp**(%%) ====
312 -
313 -
314 -Characterize the internal temperature value of the sensor.
315 -
316 -**Example: **
317 -If payload is: 1C(H) <<24>>24=28(D),LiDAR temp=28℃.
318 -If payload is: F2(H) <<24>>24=-14(D),LiDAR temp=-14℃.
319 -
320 -
321 -==== (% style="color:blue" %)**Message Type**(%%) ====
322 -
323 -
324 -(((
325 -For a normal uplink payload, the message type is always 0x01.
326 -)))
327 -
328 -(((
329 -Valid Message Type:
330 -)))
331 -
332 -(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:499px" %)
333 -|=(% 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**
334 -|(% style="width:160px" %)0x01|(% style="width:163px" %)Normal Uplink|(% style="width:173px" %)Normal Uplink Payload
335 -|(% style="width:160px" %)0x02|(% style="width:163px" %)Reply configures info|(% style="width:173px" %)Configure Info Payload
336 -
337 -[[image:image-20230805150315-4.png||height="233" width="723"]]
338 -
339 -
340 -=== 2.3.3 Historical measuring distance, FPORT~=3 ===
341 -
342 -
343 -DS20L stores sensor values and users can retrieve these history values via the [[downlink command>>||anchor="H2.5.4Pollsensorvalue"]].
344 -
345 -The historical payload includes one or multiplies entries and every entry has the same payload as Real-Time measuring distance.
346 -
347 347  (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
348 -|=(% style="width: 60px;background-color:#4F81BD;color:white" %)(((
349 -**Size(bytes)**
350 -)))|=(% 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
351 -|(% style="width:62.5px" %)Value|(% style="width:62.5px" %)Interrupt flag & Interrupt_level|(% style="width:62.5px" %)(((
352 -Reserve(0xFF)
353 -)))|Distance|Distance signal strength|(% style="width:88px" %)(((
354 -LiDAR temp
355 -)))|(% style="width:85px" %)Unix TimeStamp
271 +|(% 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**
272 +|(% 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
356 356  
357 -**Interrupt flag & Interrupt level:**
274 +[[image:1701155150328-206.png]]
358 358  
359 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:480px" %)
360 -|=(% style="width: 60px;background-color:#4F81BD;color:white" %)(((
361 -**Size(bit)**
362 -)))|=(% 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**
363 -|(% 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" %)(((
364 -Interrupt flag
365 -)))
276 +(% style="color:blue" %)**MOD & Alarm & Do & Limit flag:**
366 366  
367 -* (((
368 -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.
369 -)))
278 +(% style="color:red" %)**MOD:**
370 370  
371 -For example, in the US915 band, the max payload for different DR is:
280 +**Example: ** (0x60>>6) & 0x3f =1
372 372  
373 -**a) DR0:** max is 11 bytes so one entry of data
282 +**0x01:**  Regularly detect distance and report.
283 +**0x02: ** Uninterrupted measurement (external power supply).
374 374  
375 -**b) DR1:** max is 53 bytes so devices will upload 4 entries of data (total 44 bytes)
285 +(% style="color:red" %)**Alarm:**
376 376  
377 -**c) DR2:** total payload includes 11 entries of data
287 +When the detection distance exceeds the limit, the alarm flag is set to 1.
378 378  
379 -**d) DR3:** total payload includes 22 entries of data.
289 +(% style="color:red" %)**Do:**
380 380  
381 -If DS20L doesn't have any data in the polling time. It will uplink 11 bytes of 0
291 +When the distance exceeds the set threshold, pull the Do pin high.
382 382  
293 +(% style="color:red" %)**Limit flag:**
383 383  
384 -**Downlink:**
295 +Mode for setting threshold: 0~~5
385 385  
386 -0x31 64 CC 68 0C 64 CC 69 74 05
297 +0: does not use upper and lower limits
387 387  
388 -[[image:image-20230805144936-2.png||height="113" width="746"]]
299 +1: Use upper and lower limits
389 389  
390 -**Uplink:**
301 +2: is less than the lower limit value
391 391  
392 -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
303 +3: is greater than the lower limit value
393 393  
305 +4: is less than the upper limit
394 394  
395 -**Parsed Value:**
307 +5: is greater than the upper limit
396 396  
397 -[DISTANCE , DISTANCE_SIGNAL_STRENGTH,LIDAR_TEMP,EXTI_STATUS , EXTI_FLAG , TIME]
398 398  
310 +(% style="color:blue" %)**Upper limit:**
399 399  
400 -[360,176,30,High,True,2023-08-04 02:53:00],
312 +The upper limit of the threshold cannot exceed 2000mm.
401 401  
402 -[355,168,30,Low,False,2023-08-04 02:53:29],
403 403  
404 -[245,211,30,Low,False,2023-08-04 02:54:29],
315 +(% style="color:blue" %)**Lower limit:**
405 405  
406 -[57,700,30,Low,False,2023-08-04 02:55:29],
317 +The lower limit of the threshold cannot be less than 3mm.
407 407  
408 -[361,164,30,Low,True,2023-08-04 02:56:00],
409 409  
410 -[337,184,30,Low,False,2023-08-04 02:56:40],
320 +=== 2.3.3 Decode payload in The Things Network ===
411 411  
412 -[20,4458,30,Low,False,2023-08-04 02:57:40],
413 413  
414 -[362,173,30,Low,False,2023-08-04 02:58:53],
415 -
416 -
417 -**History read from serial port:**
418 -
419 -[[image:image-20230805145056-3.png]]
420 -
421 -
422 -=== 2.3.4 Decode payload in The Things Network ===
423 -
424 -
425 425  While using TTN network, you can add the payload format to decode the payload.
426 426  
427 427  [[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"]]
... ... @@ -468,90 +468,18 @@
468 468  
469 469  After added, the sensor data arrive TTN V3, it will also arrive and show in Datacake.
470 470  
471 -[[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"]]
369 +[[image:image-20231129085201-1.png||height="515" width="961"]]
472 472  
473 473  
474 -== 2.5 Datalog Feature ==
372 +== 2.5 Frequency Plans ==
475 475  
476 476  
477 -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.
478 -
479 -
480 -=== 2.5.1 Ways to get datalog via LoRaWAN ===
481 -
482 -
483 -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.
484 -
485 -* (((
486 -a) DS20L will do an ACK check for data records sending to make sure every data arrive server.
487 -)))
488 -* (((
489 -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.
490 -)))
491 -
492 -=== 2.5.2 Unix TimeStamp ===
493 -
494 -
495 -DS20L uses Unix TimeStamp format based on
496 -
497 -[[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"]]
498 -
499 -User can get this time from link:  [[https:~~/~~/www.epochconverter.com/>>url:https://www.epochconverter.com/]] :
500 -
501 -Below is the converter example
502 -
503 -[[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"]]
504 -
505 -
506 -So, we can use AT+TIMESTAMP=1611889405 or downlink 3060137afd00 to set the current time 2021 – Jan ~-~- 29 Friday 03:03:25
507 -
508 -
509 -=== 2.5.3 Set Device Time ===
510 -
511 -
512 -User need to set (% style="color:blue" %)**SYNCMOD=1**(%%) to enable sync time via MAC command.
513 -
514 -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).
515 -
516 -(% 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.**
517 -
518 -
519 -=== 2.5.4 Poll sensor value ===
520 -
521 -
522 -Users can poll sensor values based on timestamps. Below is the downlink command.
523 -
524 -(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:425.818px" %)
525 -|(% colspan="4" style="background-color:#4f81bd; color:white; width:423px" %)**Downlink Command to poll Open/Close status (0x31)**
526 -|(% style="width:58px" %)**1byte**|(% style="width:127px" %)**4bytes**|(% style="width:124px" %)**4bytes**|(% style="width:114px" %)**1byte**
527 -|(% style="width:58px" %)31|(% style="width:127px" %)Timestamp start|(% style="width:124px" %)Timestamp end|(% style="width:114px" %)Uplink Interval
528 -
529 -(((
530 -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.
531 -)))
532 -
533 -(((
534 -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"]]
535 -)))
536 -
537 -(((
538 -Is to check 2021/11/12 12:00:00 to 2021/11/12 15:00:00's data
539 -)))
540 -
541 -(((
542 -Uplink Internal =5s,means DS20L will send one packet every 5s. range 5~~255s.
543 -)))
544 -
545 -
546 -== 2.6 Frequency Plans ==
547 -
548 -
549 549  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.
550 550  
551 551  [[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/>>http://wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/]]
552 552  
553 553  
554 -3. Configure DS20L
380 += 3. Configure DS20L =
555 555  
556 556  == 3.1 Configure Methods ==
557 557  
... ... @@ -623,7 +623,7 @@
623 623  Example 1: Downlink Payload: 0100001E  ~/~/ Set Transmit Interval (TDC) = 30 seconds
624 624  )))
625 625  * (((
626 -Example 2: Downlink Payload: 0100003C  ~/~/ Set Transmit Interval (TDC) = 60 seconds 
452 +Example 2: Downlink Payload: 0100003C  ~/~/ Set Transmit Interval (TDC) = 60 seconds
627 627  
628 628  
629 629  
... ... @@ -646,7 +646,7 @@
646 646  the mode is 0 =Disable Interrupt
647 647  )))
648 648  |(% style="width:154px" %)(((
649 -AT+INTMOD=2
475 +AT+INTMOD=3
650 650  
651 651  (default)
652 652  )))|(% style="width:196px" %)(((
... ... @@ -667,6 +667,104 @@
667 667  
668 668  * Example 2: Downlink Payload: 06000003  ~/~/  Set the interrupt mode to rising edge trigger
669 669  
496 +== 3.3.3 Set work mode ==
497 +
498 +
499 +Feature: Switch working mode
500 +
501 +(% style="color:blue" %)**AT Command: AT+MOD**
502 +
503 +(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:510px" %)
504 +|=(% 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**
505 +|(% style="width:162px" %)AT+MOD=?|(% style="width:191px" %)Get the current working mode.|(% style="width:106px" %)OK
506 +|(% style="width:162px" %)AT+MOD=1|(% style="width:191px" %)Set the working mode to Regular measurements.|(% style="width:106px" %)(((
507 +OK
508 +Attention:Take effect after ATZ
509 +)))
510 +
511 +(% style="color:blue" %)**Downlink Command:**
512 +
513 +* **Example: **0x0A00  ~/~/  Same as AT+MOD=0
514 +
515 +* **Example:** 0x0A01  ~/~/  Same as AT+MOD=1
516 +
517 +=== 3.3.4 Set threshold and threshold mode ===
518 +
519 +
520 +Feature, Set threshold and threshold mode
521 +
522 +When (% style="color:#037691" %)**AT+DOL=0,0,0,0,400**(%%) is set, No threshold is used, the sampling time is 400ms.
523 +
524 +(% style="color:blue" %)**AT Command: AT+DOL**
525 +
526 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
527 +|(% 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**
528 +|(% style="width:172px" %)AT+ DOL =?|(% style="width:279px" %)Get the current threshold mode and sampling time|(% style="width:118px" %)(((
529 +0,0,0,0,400
530 +OK
531 +)))
532 +|(% style="width:172px" %)AT+ DOL =1,1800,100,0,400|(% style="width:279px" %)Set only the upper and lower thresholds|(% style="width:118px" %)OK
533 +
534 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
535 +|(% 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
536 +|(% style="width:251px" %)1: Use upper and lower limits
537 +|(% style="width:251px" %)2: Less than the lower limit
538 +|(% style="width:251px" %)3: Greater than the lower limit
539 +|(% style="width:251px" %)4: Less than the upper limit
540 +|(% style="width:251px" %)5: Greater than the upper limit
541 +|(% style="width:226px" %)The second bit sets the upper limit value|(% style="width:251px" %)3~~2000MM
542 +|(% style="width:226px" %)The third bit sets the lower limit value|(% style="width:251px" %)3~~2000MM
543 +|(% 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
544 +|(% style="width:251px" %)1 Person or object counting statistics
545 +|(% style="width:226px" %)The fifth bit sets the sampling time|(% style="width:251px" %)(((
546 +0~~10000ms
547 +
548 +
549 +)))
550 +
551 +
552 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
553 +|(% rowspan="11" style="color:blue; width:120px" %)**
554 +
555 +
556 +
557 +
558 +
559 +
560 +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
561 +|(% style="width:251px" %)1: Use upper and lower limits
562 +|(% style="width:251px" %)2: Less than the lower limit
563 +|(% style="width:251px" %)3: Greater than the lower limit
564 +|(% style="width:251px" %)4: Less than the upper limit
565 +|(% style="width:251px" %)5: Greater than the upper limit
566 +|(% style="width:226px" %)The second bit sets the upper limit value|(% style="width:251px" %)3~~2000MM
567 +|(% style="width:226px" %)The third bit sets the lower limit value|(% style="width:251px" %)3~~2000MM
568 +|(% 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
569 +|(% style="width:251px" %)1 Person or object counting statistics
570 +|(% style="width:226px" %)The fifth bit sets the sampling time|(% style="width:251px" %)(((
571 +0~~10000ms
572 +
573 +
574 +)))
575 +
576 +
577 +
578 +(% style="color:blue" %)**Downlink Command: 0x07**
579 +
580 +Format: Command Code (0x07) followed by 9bytes.
581 +
582 +* Example 0: Downlink Payload: 070000000000000190  **~-~-->**  AT+MOD=0,0,0,0,400
583 +
584 +* Example 1: Downlink Payload: 070107080064000190  **~-~-->**  AT+MOD=1,1800,100,0,400
585 +
586 +* Example 2: Downlink Payload: 070200000064000190  **~-~-->**  AT+MOD=2,0,100,0,400
587 +
588 +* Example 3: Downlink Payload: 070300000064000190  **~-~-->**  AT+MOD=3,1800,100,0,400
589 +
590 +* Example 4: Downlink Payload: 070407080000000190  **~-~-->**  AT+MOD=4,0,100,0,400
591 +
592 +* Example 5: Downlink Payload: 070507080000000190  **~-~-->**  AT+MOD=5,1800,100,0,400
593 +
670 670  = 4. Battery & Power Consumption =
671 671  
672 672  
... ... @@ -703,6 +703,33 @@
703 703  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"]]
704 704  
705 705  
630 +== 6.2 DS20L programming line ==
631 +
632 +
633 +缺图 后续补上
634 +
635 +feature:
636 +
637 +for AT commands
638 +
639 +Update the firmware of DS20L
640 +
641 +Support interrupt mode
642 +
643 +
644 +== 6.3 LiDAR probe position ==
645 +
646 +
647 +[[image:1701155390576-216.png||height="285" width="307"]]
648 +
649 +The black oval hole in the picture is the LiDAR probe.
650 +
651 +
652 +== 6.4 Interface definition ==
653 +
654 +[[image:image-20231128151132-2.png||height="305" width="557"]]
655 +
656 +
706 706  = 7. Trouble Shooting =
707 707  
708 708  == 7.1 AT Command input doesn't work ==
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-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