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

From version 116.3
edited by Xiaoling
on 2023/11/13 10:38
Change comment: There is no comment for this version
To version 172.1
edited by Mengting Qiu
on 2023/12/12 12:00
Change comment: There is no comment for this version

Summary

Details

Page properties
Author
... ... @@ -1,1 +1,1 @@
1 -XWiki.Xiaoling
1 +XWiki.ting
Content
... ... @@ -8,7 +8,7 @@
8 8  
9 9  
10 10  
11 -**Table of Contents**
11 +**Table of Contents:(% style="display:none" %) (%%)**
12 12  
13 13  {{toc/}}
14 14  
... ... @@ -47,11 +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 -(% style="display:none" %)
51 -
52 52  == 1.3 Specification ==
53 53  
54 -
55 55  (% style="color:#037691" %)**LiDAR Sensor:**
56 56  
57 57  * Operation Temperature: -40 ~~ 80 °C
... ... @@ -62,15 +62,12 @@
62 62  * ToF FoV: ±9°, Total 18°
63 63  * Light source: VCSEL
64 64  
65 -(% style="display:none" %)
66 -
67 -
68 68  == 1.4 Power Consumption ==
69 69  
70 70  
71 71  (% style="color:#037691" %)**Battery Power Mode:**
72 72  
73 -* Idle: 0.003 mA @ 3.3v
67 +* Idle: 3uA @ 3.3v
74 74  * Max : 360 mA
75 75  
76 76  (% style="color:#037691" %)**Continuously mode**:
... ... @@ -78,9 +78,21 @@
78 78  * Idle: 21 mA @ 3.3v
79 79  * Max : 360 mA
80 80  
75 +== 1.5 Use Case ==
81 81  
77 +(% class="mark" %)**Regular Distance Detect**
82 82  
79 +[[image:image-20231211220922-1.png||height="352" width="605"]]
83 83  
81 +
82 +(% class="mark" %)**Counting / Alarm**
83 +
84 +[[image:image-20231211221253-2.png]]
85 +
86 +
87 +[[image:image-20231211221436-3.png]]
88 +
89 +
84 84  = 2. Configure DS20L to connect to LoRaWAN network =
85 85  
86 86  == 2.1 How it works ==
... ... @@ -99,7 +99,7 @@
99 99  
100 100  [[image:image-20231110102635-5.png||height="402" width="807"]](% style="display:none" %)
101 101  
102 -(% style="color:blue" %)**Step 1:**(%%) Create a device in TTN with the OTAA keys from DS20L.
108 +=== Step 1: Create a device in TTN with the OTAA keys from DS20L. ===
103 103  
104 104  Each DS20L is shipped with a sticker with the default device EUI as below:
105 105  
... ... @@ -106,40 +106,36 @@
106 106  [[image:image-20230426084152-1.png||alt="图片-20230426084152-1.png" height="233" width="502"]]
107 107  
108 108  
109 -You can enter this key in the LoRaWAN Server portal. Below is TTN screen shot:
115 +You can enter this key in the LoRaWAN Server portal. Below is TTN V3 screenshot:
110 110  
111 111  
112 112  (% style="color:blue" %)**Register the device**
113 113  
114 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50v2-S31-S31B%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20User%20Manual/WebHome/1654935135620-998.png?rev=1.1||alt="1654935135620-998.png"]]
120 +[[image:image-20231207144600-2.png||height="703" width="756"]]
115 115  
116 116  
117 -(% style="color:blue" %)**Add APP EUI and DEV EUI**
123 +(% style="color:blue" %)**Add DevEUI and AppKey**
118 118  
119 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50v2-S31-S31B%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20User%20Manual/WebHome/image-20220611161308-4.png?width=753&height=551&rev=1.1||alt="图片-20220611161308-4.png"]]
125 +[[image:image-20231207145121-5.png||height="540" width="756"]]
120 120  
121 121  
122 -(% style="color:blue" %)**Add APP EUI in the application**
123 123  
129 +=== Step 2: Activate DS20L ===
124 124  
125 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50v2-S31-S31B%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20User%20Manual/WebHome/image-20220611161308-5.png?width=742&height=601&rev=1.1||alt="图片-20220611161308-5.png"]]
131 +[[image:image-20231128133704-1.png||height="189" width="441"]]
126 126  
133 +Press the button for 5 seconds to activate the DS20L.
127 127  
128 -(% style="color:blue" %)**Add APP KEY**
135 +The switch is switched to (% style="color:blue" %)**E** (%%)and the external power supply is used.
129 129  
130 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50v2-S31-S31B%20LoRaWAN%20Temperature%20%26%20Humidity%20Sensor%20User%20Manual/WebHome/image-20220611161308-6.png?width=744&height=485&rev=1.1||alt="图片-20220611161308-6.png"]]
137 +The switch is switched to (% style="color:blue" %)**I** (%%)and DS20L will be power by the built-in battery.
131 131  
132 -
133 -(% style="color:blue" %)**Step 2:**(%%) Activate on DS20L
134 -
135 -
136 -Press the button for 5 seconds to activate the DS20L.
137 -
138 138  (% style="color:green" %)**Green led**(%%) will fast blink 5 times, device will enter (% style="color:blue" %)**OTA mode**(%%) for 3 seconds. And then start to JOIN LoRaWAN network. (% style="color:green" %)**Green led**(%%) will solidly turn on for 5 seconds after joined in network.
139 139  
140 140  After join success, it will start to upload messages to TTN and you can see the messages in the panel.
141 141  
142 142  
144 +
143 143  == 2.3 ​Uplink Payload ==
144 144  
145 145  === 2.3.1 Device Status, FPORT~=5 ===
... ... @@ -157,9 +157,9 @@
157 157  
158 158  Example parse in TTNv3
159 159  
160 -[[image:image-20230805103904-1.png||height="131" width="711"]]
162 +[[image:image-20231206151412-3.png||height="179" width="1070"]]
161 161  
162 -(% style="color:blue" %)**Sensor Model**(%%): For DS20L, this value is 0x24
164 +(% style="color:blue" %)**Sensor Model**(%%): For DS20L, this value is 0x21
163 163  
164 164  (% style="color:blue" %)**Firmware Version**(%%): 0x0100, Means: v1.0.0 version
165 165  
... ... @@ -213,338 +213,348 @@
213 213  === 2.3.2 Uplink Payload, FPORT~=2 ===
214 214  
215 215  
216 -(((
217 -DS20L will send this uplink **after** Device Status once join the LoRaWAN network successfully. And DS20L will:
218 +==== (% style="color:red" %)**AT+MOD~=1**(%%) ====
218 218  
219 -periodically send this uplink every 20 minutes, this interval [[can be changed>>||anchor="H3.3.1SetTransmitIntervalTime"]].
220 +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.
220 220  
221 -Uplink Payload totals 11 bytes.
222 -)))
222 +**Uplink Payload totals 10 bytes.**
223 223  
224 224  (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
225 -|=(% style="width: 60px;background-color:#4F81BD;color:white" %)(((
226 -**Size(bytes)**
227 -)))|=(% 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**
228 -|(% style="width:62.5px" %)Value|(% style="width:62.5px" %)[[BAT>>||anchor="HBatteryInfo"]]|(% style="width:62.5px" %)(((
229 -[[Temperature DS18B20>>||anchor="HDS18B20Temperaturesensor"]]
230 -)))|[[Distance>>||anchor="HDistance"]]|[[Distance signal strength>>||anchor="HDistancesignalstrength"]]|(% style="width:122px" %)(((
231 -[[Interrupt flag & Interrupt_level>>||anchor="HInterruptPin26A0InterruptLevel"]]
232 -)))|(% style="width:54px" %)[[LiDAR temp>>||anchor="HLiDARtemp"]]|(% style="width:96px" %)(((
233 -[[Message Type>>||anchor="HMessageType"]]
234 -)))
225 +|(% 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**
226 +|(% 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 235  
236 -[[image:image-20230805104104-2.png||height="136" width="754"]]
228 +**MOD+ Alarm+ Interrupt:**
237 237  
230 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:400px" %)
231 +|(% style="background-color:#4f81bd; color:White; width:50px" %)**Size(bit)**|(% style="background-color:#4f81bd; color:White; width:60px" %)**[bit7:bit6]**|(% style="background-color:#4f81bd; color:White; width:70px" %)**bit5**|(% style="background-color:#4f81bd; color:White; width:120px" %)**bit4**
232 +|(% style="width:80px" %)Value|(% style="width:80px" %)MOD|(% style="width:89px" %)Digital Interrupt
233 + |(% style="width:167px" %)(((
234 +Distance Alarm
238 238  
239 -==== (% style="color:blue" %)**Battery Info**(%%) ====
236 +0: No Alarm;
240 240  
238 +1: Alarm
239 +)))
241 241  
242 -Check the battery voltage for DS20L.
241 +Example parse in TTNv3
243 243  
244 -Ex1: 0x0B45 = 2885mV
243 +[[image:image-20231209152917-1.png||height="300" width="1172"]]
245 245  
246 -Ex2: 0x0B49 = 2889mV
245 +(% style="color:blue" %)**Battery Info:**
247 247  
247 +Check the battery voltage for DS20L
248 248  
249 -==== (% style="color:blue" %)**DS18B20 Temperature sensor**(%%) ====
249 +Ex1: 0x0E10 = 3600mV
250 250  
251 251  
252 -This is optional, user can connect external DS18B20 sensor to the +3.3v, 1-wire and GND pin . and this field will report temperature.
252 +(% style="color:blue" %)**MOD & Alarm & Interrupt:**
253 253  
254 +(% style="color:red" %)**MOD:**
254 254  
255 -**Example**:
256 +**Example: ** (0x60>>6) & 0x3f =1
256 256  
257 -If payload is: 0105H:  (0105 & FC00 == 0), temp = 0105H /10 = 26.1 degree
258 +**0x01:**  Regularly detect distance and report.
259 +**0x02: ** Uninterrupted measurement (external power supply).
258 258  
259 -If payload is: FF3FH :  (FF3F & FC00 == 1) , temp = (FF3FH - 65536)/10 = -19.3 degrees.
261 +(% style="color:red" %)**Alarm:**
260 260  
263 +When the detection distance exceeds the limit, the alarm flag is set to 1.
261 261  
262 -==== (% style="color:blue" %)**Distance**(%%) ====
265 +(% style="color:red" %)**Interrupt:**
263 263  
267 +Whether it is an external interrupt.
264 264  
265 -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.
266 266  
270 +(% style="color:blue" %)**Distance info:**
267 267  
268 268  **Example**:
269 269  
270 -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.
274 +If payload is: 0708H: distance = 0708H = 1800 mm
271 271  
272 272  
273 -==== (% style="color:blue" %)**Distance signal strength**(%%) ====
277 +(% style="color:blue" %)**Sensor State:**
274 274  
279 +Ex1: 0x00: Distance Reading is valid
275 275  
276 -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.
281 +Ex2: 0x0x: Distance Reading is invalid
277 277  
278 278  
279 -**Example**:
284 +(% style="color:blue" %)**Interrupt Count:**
280 280  
281 -If payload is: 01D7(H)=471(D), distance signal strength=471, 471>100,471≠65535, the measured value of Dist is considered credible.
286 +If payload is:000007D0H: count = 07D0H =2000
282 282  
283 -Customers can judge whether they need to adjust the environment based on the signal strength.
284 284  
285 285  
286 -**1) When the sensor detects valid data:**
290 +==== (% style="color:red" %)**AT+MOD~=2**(%%)** ** ====
287 287  
288 -[[image:image-20230805155335-1.png||height="145" width="724"]]
289 289  
293 +The power consumption of uninterrupted measurement is high, and the device needs to use external power supply.(The switch is switched to E and the external power supply is used.)
290 290  
291 -**2) When the sensor detects invalid data:**
295 +[[image:image-20231128133704-1.png||height="189" width="441"]]
292 292  
293 -[[image:image-20230805155428-2.png||height="139" width="726"]]
294 294  
298 +* **Set over-limit alarm mode: AT+DOL=3,500,244,**(% style="color:red" %)0(%%)**,120**
295 295  
296 -**3) When the sensor is not connected:**
300 +(% class="wikigeneratedid" id="HUninterruptedmeasurement.Whenthedistanceexceedsthelimit2CtheoutputIOissethighandreportsarereportedeveryfiveminutes.Thetimecanbesetandpoweredbyanexternalpowersupply.UplinkPayloadtotals11bytes." %)
301 +Continuously measurement with Alarm. When the distance exceeds the limit, the output IO high, instant alarm.
297 297  
298 -[[image:image-20230805155515-3.png||height="143" width="725"]]
303 +(% class="wikigeneratedid" %)
304 +**Uplink Payload totals 9 bytes.**
299 299  
306 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:680px" %)
307 +|(% 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" %)**2**|(% style="background-color:#4f81bd; color:white; width:70px" %)**2**|(% style="background-color:#4f81bd; color:white; width:70px" %)**2**
308 +|(% style="width:91px" %)Value|(% style="width:41px" %)BAT|(% style="width:210px" %)MOD+ DO+ Alarm+ DO flag+ Limit flag|(% style="width:74px" %)Distance |(% style="width:100px" %)Upper limit|(% style="width:119px" %)Lower limit
300 300  
301 -==== (% style="color:blue" %)**Interrupt Pin & Interrupt Level**(%%) ====
310 +**MOD+DO+ Alarm+ Do flag+ Limit flag:**
302 302  
312 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:680px" %)
313 +|(% style="background-color:#4f81bd; color:white; width:50px" %)**Size(bit)**|(% style="background-color:#4f81bd; color:white; width:60px" %)**[bit7:bit6]**|(% style="background-color:#4f81bd; color:white; width:90px" %)**bit5**|(% style="background-color:#4f81bd; color:white; width:90px" %)**bit4**|(% style="background-color:#4f81bd; color:white; width:120px" %)**bit3**|(% style="background-color:#4f81bd; color:white; width:100px" %)**[bit2:bit1:bit0]**
314 +|(% style="width:50px" %)Value|(% style="width:60px" %)MOD|(% style="width:89px" %)(((
315 +(((
316 +DO
317 +)))
303 303  
304 -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.
319 +(((
320 +0:Within limit
305 305  
306 -Note: The Internet Pin is a separate pin in the screw terminal. See pin mapping of GPIO_EXTI .
322 +1:Out of limit
323 +)))
324 +)))|(% style="width:73px" %)(((
325 +Alarm
307 307  
308 -**Example:**
327 +0: No Alarm;
309 309  
310 -If byte[0]&0x01=0x00 : Normal uplink packet.
329 +1: Alarm
330 +)))|(% style="width:150px" %)(((
331 +DO flag
311 311  
312 -If byte[0]&0x01=0x01 : Interrupt Uplink Packet.
333 +0:the over-limit alarm mode
313 313  
335 +1:the person or object count mode
336 +)))|(% style="width:103px" %)Limit flag
337 +(0~~3)
314 314  
315 -==== (% style="color:blue" %)**LiDAR temp**(%%) ====
339 +Example parse in TTNv3
316 316  
341 +[[image:image-20231209171127-3.png||height="374" width="1209"]]
317 317  
318 -Characterize the internal temperature value of the sensor.
343 +(% style="color:blue" %)**MOD & Alarm & Do & Limit flag:**
319 319  
320 -**Example: **
321 -If payload is: 1C(H) <<24>>24=28(D),LiDAR temp=28℃.
322 -If payload is: F2(H) <<24>>24=-14(D),LiDAR temp=-14℃.
345 +(% style="color:red" %)**MOD:**
323 323  
347 +**Example: ** (0x60>>6) & 0x3f =1
324 324  
325 -==== (% style="color:blue" %)**Message Type**(%%) ====
349 +**0x01:**  Regularly detect distance and report.
350 +**0x02: ** Uninterrupted measurement (external power supply).
326 326  
352 +(% style="color:red" %)**Alarm:**
327 327  
328 -(((
329 -For a normal uplink payload, the message type is always 0x01.
330 -)))
354 +When the detection distance exceeds the limit, the alarm flag is set to 1.
331 331  
332 -(((
333 -Valid Message Type:
334 -)))
356 +(% style="color:red" %)**DO:**
335 335  
336 -(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:499px" %)
337 -|=(% 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**
338 -|(% style="width:160px" %)0x01|(% style="width:163px" %)Normal Uplink|(% style="width:173px" %)Normal Uplink Payload
339 -|(% style="width:160px" %)0x02|(% style="width:163px" %)Reply configures info|(% style="width:173px" %)Configure Info Payload
358 +Shows the DO pin status, while there is alarm trigger, The DO pin will be set to high (3.3v), It will be set to 0 low level when there is no alarm.
340 340  
341 -[[image:image-20230805150315-4.png||height="233" width="723"]]
360 +(% style="color:red" %)**Threshold Flag for Alarm:**
342 342  
362 +Mode for setting threshold: **0~~3**
343 343  
344 -=== 2.3.3 Historical measuring distance, FPORT~=3 ===
364 +**0:** Distance limit range is not enabled, alarm:0.
345 345  
366 +**1:** Trigger Alarm if distance exceed the range between lower and upper.
346 346  
347 -DS20L stores sensor values and users can retrieve these history values via the [[downlink command>>||anchor="H2.5.4Pollsensorvalue"]].
368 +**2:** Trigger Alarm if distance smaller than the upper limit.
348 348  
349 -The historical payload includes one or multiplies entries and every entry has the same payload as Real-Time measuring distance.
370 +**3: **Trigger Alarm if distance bigger than the lower limit .
350 350  
351 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
352 -|=(% style="width: 60px;background-color:#4F81BD;color:white" %)(((
353 -**Size(bytes)**
354 -)))|=(% 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
355 -|(% style="width:62.5px" %)Value|(% style="width:62.5px" %)Interrupt flag & Interrupt_level|(% style="width:62.5px" %)(((
356 -Reserve(0xFF)
357 -)))|Distance|Distance signal strength|(% style="width:88px" %)(((
358 -LiDAR temp
359 -)))|(% style="width:85px" %)Unix TimeStamp
360 360  
361 -**Interrupt flag & Interrupt level:**
373 +(% style="color:blue" %)**Distance:**
362 362  
363 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:480px" %)
364 -|=(% style="width: 60px;background-color:#4F81BD;color:white" %)(((
365 -**Size(bit)**
366 -)))|=(% 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**
367 -|(% 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" %)(((
368 -Interrupt flag
369 -)))
375 + Actual sampling distance values.
370 370  
371 -* (((
372 -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.
373 -)))
377 +**Example:**
374 374  
375 -For example, in the US915 band, the max payload for different DR is:
379 +**AT+DOL=1,500,244,**(% style="color:red" %)0(%%)**,120  **
376 376  
377 -**a) DR0:** max is 11 bytes so one entry of data
381 +The distance is detected every 120ms.
378 378  
379 -**b) DR1:** max is 53 bytes so devices will upload 4 entries of data (total 44 bytes)
383 +When the actual detection value is within the range of [244mm,500mm], the data is uploaded in the normal TDC time.
380 380  
381 -**c) DR2:** total payload includes 11 entries of data
385 +When the actual detection value is outside the range of [244mm,500mm], the uplink data will be immediately alerted.
382 382  
383 -**d) DR3:** total payload includes 22 entries of data.
387 +If payload is: 0708H: distance = 0708H = 1800 mm
384 384  
385 -If DS20L doesn't have any data in the polling time. It will uplink 11 bytes of 0
386 386  
390 +(% style="color:blue" %)**Upper limit:**
387 387  
388 -**Downlink:**
392 +Show the pre-set upper limit in Hex, Unit: mm.
389 389  
390 -0x31 64 CC 68 0C 64 CC 69 74 05
394 +Ex: 01F4(H)=500mm
391 391  
392 -[[image:image-20230805144936-2.png||height="113" width="746"]]
393 393  
394 -**Uplink:**
397 +(% style="color:blue" %)**Lower limit:**
395 395  
396 -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
399 +Show the pre-set lower limit in Hex, Unit: mm.
397 397  
401 +Ex: 0xF4(H)=244mm
398 398  
399 -**Parsed Value:**
400 400  
401 -[DISTANCE , DISTANCE_SIGNAL_STRENGTH,LIDAR_TEMP,EXTI_STATUS , EXTI_FLAG , TIME]
404 +* **Set the person or object count mode: AT+DOL=1,500,244,**(% style="color:red" %)1(%%)**,120**
402 402  
406 +Continuously measurement with Alarm, detect and count people or things passing by in distance limit mode.
403 403  
404 -[360,176,30,High,True,2023-08-04 02:53:00],
408 +**Uplink Payload totals 11 bytes.**
405 405  
406 -[355,168,30,Low,False,2023-08-04 02:53:29],
410 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:680px" %)
411 +|(% 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**
412 +|(% style="width:91px" %)Value|(% style="width:41px" %)BAT|(% style="width:210px" %)MOD+ DO+ Alarm+ DO flag+ Limit flag|(% style="width:176px" %)Distance limit alarm count|(% style="width:100px" %)Upper limit|(% style="width:119px" %)Lower limit
407 407  
408 -[245,211,30,Low,False,2023-08-04 02:54:29],
414 +**MOD+DO+ Alarm+ Do flag+ Limit flag:**
409 409  
410 -[57,700,30,Low,False,2023-08-04 02:55:29],
416 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:680px" %)
417 +|(% style="background-color:#4f81bd; color:white; width:50px" %)**Size(bit)**|(% style="background-color:#4f81bd; color:white; width:60px" %)**[bit7:bit6]**|(% style="background-color:#4f81bd; color:white; width:90px" %)**bit5**|(% style="background-color:#4f81bd; color:white; width:90px" %)**bit4**|(% style="background-color:#4f81bd; color:white; width:120px" %)**bit3**|(% style="background-color:#4f81bd; color:white; width:100px" %)**[bit2:bit1:bit0]**
418 +|(% style="width:50px" %)Value|(% style="width:60px" %)MOD|(% style="width:89px" %)(((
419 +(((
420 +DO
421 +)))
411 411  
412 -[361,164,30,Low,True,2023-08-04 02:56:00],
423 +(((
424 +0:Within limit
413 413  
414 -[337,184,30,Low,False,2023-08-04 02:56:40],
426 +1:Out of limit
427 +)))
428 +)))|(% style="width:73px" %)(((
429 +Alarm
415 415  
416 -[20,4458,30,Low,False,2023-08-04 02:57:40],
431 +0: No Alarm;
417 417  
418 -[362,173,30,Low,False,2023-08-04 02:58:53],
433 +1: Alarm
434 +)))|(% style="width:150px" %)(((
435 +DO flag
419 419  
437 +0:the over-limit alarm mode
420 420  
421 -**History read from serial port:**
439 +1:the person or object count mode
440 +)))|(% style="width:103px" %)Limit flag
441 +(0~~3)
422 422  
423 -[[image:image-20230805145056-3.png]]
443 +Example parse in TTNv3
424 424  
445 +[[image:image-20231209173457-5.png||height="277" width="1098"]]
425 425  
426 -=== 2.3.4 Decode payload in The Things Network ===
447 +(% style="color:blue" %)**MOD & Alarm & Do & Limit flag:**
427 427  
449 +(% style="color:red" %)**MOD:**
428 428  
429 -While using TTN network, you can add the payload format to decode the payload.
451 +**Example: ** (0x60>>6) & 0x3f =1
430 430  
431 -[[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"]]
453 +**0x01:**  Regularly detect distance and report.
454 +**0x02: ** Uninterrupted measurement (external power supply).
432 432  
456 +(% style="color:red" %)**Alarm:**
433 433  
434 -(((
435 -The payload decoder function for TTN is here:
436 -)))
458 +When the detection distance exceeds the limit, the alarm flag is set to 1.
437 437  
438 -(((
439 -DS20L TTN Payload Decoder:  [[https:~~/~~/github.com/dragino/dragino-end-node-decoder>>https://github.com/dragino/dragino-end-node-decoder]]
440 -)))
460 +(% style="color:red" %)**Do:**
441 441  
462 +Shows the DO pin status, while there is alarm trigger, The DO pin will be set to high (3.3v), It will be set to 0 low level when there is no alarm.
442 442  
443 -== 2.4 ​Show Data in DataCake IoT Server ==
464 +(% style="color:red" %)**Threshold Flag for Alarm:**
444 444  
466 +Mode for setting threshold: **0~~3**
445 445  
446 -(((
447 -[[DATACAKE>>url:https://datacake.co/]] provides a human friendly interface to show the sensor data, once we have data in TTN, we can use [[DATACAKE>>url:https://datacake.co/]] to connect to TTN and see the data in DATACAKE. Below are the steps:
448 -)))
468 +**0:** does not use upper and lower limits
449 449  
470 +**1:** Use upper and lower limits
450 450  
451 -(((
452 -(% style="color:blue" %)**Step 1**(%%)**: Be sure that your device is programmed and properly connected to the network at this time.**
453 -)))
472 +**2:** Less than the upper limit
454 454  
455 -(((
456 -(% style="color:blue" %)**Step 2**(%%)**: To configure the Application to forward data to DATACAKE you will need to add integration. To add the DATACAKE integration, perform the following steps:**
457 -)))
474 +**3: **Greater than the lower limit
458 458  
459 459  
460 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDDS75%20-%20LoRaWAN%20Distance%20Detection%20Sensor%20User%20Manual/WebHome/1654592790040-760.png?rev=1.1||alt="1654592790040-760.png"]]
477 +(% style="color:blue" %)**Distance limit alarm count:**
461 461  
479 +People or objects are collected and counted within a limited distance.
462 462  
463 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDDS75%20-%20LoRaWAN%20Distance%20Detection%20Sensor%20User%20Manual/WebHome/1654592800389-571.png?rev=1.1||alt="1654592800389-571.png"]]
481 +The detection of a stationary person or object at each sampling time will be repeated three times, and the fourth sampling count will be added by 1.
464 464  
483 +**Example:**
465 465  
466 -(% style="color:blue" %)**Step 3**(%%)**: Create an account or log in Datacake.**
485 +**AT+DOL=1,500,244,**(% style="color:red" %)1(%%)**,120   **
467 467  
468 -(% style="color:blue" %)**Step 4**(%%)**: Search the DS20L and add DevEUI.**
487 +People or objects passing within the distance range of [244mm,500mm] are detected and counted every 120ms.
469 469  
470 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDDS75%20-%20LoRaWAN%20Distance%20Detection%20Sensor%20User%20Manual/WebHome/1654851029373-510.png?rev=1.1||alt="1654851029373-510.png"]]
489 +If payload is: 0x56H, interrupt count =0x56H =86
471 471  
472 472  
473 -After added, the sensor data arrive TTN V3, it will also arrive and show in Datacake.
492 +(% style="color:blue" %)**Upper limit:**
474 474  
475 -[[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"]]
494 +Show the pre-set upper limit in Hex, Unit: mm.
476 476  
496 +Ex: 01F4(H)=500mm
477 477  
478 -== 2.5 Datalog Feature ==
479 479  
499 +(% style="color:blue" %)**Lower limit:**
480 480  
481 -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.
501 +Shothe pre-set lower limit in Hex, Unit: mm.
482 482  
503 +Ex: 0xF4(H)=244mm
483 483  
484 -=== 2.5.1 Ways to get datalog via LoRaWAN ===
485 485  
506 +== 2.4 Decode payload in The Things Network ==
486 486  
487 -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.
488 488  
489 -* (((
490 -a) DS20L will do an ACK check for data records sending to make sure every data arrive server.
491 -)))
492 -* (((
493 -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.
494 -)))
509 +While using TTN network, you can add the payload format to decode the payload.
495 495  
496 -=== 2.5.2 Unix TimeStamp ===
511 +[[image:image-20231206143515-1.png||height="534" width="759"]]
497 497  
498 498  
499 -DS20L uses Unix TimeStamp format based on
514 +(((
515 +The payload decoder function for TTN is here:
516 +)))
500 500  
501 -[[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"]]
518 +(((
519 +DS20L TTN Payload Decoder:  [[https:~~/~~/github.com/dragino/dragino-end-node-decoder>>https://github.com/dragino/dragino-end-node-decoder]]
520 +)))
502 502  
503 -User can get this time from link:  [[https:~~/~~/www.epochconverter.com/>>url:https://www.epochconverter.com/]] :
504 504  
505 -Below is the converter example
523 +== 2.5 ​Show Data in DataCake IoT Server ==
506 506  
507 -[[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"]]
508 508  
526 +(((
527 +[[DATACAKE>>url:https://datacake.co/]] provides a human friendly interface to show the sensor data, onhuman-friendlya in TTN, we can use [[DATACAKE>>url:https://datacake.co/]] to connect to TTN and see the data in DATACAKE. Below are the steps:
528 +)))
509 509  
510 -So, we can use AT+TIMESTAMP=1611889405 or downlink 3060137afd00 to set the current time 2021 – Jan ~-~- 29 Friday 03:03:25
511 511  
531 +(((
532 +(% style="color:blue" %)**Step 1**(%%)**: Be sure that your device is programmed and properly connected to the network at this time.**
533 +)))
512 512  
513 -=== 2.5.3 Set Device Time ===
535 +(((
536 +(% style="color:blue" %)**Step 2**(%%)**: To configure the Application to forward data to DATACAKE you will need to add integration. To add the DATACAKE integration, perform the following steps:**
537 +)))
514 514  
515 515  
516 -User need to set (% style="color:blue" %)**SYNCMOD=1**(%%) to enable sync time via MAC command.
540 +[[image:image-20231207153532-6.png||height="562" width="861"]]
517 517  
518 -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).
519 519  
520 -(% 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.**
543 +[[image:image-20231207155940-8.png]]
521 521  
545 +For more detailed instructions, refer to the following instructions: [[Welcome - Datacake Docs>>url:https://docs.datacake.de/]]
522 522  
523 -=== 2.5.4 Poll sensor value ===
547 +[[image:image-20231207160733-11.png||height="429" width="759"]]
524 524  
525 525  
526 -Users can poll sensor values based on timestamps. Below is the downlink command.
550 +(% style="color:blue" %)**Step 3**(%%)**: Create an account or log in Datacake.**
527 527  
528 -(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:425.818px" %)
529 -|(% colspan="4" style="background-color:#4f81bd; color:white; width:423px" %)**Downlink Command to poll Open/Close status (0x31)**
530 -|(% style="width:58px" %)**1byte**|(% style="width:127px" %)**4bytes**|(% style="width:124px" %)**4bytes**|(% style="width:114px" %)**1byte**
531 -|(% style="width:58px" %)31|(% style="width:127px" %)Timestamp start|(% style="width:124px" %)Timestamp end|(% style="width:114px" %)Uplink Interval
552 +(% style="color:blue" %)**Step 4**(%%)**: Search the DS20L and add DevEUI.**
532 532  
533 -(((
534 -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.
535 -)))
554 +[[image:image-20231207160343-10.png||height="665" width="705"]]
536 536  
537 -(((
538 -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"]]
539 -)))
540 540  
541 -(((
542 -Is to check 2021/11/12 12:00:00 to 2021/11/12 15:00:00's data
543 -)))
557 +After added, the sensor data arrive TTN V3, it will also arrive and show in Datacake.
544 544  
545 -(((
546 -Uplink Internal =5s,means DS20L will send one packet every 5s. range 5~~255s.
547 -)))
559 +[[image:image-20231129100454-2.png||height="501" width="928"]]
548 548  
549 549  
550 550  == 2.6 Frequency Plans ==
... ... @@ -555,7 +555,7 @@
555 555  [[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/>>http://wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/]]
556 556  
557 557  
558 -3. Configure DS20L
570 += 3. Configure DS20L =
559 559  
560 560  == 3.1 Configure Methods ==
561 561  
... ... @@ -562,12 +562,11 @@
562 562  
563 563  DS20L supports below configure method:
564 564  
565 -* AT Command via Bluetooth Connection (**Recommended**): [[BLE Configure Instruction>>http://wiki.dragino.com/xwiki/bin/view/Main/BLE%20Bluetooth%20Remote%20Configure/]].
566 -
567 567  * AT Command via UART Connection : See [[UART Connection>>http://wiki.dragino.com/xwiki/bin/view/Main/UART%20Access%20for%20LoRa%20ST%20v4%20base%20model/#H2.3UARTConnectionforSN50v3basemotherboard]].
568 568  
569 569  * LoRaWAN Downlink.  Instruction for different platforms: See [[IoT LoRaWAN Server>>http://wiki.dragino.com/xwiki/bin/view/Main/]] section.
570 570  
581 +
571 571  == 3.2 General Commands ==
572 572  
573 573  
... ... @@ -585,7 +585,7 @@
585 585  == 3.3 Commands special design for DS20L ==
586 586  
587 587  
588 -These commands only valid for DS20L, as below:
599 +Below commands only valid for DS20L, as below:
589 589  
590 590  
591 591  === 3.3.1 Set Transmit Interval Time ===
... ... @@ -627,7 +627,7 @@
627 627  Example 1: Downlink Payload: 0100001E  ~/~/ Set Transmit Interval (TDC) = 30 seconds
628 628  )))
629 629  * (((
630 -Example 2: Downlink Payload: 0100003C  ~/~/ Set Transmit Interval (TDC) = 60 seconds 
641 +Example 2: Downlink Payload: 0100003C  ~/~/ Set Transmit Interval (TDC) = 60 seconds
631 631  
632 632  
633 633  
... ... @@ -650,7 +650,7 @@
650 650  the mode is 0 =Disable Interrupt
651 651  )))
652 652  |(% style="width:154px" %)(((
653 -AT+INTMOD=2
664 +AT+INTMOD=3
654 654  
655 655  (default)
656 656  )))|(% style="width:196px" %)(((
... ... @@ -671,6 +671,117 @@
671 671  
672 672  * Example 2: Downlink Payload: 06000003  ~/~/  Set the interrupt mode to rising edge trigger
673 673  
685 +=== 3.3.3 Set work mode ===
686 +
687 +
688 +Feature: Switch working mode
689 +
690 +(% style="color:blue" %)**AT Command: AT+MOD**
691 +
692 +(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:510px" %)
693 +|=(% 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**
694 +|(% style="width:162px" %)AT+MOD=?|(% style="width:191px" %)Get the current working mode.|(% style="width:106px" %)OK
695 +|(% style="width:162px" %)AT+MOD=1|(% style="width:191px" %)Set the working mode to Regular measurements.|(% style="width:106px" %)(((
696 +OK
697 +Attention:Take effect after ATZ
698 +)))
699 +
700 +(% style="color:blue" %)**Downlink Command:**
701 +
702 +* **Example: **0x0A01 ~/~/  Same as AT+MOD=1
703 +
704 +* **Example:** 0x0A02  ~/~/  Same as AT+MOD=2
705 +
706 +=== 3.3.4 Set threshold and threshold mode ===
707 +
708 +
709 +Feature, Set threshold and threshold mode
710 +
711 +When (% style="color:#037691" %)**AT+DOL=0,0,0,0,400**(%%) is set, No threshold is used, the sampling time is 400ms.
712 +
713 +(% style="color:blue" %)**AT Command: AT+DOL**
714 +
715 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
716 +|(% 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**
717 +|(% style="width:172px" %)AT+ DOL =?|(% style="width:279px" %)Get the current threshold mode and sampling time|(% style="width:118px" %)(((
718 +0,0,0,0,400
719 +OK
720 +)))
721 +|(% style="width:172px" %)AT+ DOL =1,1800,100,0,400|(% style="width:279px" %)Set only the upper and lower thresholds|(% style="width:118px" %)OK
722 +
723 +(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:510px" %)
724 +|=(% 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" %) Parameter
725 +|(% rowspan="11" style="color:blue; width:120px" %)(((
726 +
727 +
728 +
729 +
730 +
731 +
732 +
733 +
734 +
735 +
736 +
737 +**AT+DOL=1,1800,3,0,400**
738 +)))|(% rowspan="4" style="width:240px" %)(((
739 +
740 +
741 +
742 +
743 +The first bit sets the limit mode
744 +)))|(% style="width:150px" %)0: Do not use upper and lower limits
745 +|(% style="width:251px" %)1: Use upper and lower limits
746 +|(% style="width:251px" %)2:Less than the upper limit
747 +|(% style="width:251px" %)3: Greater than the lower limit
748 +|(% style="width:226px" %)The second bit sets the upper limit value|(% style="width:251px" %)3~~2000MM
749 +|(% style="width:226px" %)The third bit sets the lower limit value|(% style="width:251px" %)3~~2000MM
750 +|(% 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
751 +|(% style="width:251px" %)1 Person or object counting statistics
752 +|(% style="width:226px" %)The fifth bit sets the sampling time|(% style="width:251px" %)(((
753 +100~~10000ms
754 +
755 +
756 +)))
757 +
758 +(% style="color:blue" %)**Downlink Command: 0x07**
759 +
760 +Format: Command Code (0x07) followed by 9 bytes.
761 +
762 +If the downlink payload=**07 01 0708 0064 00 0190**, it means set the END Node's limit mode to 0x01,upper limit value to 0x0708=1800(mm), lower limit value to 0x0064=100(mm), to over-limit alarm(0x00) ,the sampling time to 0x0190=400(ms), while type code is 0x07.
763 +
764 +* Example 0: Downlink Payload: 07 00 0000 0000 00 0190  **~-~-->**  AT+MOD=0,0,0,0,400
765 +
766 +* Example 1: Downlink Payload: 070107080064000190  **~-~-->**  AT+MOD=1,1800,100,0,400
767 +
768 +* Example 2: Downlink Payload: 070200000064000190  **~-~-->**  AT+MOD=2,1800,100,0,400
769 +
770 +* Example 3: Downlink Payload: 070300000064000190  **~-~-->**  AT+MOD=3,0,100,0,400
771 +
772 +(% style="color:Red" %)**Note: The over-limit alarm is applied to MOD1 and MOD2.**
773 +
774 +**For example:**
775 +
776 +* **AT+MOD=1**
777 +
778 + **AT+DOL=1,500,244,**(% style="color:blue" %)0(%%)**,300**
779 +
780 +Send data according to the normal TDC time. If the mode limit is exceeded, the alarm flag is set to 1:
781 +
782 +[[image:image-20231211113204-2.png||height="292" width="1093"]]
783 +
784 +* **AT+MOD=2  **
785 +
786 + **AT+DOL=1,500,244,**(% style="color:blue" %)0(%%)**,300**
787 +
788 +If the mode limit is exceeded, the data is immediately uplink and the alarm flag is set to 1:
789 +
790 +[[image:image-20231211114932-3.png||height="277" width="1248"]]
791 +
792 +
793 +
794 +
795 +
674 674  = 4. Battery & Power Consumption =
675 675  
676 676  
... ... @@ -707,6 +707,33 @@
707 707  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"]]
708 708  
709 709  
832 +== 6.2 DS20L programming line ==
833 +
834 +
835 +缺图 后续补上
836 +
837 +feature:
838 +
839 +for AT commands
840 +
841 +Update the firmware of DS20L
842 +
843 +Support interrupt mode
844 +
845 +
846 +== 6.3 LiDAR probe position ==
847 +
848 +
849 +[[image:1701155390576-216.png||height="285" width="307"]]
850 +
851 +The black oval hole in the picture is the LiDAR probe.
852 +
853 +
854 +== 6.4 Interface definition ==
855 +
856 +[[image:image-20231128151132-2.png||height="305" width="557"]]
857 +
858 +
710 710  = 7. Trouble Shooting =
711 711  
712 712  == 7.1 AT Command input doesn't work ==
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
image-20231129100454-2.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +70.1 KB
Content
image-20231206143515-1.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.ting
Size
... ... @@ -1,0 +1,1 @@
1 +89.5 KB
Content
image-20231206144950-2.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.ting
Size
... ... @@ -1,0 +1,1 @@
1 +41.0 KB
Content
image-20231206151412-3.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.ting
Size
... ... @@ -1,0 +1,1 @@
1 +58.8 KB
Content
image-20231206154621-4.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.ting
Size
... ... @@ -1,0 +1,1 @@
1 +71.2 KB
Content
image-20231206194804-5.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.ting
Size
... ... @@ -1,0 +1,1 @@
1 +53.7 KB
Content
image-20231206195704-6.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.ting
Size
... ... @@ -1,0 +1,1 @@
1 +64.1 KB
Content
image-20231207142208-1.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.ting
Size
... ... @@ -1,0 +1,1 @@
1 +27.2 KB
Content
image-20231207144600-2.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.ting
Size
... ... @@ -1,0 +1,1 @@
1 +55.4 KB
Content
image-20231207144837-3.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.ting
Size
... ... @@ -1,0 +1,1 @@
1 +31.1 KB
Content
image-20231207144856-4.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.ting
Size
... ... @@ -1,0 +1,1 @@
1 +31.1 KB
Content
image-20231207145121-5.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.ting
Size
... ... @@ -1,0 +1,1 @@
1 +33.3 KB
Content
image-20231207153532-6.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.ting
Size
... ... @@ -1,0 +1,1 @@
1 +164.7 KB
Content
image-20231207154046-7.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.ting
Size
... ... @@ -1,0 +1,1 @@
1 +23.0 KB
Content
image-20231207155940-8.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.ting
Size
... ... @@ -1,0 +1,1 @@
1 +41.7 KB
Content
image-20231207160053-9.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.ting
Size
... ... @@ -1,0 +1,1 @@
1 +95.5 KB
Content
image-20231207160343-10.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.ting
Size
... ... @@ -1,0 +1,1 @@
1 +80.5 KB
Content
image-20231207160733-11.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.ting
Size
... ... @@ -1,0 +1,1 @@
1 +136.0 KB
Content
image-20231209152917-1.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.ting
Size
... ... @@ -1,0 +1,1 @@
1 +65.9 KB
Content
image-20231209155616-2.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.ting
Size
... ... @@ -1,0 +1,1 @@
1 +57.1 KB
Content
image-20231209171127-3.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.ting
Size
... ... @@ -1,0 +1,1 @@
1 +80.8 KB
Content
image-20231209171549-4.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.ting
Size
... ... @@ -1,0 +1,1 @@
1 +45.7 KB
Content
image-20231209173457-5.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.ting
Size
... ... @@ -1,0 +1,1 @@
1 +66.3 KB
Content
image-20231211113113-1.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.ting
Size
... ... @@ -1,0 +1,1 @@
1 +64.5 KB
Content
image-20231211113204-2.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.ting
Size
... ... @@ -1,0 +1,1 @@
1 +59.7 KB
Content
image-20231211114932-3.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.ting
Size
... ... @@ -1,0 +1,1 @@
1 +57.3 KB
Content
image-20231211220922-1.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Edwin
Size
... ... @@ -1,0 +1,1 @@
1 +411.2 KB
Content
image-20231211221253-2.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Edwin
Size
... ... @@ -1,0 +1,1 @@
1 +90.8 KB
Content
image-20231211221436-3.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Edwin
Size
... ... @@ -1,0 +1,1 @@
1 +64.9 KB
Content