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

From version 114.2
edited by Xiaoling
on 2023/11/10 11:30
Change comment: There is no comment for this version
To version 164.1
edited by Mengting Qiu
on 2023/12/11 15:10
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  
... ... @@ -22,7 +22,7 @@
22 22  == 1.1 What is LoRaWAN Smart Distance Detector ==
23 23  
24 24  
25 -The Dragino (% style="color:blue" %)**DS20L is a smart distance detector**(%%) base on long-range wireless LoRaWAN technology. It uses (% style="color:blue" %)**LiDAR sensor**(%%) to detect the distance between DS20L and object, then DS20L will send the distance data to the IoT Platform via LoRaWAN.
25 +The Dragino (% style="color:blue" %)**DS20L is a smart distance detector**(%%) base on long-range wireless LoRaWAN technology. It uses (% style="color:blue" %)**LiDAR sensor**(%%) to detect the distance between DS20L and object, then DS20L will send the distance data to the IoT Platform via LoRaWAN. DS20L can measure range between 3cm ~~ 200cm.
26 26  
27 27  DS20L allows users to send data and reach extremely long ranges via LoRaWAN. It provides ultra-long range spread spectrum communication and high interference immunity whilst minimizing current 
28 28  consumption. It targets professional wireless sensor network applications such smart cities, building automation, and so on.
... ... @@ -31,7 +31,6 @@
31 31  
32 32  DS20L is fully compatible with (% style="color:blue" %)**LoRaWAN v1.0.3 Class A protocol**(%%), it can work with a standard LoRaWAN gateway.
33 33  
34 -DS20L supports (% style="color:blue" %)**Datalog feature**(%%). It will record the data when there is no network coverage and users can retrieve the sensor value later to ensure no miss for every sensor reading.
35 35  
36 36  [[image:image-20231110102635-5.png||height="402" width="807"]]
37 37  
... ... @@ -45,12 +45,9 @@
45 45  * AT Commands to change parameters
46 46  * Remotely configure parameters via LoRaWAN Downlink
47 47  * Alarm & Counting mode
48 -* Datalog Feature
49 49  * Firmware upgradable via program port or LoRa protocol
50 50  * Built-in 2400mAh battery or power by external power source
51 51  
52 -
53 -
54 54  == 1.3 Specification ==
55 55  
56 56  
... ... @@ -64,10 +64,19 @@
64 64  * ToF FoV: ±9°, Total 18°
65 65  * Light source: VCSEL
66 66  
67 -(% style="display:none" %)
63 +== 1.4 Power Consumption ==
68 68  
69 69  
66 +(% style="color:#037691" %)**Battery Power Mode:**
70 70  
68 +* Idle: 0.003 mA @ 3.3v
69 +* Max : 360 mA
70 +
71 +(% style="color:#037691" %)**Continuously mode**:
72 +
73 +* Idle: 21 mA @ 3.3v
74 +* Max : 360 mA
75 +
71 71  = 2. Configure DS20L to connect to LoRaWAN network =
72 72  
73 73  == 2.1 How it works ==
... ... @@ -86,7 +86,7 @@
86 86  
87 87  [[image:image-20231110102635-5.png||height="402" width="807"]](% style="display:none" %)
88 88  
89 -(% style="color:blue" %)**Step 1:**(%%) Create a device in TTN with the OTAA keys from DS20L.
94 +=== Step 1: Create a device in TTN with the OTAA keys from DS20L. ===
90 90  
91 91  Each DS20L is shipped with a sticker with the default device EUI as below:
92 92  
... ... @@ -93,40 +93,36 @@
93 93  [[image:image-20230426084152-1.png||alt="图片-20230426084152-1.png" height="233" width="502"]]
94 94  
95 95  
96 -You can enter this key in the LoRaWAN Server portal. Below is TTN screen shot:
101 +You can enter this key in the LoRaWAN Server portal. Below is TTN V3 screenshot:
97 97  
98 98  
99 99  (% style="color:blue" %)**Register the device**
100 100  
101 -[[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"]]
106 +[[image:image-20231207144600-2.png||height="703" width="756"]]
102 102  
103 103  
104 -(% style="color:blue" %)**Add APP EUI and DEV EUI**
109 +(% style="color:blue" %)**Add DevEUI and AppKey**
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/image-20220611161308-4.png?width=753&height=551&rev=1.1||alt="图片-20220611161308-4.png"]]
111 +[[image:image-20231207145121-5.png||height="540" width="756"]]
107 107  
108 108  
109 -(% style="color:blue" %)**Add APP EUI in the application**
110 110  
115 +=== Step 2: Activate on DS20L ===
111 111  
112 -[[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"]]
117 +[[image:image-20231128133704-1.png||height="189" width="441"]]
113 113  
119 +Press the button for 5 seconds to activate the DS20L.
114 114  
115 -(% style="color:blue" %)**Add APP KEY**
121 +The switch is switched to (% style="color:blue" %)**E** (%%)and the external power supply is used.
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-6.png?width=744&height=485&rev=1.1||alt="图片-20220611161308-6.png"]]
123 +The switch is switched to (% style="color:blue" %)**I** (%%)and the motherboard battery is used for power supply.
118 118  
119 -
120 -(% style="color:blue" %)**Step 2:**(%%) Activate on DS20L
121 -
122 -
123 -Press the button for 5 seconds to activate the DS20L.
124 -
125 125  (% 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.
126 126  
127 127  After join success, it will start to upload messages to TTN and you can see the messages in the panel.
128 128  
129 129  
130 +
130 130  == 2.3 ​Uplink Payload ==
131 131  
132 132  === 2.3.1 Device Status, FPORT~=5 ===
... ... @@ -144,9 +144,9 @@
144 144  
145 145  Example parse in TTNv3
146 146  
147 -[[image:image-20230805103904-1.png||height="131" width="711"]]
148 +[[image:image-20231206151412-3.png||height="179" width="1070"]]
148 148  
149 -(% style="color:blue" %)**Sensor Model**(%%): For DS20L, this value is 0x24
150 +(% style="color:blue" %)**Sensor Model**(%%): For DS20L, this value is 0x21
150 150  
151 151  (% style="color:blue" %)**Firmware Version**(%%): 0x0100, Means: v1.0.0 version
152 152  
... ... @@ -200,222 +200,210 @@
200 200  === 2.3.2 Uplink Payload, FPORT~=2 ===
201 201  
202 202  
203 -(((
204 -DS20L will send this uplink **after** Device Status once join the LoRaWAN network successfully. And DS20L will:
204 +==== (% style="color:red" %)**AT+MOD~=1**(%%) ====
205 205  
206 -periodically send this uplink every 20 minutes, this interval [[can be changed>>||anchor="H3.3.1SetTransmitIntervalTime"]].
206 +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.
207 207  
208 -Uplink Payload totals 11 bytes.
209 -)))
208 +Uplink Payload totals 10 bytes.
210 210  
211 211  (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
212 -|=(% style="width: 60px;background-color:#4F81BD;color:white" %)(((
213 -**Size(bytes)**
214 -)))|=(% 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**
215 -|(% style="width:62.5px" %)Value|(% style="width:62.5px" %)[[BAT>>||anchor="HBatteryInfo"]]|(% style="width:62.5px" %)(((
216 -[[Temperature DS18B20>>||anchor="HDS18B20Temperaturesensor"]]
217 -)))|[[Distance>>||anchor="HDistance"]]|[[Distance signal strength>>||anchor="HDistancesignalstrength"]]|(% style="width:122px" %)(((
218 -[[Interrupt flag & Interrupt_level>>||anchor="HInterruptPin26A0InterruptLevel"]]
219 -)))|(% style="width:54px" %)[[LiDAR temp>>||anchor="HLiDARtemp"]]|(% style="width:96px" %)(((
220 -[[Message Type>>||anchor="HMessageType"]]
221 -)))
211 +|(% 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**
212 +|(% 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
222 222  
223 -[[image:image-20230805104104-2.png||height="136" width="754"]]
214 +[[image:image-20231209152917-1.png||height="300" width="1172"]]
224 224  
216 +(% style="color:blue" %)**Battery Info:**
225 225  
226 -==== (% style="color:blue" %)**Battery Info**(%%) ====
218 +Check the battery voltage for DS20L
227 227  
220 +Ex1: 0x0E10 = 3600mV
228 228  
229 -Check the battery voltage for DS20L.
230 230  
231 -Ex1: 0x0B45 = 2885mV
223 +(% style="color:blue" %)**MOD & Alarm & Interrupt:**
232 232  
233 -Ex2: 0x0B49 = 2889mV
225 +(% style="color:red" %)**MOD:**
234 234  
227 +**Example: ** (0x60>>6) & 0x3f =1
235 235  
236 -==== (% style="color:blue" %)**DS18B20 Temperature sensor**(%%) ====
229 +**0x01:**  Regularly detect distance and report.
230 +**0x02: ** Uninterrupted measurement (external power supply).
237 237  
232 +(% style="color:red" %)**Alarm:**
238 238  
239 -This is optional, user can connect external DS18B20 sensor to the +3.3v, 1-wire and GND pin . and this field will report temperature.
234 +When the detection distance exceeds the limit, the alarm flag is set to 1.
240 240  
236 +(% style="color:red" %)**Interrupt:**
241 241  
242 -**Example**:
238 +Whether it is an external interrupt.
243 243  
244 -If payload is: 0105H:  (0105 & FC00 == 0), temp = 0105H /10 = 26.1 degree
245 245  
246 -If payload is: FF3FH :  (FF3F & FC00 == 1) , temp = (FF3FH - 65536)/10 = -19.3 degrees.
241 +(% style="color:blue" %)**Distance info:**
247 247  
243 +**Example**:
248 248  
249 -==== (% style="color:blue" %)**Distance**(%%) ====
245 +If payload is: 0708H: distance = 0708H = 1800 mm
250 250  
251 251  
252 -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.
248 +(% style="color:blue" %)**Sensor State:**
253 253  
250 +Ex1: 0x00: Normal collection distance
254 254  
255 -**Example**:
252 +Ex2 0x0x: Distance collection is wrong
256 256  
257 -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.
258 258  
255 +(% style="color:blue" %)**Interript Count:**
259 259  
260 -==== (% style="color:blue" %)**Distance signal strength**(%%) ====
257 +If payload is:000007D0H: count = 07D0H =2000
261 261  
262 262  
263 -Refers to the signal strength, the default output value will be between 0-65535. When the distance measurement gear is fixed, the farther the distance measurement is, the lower the signal strength; the lower the target reflectivity, the lower the signal strength. When Strength is greater than 100 and not equal to 65535, the measured value of Dist is considered credible.
264 264  
261 +==== (% style="color:red" %)**AT+MOD~=2**(%%)** ** ====
265 265  
266 -**Example**:
267 267  
268 -If payload is: 01D7(H)=471(D), distance signal strength=471, 471>100,471≠65535, the measured value of Dist is considered credible.
264 +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.)
269 269  
270 -Customers can judge whether they need to adjust the environment based on the signal strength.
266 +[[image:image-20231128133704-1.png||height="189" width="441"]]
271 271  
272 272  
273 -**1) When the sensor detects valid data:**
269 +* **Set over-limit alarm mode: AT+DOL=3,500,244,**(% style="color:red" %)0(%%)**,120**
274 274  
275 -[[image:image-20230805155335-1.png||height="145" width="724"]]
271 +(% class="wikigeneratedid" id="HUninterruptedmeasurement.Whenthedistanceexceedsthelimit2CtheoutputIOissethighandreportsarereportedeveryfiveminutes.Thetimecanbesetandpoweredbyanexternalpowersupply.UplinkPayloadtotals11bytes." %)
272 +Uninterrupted measurement. When the distance exceeds the limit, the output IO high, instant alarm. Uplink Payload totals 9 bytes.
276 276  
274 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
275 +|(% 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**
276 +|(% style="width:91px" %)Value|(% style="width:41px" %)BAT|(% style="width:176px" %)MOD+Alarm+Do+Limit flag|(% style="width:74px" %)Distance |(% style="width:100px" %)Upper limit|(% style="width:119px" %)Lower limit
277 277  
278 -**2) When the sensor detects invalid data:**
278 +[[image:image-20231209171127-3.png||height="374" width="1209"]]
279 279  
280 -[[image:image-20230805155428-2.png||height="139" width="726"]]
280 +(% style="color:blue" %)**MOD & Alarm & Do & Limit flag:**
281 281  
282 +(% style="color:red" %)**MOD:**
282 282  
283 -**3) When the sensor is not connected:**
284 +**Example: ** (0x60>>6) & 0x3f =1
284 284  
285 -[[image:image-20230805155515-3.png||height="143" width="725"]]
286 +**0x01:**  Regularly detect distance and report.
287 +**0x02: ** Uninterrupted measurement (external power supply).
286 286  
289 +(% style="color:red" %)**Alarm:**
287 287  
288 -==== (% style="color:blue" %)**Interrupt Pin & Interrupt Level**(%%) ====
291 +When the detection distance exceeds the limit, the alarm flag is set to 1.
289 289  
293 +(% style="color:red" %)**Do:**
290 290  
291 -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.
295 +When the distance exceeds the set threshold, pull the Do pin high.
292 292  
293 -Note: The Internet Pin is a separate pin in the screw terminal. See pin mapping of GPIO_EXTI .
297 +(% style="color:red" %)**Limit flag:**
294 294  
295 -**Example:**
299 +Mode for setting threshold: **0~~3**
296 296  
297 -If byte[0]&0x01=0x00 : Normal uplink packet.
301 +**0:** does not use upper and lower limits
298 298  
299 -If byte[0]&0x01=0x01 : Interrupt Uplink Packet.
303 +**1:** Use upper and lower limits
300 300  
305 +**2:** Less than the upper limit
301 301  
302 -==== (% style="color:blue" %)**LiDAR temp**(%%) ====
307 +**3: **Greater than the lower limit
303 303  
304 304  
305 -Characterize the internal temperature value of the sensor.
310 +(% style="color:blue" %)**Distance:**
306 306  
307 -**Example: **
308 -If payload is: 1C(H) <<24>>24=28(D),LiDAR temp=28℃.
309 -If payload is: F2(H) <<24>>24=-14(D),LiDAR temp=-14℃.
312 + Actual sampling distance values.
310 310  
314 +**Example:**
311 311  
312 -==== (% style="color:blue" %)**Message Type**(%%) ====
316 +**AT+DOL=1,500,244,**(% style="color:red" %)0(%%)**,120  **
313 313  
318 +The distance is detected every 120ms.
314 314  
315 -(((
316 -For a normal uplink payload, the message type is always 0x01.
317 -)))
320 +When the actual detection value is within the range of [244mm,500mm], the data is uploaded in the normal TDC time.
318 318  
319 -(((
320 -Valid Message Type:
321 -)))
322 +When the actual detection value is outside the range of [244mm,500mm], the uplink data will be immediately alerted.
322 322  
323 -(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:499px" %)
324 -|=(% 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**
325 -|(% style="width:160px" %)0x01|(% style="width:163px" %)Normal Uplink|(% style="width:173px" %)Normal Uplink Payload
326 -|(% style="width:160px" %)0x02|(% style="width:163px" %)Reply configures info|(% style="width:173px" %)Configure Info Payload
324 +If payload is: 0708H: distance = 0708H = 1800 mm
327 327  
328 -[[image:image-20230805150315-4.png||height="233" width="723"]]
329 329  
327 +(% style="color:blue" %)**Upper limit:**
330 330  
331 -=== 2.3.3 Historical measuring distance, FPORT~=3 ===
329 +The upper limit of the threshold cannot exceed 2000mm.
332 332  
333 333  
334 -DS20L stores sensor values and users can retrieve these history values via the [[downlink command>>||anchor="H2.5.4Pollsensorvalue"]].
332 +(% style="color:blue" %)**Lower limit:**
335 335  
336 -The historical payload includes one or multiplies entries and every entry has the same payload as Real-Time measuring distance.
334 +The lower limit of the threshold cannot be less than 3mm.
337 337  
338 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
339 -|=(% style="width: 60px;background-color:#4F81BD;color:white" %)(((
340 -**Size(bytes)**
341 -)))|=(% 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
342 -|(% style="width:62.5px" %)Value|(% style="width:62.5px" %)Interrupt flag & Interrupt_level|(% style="width:62.5px" %)(((
343 -Reserve(0xFF)
344 -)))|Distance|Distance signal strength|(% style="width:88px" %)(((
345 -LiDAR temp
346 -)))|(% style="width:85px" %)Unix TimeStamp
347 347  
348 -**Interrupt flag & Interrupt level:**
337 +* **Set the person or object count mode: AT+DOL=1,500,244,**(% style="color:red" %)1(%%)**,120**
349 349  
350 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:480px" %)
351 -|=(% style="width: 60px;background-color:#4F81BD;color:white" %)(((
352 -**Size(bit)**
353 -)))|=(% 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**
354 -|(% 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" %)(((
355 -Interrupt flag
356 -)))
339 +Continuous measurement, detect and count people or things passing by in distance limit mode. Uplink Payload totals 11 bytes.
357 357  
358 -* (((
359 -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.
360 -)))
341 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:600px" %)
342 +|(% 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**
343 +|(% style="width:91px" %)Value|(% style="width:41px" %)BAT|(% style="width:176px" %)MOD+Alarm+Do+Limit flag|(% style="width:176px" %)Distance limit alarm count|(% style="width:100px" %)Upper limit|(% style="width:119px" %)Lower limit
361 361  
362 -For example, in the US915 band, the max payload for different DR is:
345 +[[image:image-20231209173457-5.png||height="277" width="1098"]]
363 363  
364 -**a) DR0:** max is 11 bytes so one entry of data
347 +(% style="color:blue" %)**MOD & Alarm & Do & Limit flag:**
365 365  
366 -**b) DR1:** max is 53 bytes so devices will upload 4 entries of data (total 44 bytes)
349 +(% style="color:red" %)**MOD:**
367 367  
368 -**c) DR2:** total payload includes 11 entries of data
351 +**Example: ** (0x60>>6) & 0x3f =1
369 369  
370 -**d) DR3:** total payload includes 22 entries of data.
353 +**0x01:**  Regularly detect distance and report.
354 +**0x02: ** Uninterrupted measurement (external power supply).
371 371  
372 -If DS20L doesn't have any data in the polling time. It will uplink 11 bytes of 0
356 +(% style="color:red" %)**Alarm:**
373 373  
358 +When the detection distance exceeds the limit, the alarm flag is set to 1.
374 374  
375 -**Downlink:**
360 +(% style="color:red" %)**Do:**
376 376  
377 -0x31 64 CC 68 0C 64 CC 69 74 05
362 +When the distance exceeds the set threshold, pull the Do pin high.
378 378  
379 -[[image:image-20230805144936-2.png||height="113" width="746"]]
364 +(% style="color:red" %)**Limit flag:**
380 380  
381 -**Uplink:**
366 +Mode for setting threshold: **0~~3**
382 382  
383 -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
368 +**0:** does not use upper and lower limits
384 384  
370 +**1:** Use upper and lower limits
385 385  
386 -**Parsed Value:**
372 +**2:** Less than the upper limit
387 387  
388 -[DISTANCE , DISTANCE_SIGNAL_STRENGTH,LIDAR_TEMP,EXTI_STATUS , EXTI_FLAG , TIME]
374 +**3: **Greater than the lower limit
389 389  
390 390  
391 -[360,176,30,High,True,2023-08-04 02:53:00],
377 +(% style="color:blue" %)**Distance limit alarm count:**
392 392  
393 -[355,168,30,Low,False,2023-08-04 02:53:29],
379 +People or objects are collected and counted within a limited distance.
394 394  
395 -[245,211,30,Low,False,2023-08-04 02:54:29],
381 +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.
396 396  
397 -[57,700,30,Low,False,2023-08-04 02:55:29],
383 +**Example:**
398 398  
399 -[361,164,30,Low,True,2023-08-04 02:56:00],
385 +**AT+DOL=1,500,244,**(% style="color:red" %)1(%%)**,120   **
400 400  
401 -[337,184,30,Low,False,2023-08-04 02:56:40],
387 +People or objects passing within the distance range of [244mm,500mm] are detected and counted every 120ms.
402 402  
403 -[20,4458,30,Low,False,2023-08-04 02:57:40],
389 +If payload is: 0x56H, interrupt count =0x56H =86
404 404  
405 -[362,173,30,Low,False,2023-08-04 02:58:53],
406 406  
392 +(% style="color:blue" %)**Upper limit:**
407 407  
408 -**History read from serial port:**
394 +The upper limit of the threshold cannot exceed 2000mm.
409 409  
410 -[[image:image-20230805145056-3.png]]
411 411  
397 +(% style="color:blue" %)**Lower limit:**
412 412  
413 -=== 2.3.4 Decode payload in The Things Network ===
399 +The lower limit of the threshold cannot be less than 3mm.
414 414  
415 415  
402 +== 2.4 Decode payload in The Things Network ==
403 +
404 +
416 416  While using TTN network, you can add the payload format to decode the payload.
417 417  
418 -[[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"]]
407 +[[image:image-20231206143515-1.png||height="534" width="759"]]
419 419  
420 420  
421 421  (((
... ... @@ -427,7 +427,7 @@
427 427  )))
428 428  
429 429  
430 -== 2.4 ​Show Data in DataCake IoT Server ==
419 +== 2.5 ​Show Data in DataCake IoT Server ==
431 431  
432 432  
433 433  (((
... ... @@ -444,97 +444,28 @@
444 444  )))
445 445  
446 446  
447 -[[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"]]
436 +[[image:image-20231207153532-6.png||height="562" width="861"]]
448 448  
449 449  
450 -[[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"]]
439 +[[image:image-20231207155940-8.png]]
451 451  
441 +For more detailed instructions, refer to the following instructions: [[Welcome - Datacake Docs>>url:https://docs.datacake.de/]]
452 452  
443 +[[image:image-20231207160733-11.png||height="429" width="759"]]
444 +
445 +
453 453  (% style="color:blue" %)**Step 3**(%%)**: Create an account or log in Datacake.**
454 454  
455 455  (% style="color:blue" %)**Step 4**(%%)**: Search the DS20L and add DevEUI.**
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/1654851029373-510.png?rev=1.1||alt="1654851029373-510.png"]]
450 +[[image:image-20231207160343-10.png||height="665" width="705"]]
458 458  
459 459  
460 460  After added, the sensor data arrive TTN V3, it will also arrive and show in Datacake.
461 461  
462 -[[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"]]
455 +[[image:image-20231129100454-2.png||height="501" width="928"]]
463 463  
464 464  
465 -== 2.5 Datalog Feature ==
466 -
467 -
468 -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.
469 -
470 -
471 -=== 2.5.1 Ways to get datalog via LoRaWAN ===
472 -
473 -
474 -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.
475 -
476 -* (((
477 -a) DS20L will do an ACK check for data records sending to make sure every data arrive server.
478 -)))
479 -* (((
480 -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.
481 -)))
482 -
483 -
484 -=== 2.5.2 Unix TimeStamp ===
485 -
486 -
487 -DS20L uses Unix TimeStamp format based on
488 -
489 -[[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"]]
490 -
491 -User can get this time from link:  [[https:~~/~~/www.epochconverter.com/>>url:https://www.epochconverter.com/]] :
492 -
493 -Below is the converter example
494 -
495 -[[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"]]
496 -
497 -
498 -So, we can use AT+TIMESTAMP=1611889405 or downlink 3060137afd00 to set the current time 2021 – Jan ~-~- 29 Friday 03:03:25
499 -
500 -
501 -=== 2.5.3 Set Device Time ===
502 -
503 -
504 -User need to set (% style="color:blue" %)**SYNCMOD=1**(%%) to enable sync time via MAC command.
505 -
506 -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).
507 -
508 -(% 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.**
509 -
510 -
511 -=== 2.5.4 Poll sensor value ===
512 -
513 -
514 -Users can poll sensor values based on timestamps. Below is the downlink command.
515 -
516 -(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:425.818px" %)
517 -|(% colspan="4" style="background-color:#4f81bd; color:white; width:423px" %)**Downlink Command to poll Open/Close status (0x31)**
518 -|(% style="width:58px" %)**1byte**|(% style="width:127px" %)**4bytes**|(% style="width:124px" %)**4bytes**|(% style="width:114px" %)**1byte**
519 -|(% style="width:58px" %)31|(% style="width:127px" %)Timestamp start|(% style="width:124px" %)Timestamp end|(% style="width:114px" %)Uplink Interval
520 -
521 -(((
522 -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.
523 -)))
524 -
525 -(((
526 -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"]]
527 -)))
528 -
529 -(((
530 -Is to check 2021/11/12 12:00:00 to 2021/11/12 15:00:00's data
531 -)))
532 -
533 -(((
534 -Uplink Internal =5s,means DS20L will send one packet every 5s. range 5~~255s.
535 -)))
536 -
537 -
538 538  == 2.6 Frequency Plans ==
539 539  
540 540  
... ... @@ -543,7 +543,7 @@
543 543  [[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/>>http://wiki.dragino.com/xwiki/bin/view/Main/End%20Device%20Frequency%20Band/]]
544 544  
545 545  
546 -3. Configure DS20L
466 += 3. Configure DS20L =
547 547  
548 548  == 3.1 Configure Methods ==
549 549  
... ... @@ -556,8 +556,6 @@
556 556  
557 557  * LoRaWAN Downlink.  Instruction for different platforms: See [[IoT LoRaWAN Server>>http://wiki.dragino.com/xwiki/bin/view/Main/]] section.
558 558  
559 -
560 -
561 561  == 3.2 General Commands ==
562 562  
563 563  
... ... @@ -617,7 +617,7 @@
617 617  Example 1: Downlink Payload: 0100001E  ~/~/ Set Transmit Interval (TDC) = 30 seconds
618 618  )))
619 619  * (((
620 -Example 2: Downlink Payload: 0100003C  ~/~/ Set Transmit Interval (TDC) = 60 seconds 
538 +Example 2: Downlink Payload: 0100003C  ~/~/ Set Transmit Interval (TDC) = 60 seconds
621 621  
622 622  
623 623  
... ... @@ -640,7 +640,7 @@
640 640  the mode is 0 =Disable Interrupt
641 641  )))
642 642  |(% style="width:154px" %)(((
643 -AT+INTMOD=2
561 +AT+INTMOD=3
644 644  
645 645  (default)
646 646  )))|(% style="width:196px" %)(((
... ... @@ -661,8 +661,117 @@
661 661  
662 662  * Example 2: Downlink Payload: 06000003  ~/~/  Set the interrupt mode to rising edge trigger
663 663  
582 +=== 3.3.3 Set work mode ===
664 664  
665 665  
585 +Feature: Switch working mode
586 +
587 +(% style="color:blue" %)**AT Command: AT+MOD**
588 +
589 +(% border="1" cellspacing="5" style="background-color:#f2f2f2; width:510px" %)
590 +|=(% 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**
591 +|(% style="width:162px" %)AT+MOD=?|(% style="width:191px" %)Get the current working mode.|(% style="width:106px" %)OK
592 +|(% style="width:162px" %)AT+MOD=1|(% style="width:191px" %)Set the working mode to Regular measurements.|(% style="width:106px" %)(((
593 +OK
594 +Attention:Take effect after ATZ
595 +)))
596 +
597 +(% style="color:blue" %)**Downlink Command:**
598 +
599 +* **Example: **0x0A01 ~/~/  Same as AT+MOD=1
600 +
601 +* **Example:** 0x0A02  ~/~/  Same as AT+MOD=2
602 +
603 +=== 3.3.4 Set threshold and threshold mode ===
604 +
605 +
606 +Feature, Set threshold and threshold mode
607 +
608 +When (% style="color:#037691" %)**AT+DOL=0,0,0,0,400**(%%) is set, No threshold is used, the sampling time is 400ms.
609 +
610 +(% style="color:blue" %)**AT Command: AT+DOL**
611 +
612 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
613 +|(% 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**
614 +|(% style="width:172px" %)AT+ DOL =?|(% style="width:279px" %)Get the current threshold mode and sampling time|(% style="width:118px" %)(((
615 +0,0,0,0,400
616 +OK
617 +)))
618 +|(% style="width:172px" %)AT+ DOL =1,1800,100,0,400|(% style="width:279px" %)Set only the upper and lower thresholds|(% style="width:118px" %)OK
619 +
620 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
621 +|(% rowspan="11" style="color:blue; width:120px" %)(((
622 +
623 +
624 +
625 +
626 +
627 +
628 +
629 +
630 +
631 +
632 +
633 +**AT+DOL=5,1800,0,0,400**
634 +)))|(% rowspan="4" style="width:240px" %)(((
635 +
636 +
637 +
638 +
639 +
640 +
641 +The first bit sets the limit mode
642 +)))|(% style="width:150px" %)0: Do not use upper and lower limits
643 +|(% style="width:251px" %)1: Use upper and lower limits
644 +|(% style="width:251px" %)2:Less than the upper limit
645 +|(% style="width:251px" %)3: Greater than the lower limit
646 +|(% style="width:226px" %)The second bit sets the upper limit value|(% style="width:251px" %)3~~2000MM
647 +|(% style="width:226px" %)The third bit sets the lower limit value|(% style="width:251px" %)3~~2000MM
648 +|(% 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
649 +|(% style="width:251px" %)1 Person or object counting statistics
650 +|(% style="width:226px" %)The fifth bit sets the sampling time|(% style="width:251px" %)(((
651 +100~~10000ms
652 +
653 +
654 +)))
655 +
656 +(% style="color:blue" %)**Downlink Command: 0x07**
657 +
658 +Format: Command Code (0x07) followed by 9 bytes.
659 +
660 +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.
661 +
662 +* Example 0: Downlink Payload: 07 00 0000 0000 00 0190  **~-~-->**  AT+MOD=0,0,0,0,400
663 +
664 +* Example 1: Downlink Payload: 070107080064000190  **~-~-->**  AT+MOD=1,1800,100,0,400
665 +
666 +* Example 2: Downlink Payload: 070200000064000190  **~-~-->**  AT+MOD=2,1800100,0,400
667 +
668 +* Example 3: Downlink Payload: 070300000064000190  **~-~-->**  AT+MOD=3,0,100,0,400
669 +*
670 +
671 +(% style="color:Red" %)**Note: The over-limit alarm is applied to MOD1 and MOD2.** (%%)For example:
672 +
673 +* **AT+MOD=1**
674 +
675 + **AT+DOL=1,500,244,**(% style="color:blue" %)0(%%)**,300**
676 +
677 +Send data according to the normal TDC time. If the mode limit is exceeded, the alarm flag is set to 1:
678 +
679 +[[image:image-20231211113204-2.png||height="292" width="1093"]]
680 +
681 +* **AT+MOD=2  **
682 +
683 + **AT+DOL=1,500,244,**(% style="color:blue" %)0(%%)**,300**
684 +
685 +If the mode limit is exceeded, the data is immediately uplink and the alarm flag is set to 1:
686 +
687 +[[image:image-20231211114932-3.png||height="277" width="1248"]]
688 +
689 +
690 +
691 +
692 +
666 666  = 4. Battery & Power Consumption =
667 667  
668 668  
... ... @@ -691,8 +691,6 @@
691 691  
692 692  * Update through UART TTL interface: **[[Instruction>>url:http://wiki.dragino.com/xwiki/bin/view/Main/UART%20Access%20for%20LoRa%20ST%20v4%20base%20model/#H1.LoRaSTv4baseHardware]]**.
693 693  
694 -
695 -
696 696  = 6. FAQ =
697 697  
698 698  == 6.1 What is the frequency plan for DS20L? ==
... ... @@ -701,6 +701,33 @@
701 701  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"]]
702 702  
703 703  
729 +== 6.2 DS20L programming line ==
730 +
731 +
732 +缺图 后续补上
733 +
734 +feature:
735 +
736 +for AT commands
737 +
738 +Update the firmware of DS20L
739 +
740 +Support interrupt mode
741 +
742 +
743 +== 6.3 LiDAR probe position ==
744 +
745 +
746 +[[image:1701155390576-216.png||height="285" width="307"]]
747 +
748 +The black oval hole in the picture is the LiDAR probe.
749 +
750 +
751 +== 6.4 Interface definition ==
752 +
753 +[[image:image-20231128151132-2.png||height="305" width="557"]]
754 +
755 +
704 704  = 7. Trouble Shooting =
705 705  
706 706  == 7.1 AT Command input doesn't work ==
... ... @@ -753,8 +753,6 @@
753 753  
754 754  * (% style="color:red" %)**CN470**(%%): LoRaWAN CN470 band
755 755  
756 -
757 -
758 758  = 9. ​Packing Info =
759 759  
760 760  
... ... @@ -772,8 +772,6 @@
772 772  
773 773  * Weight / pcs : g
774 774  
775 -
776 -
777 777  = 10. Support =
778 778  
779 779  
1701149922873-259.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +24.5 KB
Content
1701152902759-553.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +52.2 KB
Content
1701152946067-561.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +52.2 KB
Content
1701155076393-719.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +54.6 KB
Content
1701155150328-206.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +54.6 KB
Content
1701155390576-216.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +293.9 KB
Content
image-20231128133704-1.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +190.6 KB
Content
image-20231128151132-2.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +281.2 KB
Content
image-20231129085201-1.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +70.6 KB
Content
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