Changes for page DS20L -- LoRaWAN Smart Distance Detector User Manual 01
Last modified by Mengting Qiu on 2023/12/14 11:15
From version 124.1
edited by Xiaoling
on 2023/11/28 15:11
on 2023/11/28 15:11
Change comment:
Uploaded new attachment "image-20231128151132-2.png", version {1}
To version 175.1
edited by Mengting Qiu
on 2023/12/12 15:15
on 2023/12/12 15:15
Change comment:
There is no comment for this version
Summary
-
Page properties (2 modified, 0 added, 0 removed)
-
Attachments (0 modified, 31 added, 0 removed)
- image-20231129085201-1.png
- image-20231129100454-2.png
- image-20231206143515-1.png
- image-20231206144950-2.png
- image-20231206151412-3.png
- image-20231206154621-4.png
- image-20231206194804-5.png
- image-20231206195704-6.png
- image-20231207142208-1.png
- image-20231207144600-2.png
- image-20231207144837-3.png
- image-20231207144856-4.png
- image-20231207145121-5.png
- image-20231207153532-6.png
- image-20231207154046-7.png
- image-20231207155940-8.png
- image-20231207160053-9.png
- image-20231207160343-10.png
- image-20231207160733-11.png
- image-20231209152917-1.png
- image-20231209155616-2.png
- image-20231209171127-3.png
- image-20231209171549-4.png
- image-20231209173457-5.png
- image-20231211113113-1.png
- image-20231211113204-2.png
- image-20231211114932-3.png
- image-20231211220922-1.png
- image-20231211221253-2.png
- image-20231211221436-3.png
- image-20231212150243-1.jpeg
Details
- Page properties
-
- Author
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. Xiaoling1 +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 ... ... @@ -49,7 +49,6 @@ 49 49 50 50 == 1.3 Specification == 51 51 52 - 53 53 (% style="color:#037691" %)**LiDAR Sensor:** 54 54 55 55 * Operation Temperature: -40 ~~ 80 °C ... ... @@ -65,7 +65,7 @@ 65 65 66 66 (% style="color:#037691" %)**Battery Power Mode:** 67 67 68 -* Idle: 0.003mA @ 3.3v67 +* Idle: 3uA @ 3.3v 69 69 * Max : 360 mA 70 70 71 71 (% style="color:#037691" %)**Continuously mode**: ... ... @@ -73,6 +73,21 @@ 73 73 * Idle: 21 mA @ 3.3v 74 74 * Max : 360 mA 75 75 75 +== 1.5 Use Case == 76 + 77 +(% class="mark" %)**Regular Distance Detect** 78 + 79 +[[image:image-20231211220922-1.png||height="352" width="605"]] 80 + 81 + 82 +(% class="mark" %)**Counting / Alarm** 83 + 84 +[[image:image-20231211221253-2.png]] 85 + 86 + 87 +[[image:image-20231211221436-3.png]] 88 + 89 + 76 76 = 2. Configure DS20L to connect to LoRaWAN network = 77 77 78 78 == 2.1 How it works == ... ... @@ -91,7 +91,7 @@ 91 91 92 92 [[image:image-20231110102635-5.png||height="402" width="807"]](% style="display:none" %) 93 93 94 - (% 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. === 95 95 96 96 Each DS20L is shipped with a sticker with the default device EUI as below: 97 97 ... ... @@ -98,41 +98,36 @@ 98 98 [[image:image-20230426084152-1.png||alt="图片-20230426084152-1.png" height="233" width="502"]] 99 99 100 100 101 -You can enter this key in the LoRaWAN Server portal. 115 +You can enter this key in the LoRaWAN Server portal. Below is TTN V3 screenshot: 102 102 103 103 104 104 (% style="color:blue" %)**Register the device** 105 105 106 -[[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"]] 107 107 108 108 109 -(% style="color:blue" %)**Add APPEUI andDEV EUI**123 +(% style="color:blue" %)**Add DevEUI and AppKey** 110 110 111 -[[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"]] 112 112 113 113 114 -(% style="color:blue" %)**Add APP EUI in the application** 115 115 129 +=== Step 2: Activate DS20L === 116 116 117 -[[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"]] 118 - 119 - 120 -(% style="color:blue" %)**Add APP KEY** 121 - 122 -[[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"]] 123 - 124 - 125 -(% style="color:blue" %)**Step 2:**(%%) Activate on DS20L 126 - 127 127 [[image:image-20231128133704-1.png||height="189" width="441"]] 128 128 129 129 Press the button for 5 seconds to activate the DS20L. 130 130 135 +The switch is switched to (% style="color:blue" %)**E** (%%)and the external power supply is used. 136 + 137 +The switch is switched to (% style="color:blue" %)**I** (%%)and DS20L will be power by the built-in battery. 138 + 131 131 (% 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. 132 132 133 133 After join success, it will start to upload messages to TTN and you can see the messages in the panel. 134 134 135 135 144 + 136 136 == 2.3 Uplink Payload == 137 137 138 138 === 2.3.1 Device Status, FPORT~=5 === ... ... @@ -150,7 +150,7 @@ 150 150 151 151 Example parse in TTNv3 152 152 153 -[[image:1 701149922873-259.png]]162 +[[image:image-20231206151412-3.png||height="179" width="1070"]] 154 154 155 155 (% style="color:blue" %)**Sensor Model**(%%): For DS20L, this value is 0x21 156 156 ... ... @@ -206,45 +206,40 @@ 206 206 === 2.3.2 Uplink Payload, FPORT~=2 === 207 207 208 208 209 -((( 210 -DS20L will send this uplink **after** Device Status once join the LoRaWAN network successfully. And DS20L will: 218 +==== (% style="color:red" %)**AT+MOD~=1**(%%) ==== 211 211 212 - periodically send thisuplinkevery20minutes, thisinterval [[can bechanged>>||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. 213 213 214 -Uplink Payload totals 11 bytes. 215 -))) 222 +**Uplink Payload totals 10 bytes.** 216 216 217 217 (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 218 -|=(% style="width: 60px;background-color:#4F81BD;color:white" %)((( 219 -**Size(bytes)** 220 -)))|=(% style="width: 30px;background-color:#4F81BD;color:white" %)**2**|=(% style="width: 80px;background-color:#4F81BD;color:white" %)**2**|=(% style="width: 50px;background-color:#4F81BD;color:white" %)**2**|=(% style="width: 70px;background-color:#4F81BD;color:white" %)**2**|=(% style="background-color:#4F81BD;color:white; width: 80px;" %)**1**|=(% style="background-color: #4F81BD;color:white; width: 70px;" %)**1**|=(% style="background-color: #4F81BD;color:white; width: 70px;" %)**1** 221 -|(% style="width:62.5px" %)Value|(% style="width:62.5px" %)[[BAT>>||anchor="HBatteryInfo"]]|(% style="width:62.5px" %)((( 222 -[[Temperature DS18B20>>||anchor="HDS18B20Temperaturesensor"]] 223 -)))|[[Distance>>||anchor="HDistance"]]|[[Distance signal strength>>||anchor="HDistancesignalstrength"]]|(% style="width:122px" %)((( 224 -[[Interrupt flag & Interrupt_level>>||anchor="HInterruptPin26A0InterruptLevel"]] 225 -)))|(% style="width:54px" %)[[LiDAR temp>>||anchor="HLiDARtemp"]]|(% style="width:96px" %)((( 226 -[[Message Type>>||anchor="HMessageType"]] 227 -))) 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 228 228 229 - ====(%style="color:red" %)**MOD~=1** ====228 +**MOD+ Alarm+ Interrupt:** 230 230 231 -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. 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 232 232 233 - UplinkPayloadtotals 10 bytes.236 +0: No Alarm; 234 234 235 -(% border="1" cellspacing="4" style="width:510px;background-color:#f2f2f2" %) 236 -|(% style="width:60px;background-color:#4F81BD;color:white" %)**Size(bytes)**|(% style="width:30px;background-color:#4F81BD;color:white" %)**2**|(% style="width:130px;background-color:#4F81BD;color:white" %)**1**|(% style="width:70px;background-color:#4F81BD;color:white" %)**2**|(% style="width:100px;background-color:#4F81BD;color:white" %)**1**|(% style="width:120px;background-color:#4F81BD;color:white" %)**4** 237 -|(% style="width:91px" %)Value|(% style="width:41px" %)[[BAT>>||anchor="HBatteryInfo"]]|(% style="width:176px" %)MOD+ Alarm+Interrupt|(% style="width:74px" %)Distance|(% style="width:100px" %)Sensor State|(% style="width:119px" %)Interrupt Count 238 +1: Alarm 239 +))) 238 238 241 +Example parse in TTNv3 239 239 240 -[[image: file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image001.png]]243 +[[image:image-20231209152917-1.png||height="300" width="1172"]] 241 241 242 -(% style="color:blue" %)**Battery Info** 245 +(% style="color:blue" %)**Battery Info:** 243 243 244 244 Check the battery voltage for DS20L 245 245 246 246 Ex1: 0x0E10 = 3600mV 247 247 251 + 248 248 (% style="color:blue" %)**MOD & Alarm & Interrupt:** 249 249 250 250 (% style="color:red" %)**MOD:** ... ... @@ -262,36 +262,80 @@ 262 262 263 263 Whether it is an external interrupt. 264 264 265 -(% style="color:blue" %)**Distance info** 266 266 270 +(% style="color:blue" %)**Distance info:** 271 + 267 267 **Example**: 268 268 269 269 If payload is: 0708H: distance = 0708H = 1800 mm 270 270 271 -(% style="color:blue" %)**Sensor State** 272 272 273 - Ex1:0x00: Normalctiondistance277 +(% style="color:blue" %)**Sensor State:** 274 274 275 -Ex 20x0x: Distancecollection iswrong279 +Ex1: 0x00: Distance Reading is valid 276 276 277 - (%style="color:blue"%)**Interript Count**281 +Ex2: 0x0x: Distance Reading is invalid 278 278 283 + 284 +(% style="color:blue" %)**Interrupt Count:** 285 + 279 279 If payload is:000007D0H: count = 07D0H =2000 280 280 281 281 282 282 290 +==== (% style="color:red" %)**AT+MOD~=2**(%%)** ** ==== 283 283 284 -==== (% style="color:red" %)**MOD=2** ==== 285 285 286 - Uninterrupted measurement.When the distance exceeds the limit, theoutputIO issethigh and reportsarereported everyfive minutes.timecanbesetandpoweredbyan external power supply.UplinkPayload totals11bytes.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.) 287 287 288 -(% border="1" cellspacing="4" style="width:510px;background-color:#f2f2f2" %) 289 -|(% style="width:70px;background-color:#4F81BD;color:white" %)**Size(bytes)**|(% style="width:40px;background-color:#4F81BD;color:white" %)**2**|(% style="width:130px;background-color:#4F81BD;color:white" %)**1**|(% style="width:130px;background-color:#4F81BD;color:white" %)**4**|(% style="width:70px;background-color:#4F81BD;color:white" %)**2**|(% style="width:70px;background-color:#4F81BD;color:white" %)**2** 290 -|(% style="width:91px" %)Value|(% style="width:41px" %)[[BAT>>||anchor="HBatteryInfo"]]|(% style="width:176px" %)MOD+Alarm+Do+Limit flag|(% style="width:74px" %)Distance Limit Alarm count|(% style="width:100px" %)Upper limit|(% style="width:119px" %)Lower limit 295 +[[image:image-20231128133704-1.png||height="189" width="441"]] 291 291 292 292 293 - [[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image001.png]]298 +* **Set over-limit alarm mode: AT+DOL=3,500,244,**(% style="color:red" %)0(%%)**,120** 294 294 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. 302 + 303 +(% class="wikigeneratedid" %) 304 +**Uplink Payload totals 9 bytes.** 305 + 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 309 + 310 +**MOD+DO+ Alarm+ Do flag+ Limit flag:** 311 + 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 +))) 318 + 319 +((( 320 +0:Within limit 321 + 322 +1:Out of limit 323 +))) 324 +)))|(% style="width:73px" %)((( 325 +Alarm 326 + 327 +0: No Alarm; 328 + 329 +1: Alarm 330 +)))|(% style="width:150px" %)((( 331 +DO flag 332 + 333 +0:the over-limit alarm mode 334 + 335 +1:the person or object count mode 336 +)))|(% style="width:103px" %)Limit flag 337 +(0~~3) 338 + 339 +Example parse in TTNv3 340 + 341 +[[image:image-20231209171127-3.png||height="374" width="1209"]] 342 + 295 295 (% style="color:blue" %)**MOD & Alarm & Do & Limit flag:** 296 296 297 297 (% style="color:red" %)**MOD:** ... ... @@ -305,124 +305,162 @@ 305 305 306 306 When the detection distance exceeds the limit, the alarm flag is set to 1. 307 307 308 -(% style="color:red" %)**D o:**356 +(% style="color:red" %)**DO:** 309 309 310 - Whenthedistance exceeds the set threshold,pull theDo pinhigh.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. 311 311 312 -(% style="color:red" %)** Limitflag:**360 +(% style="color:red" %)**Threshold Flag for Alarm:** 313 313 314 -Mode for setting threshold: 0~~ 5362 +Mode for setting threshold: **0~~3** 315 315 316 -0: doesotuseupperandlowerlimits364 +**0:** Distance limit range is not enabled, alarm:0. 317 317 318 -1: Useupperandlowerlimits366 +**1:** Trigger Alarm if distance exceed the range between lower and upper. 319 319 320 -2: is le ssthan thelower limitvalue368 +**2:** Trigger Alarm if distance smaller than the upper limit. 321 321 322 -3: i sgreater than the lower limitvalue370 +**3: **Trigger Alarm if distance bigger than the lower limit . 323 323 324 -4: is less than the upper limit 325 325 326 - 5:isgreaterthan theupperlimit373 +(% style="color:blue" %)**Distance:** 327 327 375 + Actual sampling distance values. 328 328 377 +**Example:** 378 + 379 +**AT+DOL=1,500,244,**(% style="color:red" %)0(%%)**,120 ** 380 + 381 +The distance is detected every 120ms. 382 + 383 +When the actual detection value is within the range of [244mm,500mm], the data is uploaded in the normal TDC time. 384 + 385 +When the actual detection value is outside the range of [244mm,500mm], the uplink data will be immediately alerted. 386 + 387 +If payload is: 0708H: distance = 0708H = 1800 mm 388 + 389 + 329 329 (% style="color:blue" %)**Upper limit:** 330 330 331 - The upper limitofthethreshold cannotexceed 2000mm.392 +Show the pre-set upper limit in Hex, Unit: mm. 332 332 394 +Ex: 01F4(H)=500mm 395 + 396 + 333 333 (% style="color:blue" %)**Lower limit:** 334 334 335 - The lower limitofthethreshold cannotbe less than 3mm.399 +Show the pre-set lower limit in Hex, Unit: mm. 336 336 401 +Ex: 0xF4(H)=244mm 337 337 338 -=== 2.3.3 Historical measuring distance, FPORT~=3 === 339 339 404 +* **Set the person or object count mode: AT+DOL=1,500,244,**(% style="color:red" %)1(%%)**,120** 340 340 341 - DS20L storessensorvaluesanduserscanretrievethese historyvaluesvia the [[downlinkcommand>>||anchor="H2.5.4Pollsensorvalue"]].406 +Continuously measurement with Alarm, detect and count people or things passing by in distance limit mode. 342 342 343 - The historicalpayloadincludesone or multipliesentriesand everyentry has theame payload as Real-Time measuring distance.408 +**Uplink Payload totals 11 bytes.** 344 344 345 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 346 -|=(% style="width: 60px;background-color:#4F81BD;color:white" %)((( 347 -**Size(bytes)** 348 -)))|=(% style="width: 80px;background-color:#4F81BD;color:white" %)1|=(% style="width: 80px;background-color:#4F81BD;color:white" %)**1**|=(% style="width: 50px;background-color:#4F81BD;color:white" %)**2**|=(% style="width: 70px;background-color:#4F81BD;color:white" %)**2**|=(% style="background-color:#4F81BD; color: white; width: 85px;" %)**1**|=(% style="background-color: #4F81BD; color: white; width: 85px;" %)4 349 -|(% style="width:62.5px" %)Value|(% style="width:62.5px" %)Interrupt flag & Interrupt_level|(% style="width:62.5px" %)((( 350 -Reserve(0xFF) 351 -)))|Distance|Distance signal strength|(% style="width:88px" %)((( 352 -LiDAR temp 353 -)))|(% style="width:85px" %)Unix TimeStamp 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 354 354 355 -** Interruptflag& Interruptlevel:**414 +**MOD+DO+ Alarm+ Do flag+ Limit flag:** 356 356 357 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:480px" %) 358 -|=(% style="width: 60px;background-color:#4F81BD;color:white" %)((( 359 -**Size(bit)** 360 -)))|=(% style="width: 90px;background-color:#4F81BD;color:white" %)**bit7**|=(% style="width: 90px;background-color:#4F81BD;color:white" %)**bit6**|=(% style="width: 60px;background-color:#4F81BD;color:white" %)**[bit5:bit2]**|=(% style="width: 90px; background-color: #4F81BD; color: white;" %)**bit1**|=(% style="background-color: #4F81BD; color: white; width: 90px;" %)**bit0** 361 -|(% style="width:62.5px" %)Value|(% style="width:62.5px" %)No ACK message|(% style="width:62.5px" %)Poll Message Flag|Reserve|(% style="width:91px" %)Interrupt level|(% style="width:88px" %)((( 362 -Interrupt flag 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 363 363 ))) 364 364 365 -* ((( 366 -Each data entry is 11 bytes and has the same structure as [[Uplink Payload>>||anchor="H2.3.2UplinkPayload2CFPORT3D2"]], to save airtime and battery, DS20L will send max bytes according to the current DR and Frequency bands. 423 +((( 424 +0:Within limit 425 + 426 +1:Out of limit 367 367 ))) 428 +)))|(% style="width:73px" %)((( 429 +Alarm 368 368 369 - Forexample, in the US915 band, the max payload fordifferent DR is:431 +0: No Alarm; 370 370 371 -**a) DR0:** max is 11 bytes so one entry of data 433 +1: Alarm 434 +)))|(% style="width:150px" %)((( 435 +DO flag 372 372 373 - **b) DR1:** max is 53 bytessodevices willupload 4 entriesofdata (total 44 bytes)437 +0:the over-limit alarm mode 374 374 375 -**c) DR2:** total payload includes 11 entries of data 439 +1:the person or object count mode 440 +)))|(% style="width:103px" %)Limit flag 441 +(0~~3) 376 376 377 - **d) DR3:** total payloadincludes22 entries of data.443 +Example parse in TTNv3 378 378 379 - If DS20L doesn't havey data in thepollingime.Itwill uplink 11 bytes of0445 +[[image:image-20231209173457-5.png||height="277" width="1098"]] 380 380 447 +(% style="color:blue" %)**MOD & Alarm & Do & Limit flag:** 381 381 382 -**D ownlink:**449 +(% style="color:red" %)**MOD:** 383 383 384 - 0x3164CC680C64CC69 7405451 +**Example: ** (0x60>>6) & 0x3f =1 385 385 386 -[[image:image-20230805144936-2.png||height="113" width="746"]] 453 +**0x01:** Regularly detect distance and report. 454 +**0x02: ** Uninterrupted measurement (external power supply). 387 387 388 -** Uplink:**456 +(% style="color:red" %)**Alarm:** 389 389 390 - 43FF0E1000B01E64CC680C40FF0D DE 00 A81E 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 6D458 +When the detection distance exceeds the limit, the alarm flag is set to 1. 391 391 460 +(% style="color:red" %)**Do:** 392 392 393 - **ParsedValue:**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. 394 394 395 - [DISTANCE,DISTANCE_SIGNAL_STRENGTH,LIDAR_TEMP,EXTI_STATUS, EXTI_FLAG,TIME]464 +(% style="color:red" %)**Threshold Flag for Alarm:** 396 396 466 +Mode for setting threshold: **0~~3** 397 397 398 - [360,176,30,High,True,2023-08-0402:53:00],468 +**0:** does not use upper and lower limits 399 399 400 - [355,168,30,Low,False,2023-08-0402:53:29],470 +**1:** Use upper and lower limits 401 401 402 - [245,211,30,Low,False,2023-08-0402:54:29],472 +**2:** Less than the upper limit 403 403 404 - [57,700,30,Low,False,2023-08-0402:55:29],474 +**3: **Greater than the lower limit 405 405 406 -[361,164,30,Low,True,2023-08-04 02:56:00], 407 407 408 - [337,184,30,Low,False,2023-08-0402:56:40],477 +(% style="color:blue" %)**Distance limit alarm count:** 409 409 410 - [20,4458,30,Low,False,2023-08-0402:57:40],479 +People or objects are collected and counted within a limited distance. 411 411 412 - [362,173,30,Low,False,2023-08-0402:58:53],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. 413 413 483 +**Example:** 414 414 415 -** Historyreadfromserial port:**485 +**AT+DOL=1,500,244,**(% style="color:red" %)1(%%)**,120 ** 416 416 417 - [[image:image-20230805145056-3.png]]487 +People or objects passing within the distance range of [244mm,500mm] are detected and counted every 120ms. 418 418 489 +If payload is: 0x56H, interrupt count =0x56H =86 419 419 420 -=== 2.3.4 Decode payload in The Things Network === 421 421 492 +(% style="color:blue" %)**Upper limit:** 422 422 494 +Show the pre-set upper limit in Hex, Unit: mm. 495 + 496 +Ex: 01F4(H)=500mm 497 + 498 + 499 +(% style="color:blue" %)**Lower limit:** 500 + 501 +Show the pre-set lower limit in Hex, Unit: mm. 502 + 503 +Ex: 0xF4(H)=244mm 504 + 505 + 506 +== 2.4 Decode payload in The Things Network == 507 + 508 + 423 423 While using TTN network, you can add the payload format to decode the payload. 424 424 425 -[[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"]]511 +[[image:image-20231206143515-1.png||height="534" width="759"]] 426 426 427 427 428 428 ((( ... ... @@ -434,11 +434,11 @@ 434 434 ))) 435 435 436 436 437 -== 2. 4Show Data in DataCake IoT Server ==523 +== 2.5 Show Data in DataCake IoT Server == 438 438 439 439 440 440 ((( 441 -[[DATACAKE>>url:https://datacake.co/]] provides a human friendly interface to show the sensor data, on ce wehavetain TTN, we can use [[DATACAKE>>url:https://datacake.co/]] to connect to TTN and see the data in DATACAKE. Below are the steps: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: 442 442 ))) 443 443 444 444 ... ... @@ -451,25 +451,29 @@ 451 451 ))) 452 452 453 453 454 -[[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"]]540 +[[image:image-20231207153532-6.png||height="562" width="861"]] 455 455 456 456 457 -[[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"]]543 +[[image:image-20231207155940-8.png]] 458 458 545 +For more detailed instructions, refer to the following instructions: [[Welcome - Datacake Docs>>url:https://docs.datacake.de/]] 459 459 547 +[[image:image-20231207160733-11.png||height="429" width="759"]] 548 + 549 + 460 460 (% style="color:blue" %)**Step 3**(%%)**: Create an account or log in Datacake.** 461 461 462 462 (% style="color:blue" %)**Step 4**(%%)**: Search the DS20L and add DevEUI.** 463 463 464 -[[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"]]554 +[[image:image-20231207160343-10.png||height="665" width="705"]] 465 465 466 466 467 467 After added, the sensor data arrive TTN V3, it will also arrive and show in Datacake. 468 468 469 -[[image: 1701152946067-561.png]]559 +[[image:image-20231129100454-2.png||height="501" width="928"]] 470 470 471 471 472 -== 2. 5Frequency Plans ==562 +== 2.6 Frequency Plans == 473 473 474 474 475 475 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. ... ... @@ -484,10 +484,8 @@ 484 484 485 485 DS20L supports below configure method: 486 486 487 -* AT Command via BluetoothConnection(**Recommended**):[[BLEConfigure Instruction>>http://wiki.dragino.com/xwiki/bin/view/Main/BLE%20Bluetooth%20Remote%20Configure/]].577 +* 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.5UARTConnectionforDS20Lmotherboard]]. 488 488 489 -* 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]]. 490 - 491 491 * LoRaWAN Downlink. Instruction for different platforms: See [[IoT LoRaWAN Server>>http://wiki.dragino.com/xwiki/bin/view/Main/]] section. 492 492 493 493 == 3.2 General Commands == ... ... @@ -507,7 +507,7 @@ 507 507 == 3.3 Commands special design for DS20L == 508 508 509 509 510 - Thesecommands only valid for DS20L, as below:598 +Below commands only valid for DS20L, as below: 511 511 512 512 513 513 === 3.3.1 Set Transmit Interval Time === ... ... @@ -550,6 +550,9 @@ 550 550 ))) 551 551 * ((( 552 552 Example 2: Downlink Payload: 0100003C ~/~/ Set Transmit Interval (TDC) = 60 seconds 641 + 642 + 643 + 553 553 ))) 554 554 555 555 === 3.3.2 Set Interrupt Mode === ... ... @@ -590,27 +590,32 @@ 590 590 591 591 * Example 2: Downlink Payload: 06000003 ~/~/ Set the interrupt mode to rising edge trigger 592 592 684 +=== 3.3.3 Set work mode === 593 593 594 -== 3.3.3 Set work mode == 595 595 596 - 597 597 Feature: Switch working mode 598 598 599 599 (% style="color:blue" %)**AT Command: AT+MOD** 600 600 601 -(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:5 10px" %)691 +(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:580px" %) 602 602 |=(% 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** 603 603 |(% style="width:162px" %)AT+MOD=?|(% style="width:191px" %)Get the current working mode.|(% style="width:106px" %)OK 604 604 |(% style="width:162px" %)AT+MOD=1|(% style="width:191px" %)Set the working mode to Regular measurements.|(% style="width:106px" %)((( 605 605 OK 606 -Attention:Take effect after ATZ 696 +Attention: Take effect after ATZ 607 607 ))) 698 +|(% style="width:162px" %)AT+MOD=2|(% style="width:191px" %)Set the working mode to((( 699 +Continuously measurement with Alarm. 700 +)))|(% style="width:191px" %)((( 701 +OK 702 +Attention: Take effect after ATZ 703 +))) 608 608 609 609 (% style="color:blue" %)**Downlink Command:** 610 610 611 -* **Example: **0x0A0 0~/~/ Same as AT+MOD=0707 +* **Example: **0x0A01 ~/~/ Same as AT+MOD=1 612 612 613 -* **Example:** 0x0A0 1~/~/ Same as AT+MOD=1709 +* **Example:** 0x0A02 ~/~/ Same as AT+MOD=2 614 614 615 615 === 3.3.4 Set threshold and threshold mode === 616 616 ... ... @@ -629,21 +629,37 @@ 629 629 ))) 630 630 |(% style="width:172px" %)AT+ DOL =1,1800,100,0,400|(% style="width:279px" %)Set only the upper and lower thresholds|(% style="width:118px" %)OK 631 631 728 +(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:510px" %) 729 +|=(% 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 730 +|(% rowspan="11" style="color:blue; width:120px" %)((( 731 + 632 632 633 633 634 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %) 635 -|(% 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 734 + 735 + 736 + 737 + 738 + 739 + 740 + 741 + 742 +**AT+DOL=1,1800,3,0,400** 743 +)))|(% rowspan="4" style="width:240px" %)((( 744 + 745 + 746 + 747 + 748 +The first bit sets the limit mode 749 +)))|(% style="width:150px" %)0: Do not use upper and lower limits 636 636 |(% style="width:251px" %)1: Use upper and lower limits 637 -|(% style="width:251px" %)2: lower limit751 +|(% style="width:251px" %)2:Less than the upper limit 638 638 |(% style="width:251px" %)3: Greater than the lower limit 639 -|(% style="width:251px" %)4: Less than the upper limit 640 -|(% style="width:251px" %)5: Greater than the upper limit 641 641 |(% style="width:226px" %)The second bit sets the upper limit value|(% style="width:251px" %)3~~2000MM 642 642 |(% style="width:226px" %)The third bit sets the lower limit value|(% style="width:251px" %)3~~2000MM 643 643 |(% 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 644 644 |(% style="width:251px" %)1 Person or object counting statistics 645 645 |(% style="width:226px" %)The fifth bit sets the sampling time|(% style="width:251px" %)((( 646 -0~~10000ms 758 +100~~10000ms 647 647 648 648 649 649 ))) ... ... @@ -650,14 +650,42 @@ 650 650 651 651 (% style="color:blue" %)**Downlink Command: 0x07** 652 652 653 -Format: Command Code (0x07) followed by 9bytes. 765 +Format: Command Code (0x07) followed by 9 bytes. 654 654 655 - *Example0: DownlinkPayload:070000000000000190**~-~-->** AT+MOD=0,0,0,0,400767 +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. 656 656 769 +* Example 0: Downlink Payload: 07 00 0000 0000 00 0190 **~-~-->** AT+MOD=0,0,0,0,400 770 + 657 657 * Example 1: Downlink Payload: 070107080064000190 **~-~-->** AT+MOD=1,1800,100,0,400 658 658 773 +* Example 2: Downlink Payload: 070200000064000190 **~-~-->** AT+MOD=2,1800,100,0,400 659 659 775 +* Example 3: Downlink Payload: 070300000064000190 **~-~-->** AT+MOD=3,0,100,0,400 660 660 777 +(% style="color:Red" %)**Note: The over-limit alarm is applied to MOD1 and MOD2.** 778 + 779 +**For example:** 780 + 781 +* **AT+MOD=1** 782 + 783 + **AT+DOL=1,500,244,**(% style="color:blue" %)0(%%)**,300** 784 + 785 +Send data according to the normal TDC time. If the mode limit is exceeded, the alarm flag is set to 1: 786 + 787 +[[image:image-20231211113204-2.png||height="292" width="1093"]] 788 + 789 +* **AT+MOD=2 ** 790 + 791 + **AT+DOL=1,500,244,**(% style="color:blue" %)0(%%)**,300** 792 + 793 +If the mode limit is exceeded, the data is immediately uplink and the alarm flag is set to 1: 794 + 795 +[[image:image-20231211114932-3.png||height="277" width="1248"]] 796 + 797 + 798 + 799 + 800 + 661 661 = 4. Battery & Power Consumption = 662 662 663 663 ... ... @@ -694,6 +694,33 @@ 694 694 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"]] 695 695 696 696 837 +== 6.2 DS20L programming line == 838 + 839 + 840 +[[image:image-20231212150243-1.jpeg||height="448" width="1009"]] 841 + 842 +feature: 843 + 844 +for AT commands 845 + 846 +Update the firmware of DS20L 847 + 848 +Support interrupt mode 849 + 850 + 851 +== 6.3 LiDAR probe position == 852 + 853 + 854 +[[image:1701155390576-216.png||height="285" width="307"]] 855 + 856 +The black oval hole in the picture is the LiDAR probe. 857 + 858 + 859 +== 6.4 Interface definition == 860 + 861 +[[image:image-20231128151132-2.png||height="305" width="557"]] 862 + 863 + 697 697 = 7. Trouble Shooting = 698 698 699 699 == 7.1 AT Command input doesn't work ==
- 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
- image-20231212150243-1.jpeg
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.ting - Size
-
... ... @@ -1,0 +1,1 @@ 1 +593.9 KB - Content