<
From version < 8.1 >
edited by Saxer Lin
on 2023/06/08 17:50
To version < 30.1 >
edited by Saxer Lin
on 2023/07/01 09:40
>
Change comment: Uploaded new attachment "image-20230701094042-1.png", version {1}

Summary

Details

Page properties
Content
... ... @@ -71,7 +71,6 @@
71 71  * Wall Mountable
72 72  * Outdoor Use
73 73  
74 -
75 75  == 1.3 Specification ==
76 76  
77 77  
... ... @@ -105,7 +105,6 @@
105 105  * Sleep Mode: 5uA @ 3.3v
106 106  * LoRa Transmit Mode: 125mA @ 20dBm, 82mA @ 14dBm
107 107  
108 -
109 109  == 1.4 Applications ==
110 110  
111 111  
... ... @@ -139,11 +139,10 @@
139 139  )))
140 140  |(% style="width:167px" %)Fast press ACT 5 times.|(% style="width:117px" %)Deactivate Device|(% style="width:225px" %)(% style="color:red" %)**Red led**(%%) will solid on for 5 seconds. Means Device is in Deep Sleep Mode.
141 141  
142 -
143 143  == 1.7 BLE connection ==
144 144  
145 145  
146 -D2x-LB support BLE remote configure.
143 +DS03A-LB support BLE remote configure.
147 147  
148 148  
149 149  BLE can be used to configure the parameter of sensor or see the console output from sensor. BLE will be only activate on below case:
... ... @@ -155,9 +155,13 @@
155 155  If there is no activity connection on BLE in 60 seconds, sensor will shut down BLE module to enter low power mode.
156 156  
157 157  
158 -== 1.8 Mechanical ==
155 +== 1.8 Pin Definitions ==
159 159  
157 +[[image:image-20230630160843-7.png]]
160 160  
159 +== 1.9 Mechanical ==
160 +
161 +
161 161  [[image:Main.User Manual for LoRaWAN End Nodes.LDS03A - Outdoor LoRaWAN OpenClose Door Sensor Manual.WebHome@1654741444887-479.png||height="399" width="513"]]
162 162  
163 163  
... ... @@ -175,7 +175,7 @@
175 175  == 2.1 How it works ==
176 176  
177 177  
178 -The DS03A-LB is configured as (% style="color:#037691" %)**LoRaWAN OTAA Class A**(%%) mode by default. It has OTAA keys to join LoRaWAN network. To connect a local LoRaWAN network, you need to input the OTAA keys in the LoRaWAN IoT server and press the button to activate the DS03A-LB. It will automatically join the network via OTAA and start to send the sensor value. The default uplink interval is 20 minutes.
179 +The DS03A-LB is configured as (% style="color:#037691" %)**LoRaWAN OTAA Class A**(%%) mode by default. It has OTAA keys to join LoRaWAN network. To connect a local LoRaWAN network, you need to input the OTAA keys in the LoRaWAN IoT server and press the button to activate the DS03A-LB. It will automatically join the network via OTAA and start to send the sensor value. The default uplink interval is 2 hours.
179 179  
180 180  
181 181  == 2.2 ​Quick guide to connect to LoRaWAN server (OTAA) ==
... ... @@ -183,7 +183,7 @@
183 183  
184 184  Following is an example for how to join the [[TTN v3 LoRaWAN Network>>url:https://console.cloud.thethings.network/]]. Below is the network structure; we use the [[LPS8v2>>url:https://www.dragino.com/products/lora-lorawan-gateway/item/228-lps8v2.html]] as a LoRaWAN gateway in this example. (% style="display:none" %)
185 185  
186 -The LPS8V2 is already set to connected to [[TTN network >>url:https://console.cloud.thethings.network/]], so what we need to now is configure the TTN server.
187 +The LPS8v2 is already set to connected to [[TTN network >>url:https://console.cloud.thethings.network/]], so what we need to now is configure the TTN server.
187 187  
188 188  [[image:image-20230522092858-1.png||height="391" width="874"]]
189 189  
... ... @@ -247,7 +247,7 @@
247 247  
248 248  Example parse in TTNv3
249 249  
250 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDS03A%20-%20Outdoor%20LoRaWAN%20OpenClose%20Door%20Sensor%20Manual/WebHome/image-20220609104802-1.png?rev=1.1||alt="image-20220609104802-1.png" height="393" width="1195"]]
251 +[[image:image-20230630155406-1.png||height="190" width="873"]]
251 251  
252 252  
253 253  (% style="color:#037691" %)**Sensor Model**(%%): For DS03A-LB, this value is 0x1B
... ... @@ -256,33 +256,33 @@
256 256  
257 257  (% style="color:#037691" %)**Frequency Band**:
258 258  
259 -*0x01: EU868
260 +0x01: EU868
260 260  
261 -*0x02: US915
262 +0x02: US915
262 262  
263 -*0x03: IN865
264 +0x03: IN865
264 264  
265 -*0x04: AU915
266 +0x04: AU915
266 266  
267 -*0x05: KZ865
268 +0x05: KZ865
268 268  
269 -*0x06: RU864
270 +0x06: RU864
270 270  
271 -*0x07: AS923
272 +0x07: AS923
272 272  
273 -*0x08: AS923-1
274 +0x08: AS923-1
274 274  
275 -*0x09: AS923-2
276 +0x09: AS923-2
276 276  
277 -*0x0a: AS923-3
278 +0x0a: AS923-3
278 278  
279 -*0x0b: CN470
280 +0x0b: CN470
280 280  
281 -*0x0c: EU433
282 +0x0c: EU433
282 282  
283 -*0x0d: KR920
284 +0x0d: KR920
284 284  
285 -*0x0e: MA869
286 +0x0e: MA869
286 286  
287 287  
288 288  (% style="color:#037691" %)**Sub-Band**:
... ... @@ -303,47 +303,191 @@
303 303  Ex2: 0x0B49 = 2889mV
304 304  
305 305  
306 -=== 2.3.2  Real-Time Open/Close Status, Uplink FPORT~=2 ===
307 +=== (% style="color:inherit; font-family:inherit; font-size:23px" %)2.3.2  Sensor Configuration, FPORT~=4(%%) ===
307 307  
308 308  
310 +DS03A-LB will only send this command after getting the downlink command (0x26 02) from the server.
311 +
312 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:723px" %)
313 +|(% colspan="8" style="background-color:#d9e2f3; color:#0070c0; width:721px" %)**Sensor Configuration FPORT=4**
314 +|**Size(bytes)**|(% style="width:75px" %)**3**|(% style="width:77px" %)**1**|(% style="width:96px" %)**1**|(% style="width:99px" %)**2**|(% style="width:87px" %)**1**|(% style="width:97px" %)**2**|(% style="width:98px" %)**1**
315 +|**Value**|(% style="width:75px" %)TDC (unit:sec)|(% style="width:77px" %)Disalarm|(% style="width:96px" %)(((
316 +Keep status1
317 +
318 +
319 +)))|(% style="width:99px" %)(((
320 +Keep time1
321 +
322 +(unit: sec)
323 +)))|(% style="width:87px" %)Keep status2|(% style="width:97px" %)(((
324 +Keep time2
325 +
326 +(unit: sec)
327 +)))|(% style="width:98px" %)(((
328 +Alarm interval
329 +
330 +(unit: min)
331 +)))
332 +
333 +* (((
334 +(% style="color:blue" %)**TDC: (default: 0x001C20)**
335 +)))
336 +
337 +Uplink interval for the Open/Close Event, default value is 0x001C20 which is 7200 seconds = 2 hours.
338 +
339 +
340 +* (((
341 +(% style="color:blue" %)**Disalarm: (default: 0)**
342 +)))
343 +
344 + **If Disalarm = 1**, DS03A-LB will only send uplink at every TDC periodically. This is normally use for pulse meter application, in this application, there are many open/close event, and platform only care about the total number of pulse.
345 +
346 + **If Disalarm = 0**, DS03A-LB will send uplink at every TDC periodically and send data on each open/close event. This is useful for the application user need to monitor the open/close event in real-time.
347 +
348 +
349 +(% style="color:red" %)** Note: When Disalarm=0, a high frequently open/close event will cause lots of uplink and drain battery very fast. **
350 +
351 +
352 +* (((
353 +(% style="color:blue" %)**Keep Status1 & Keep Time1 & Keep Status2 & Keep Time2**
354 +)))
355 +
356 +Shows the configure value of [[Alarm Base on Timeout Feature>>url:http://wiki.dragino.com/xwiki/bin/view/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDS03A%20-%20Outdoor%20LoRaWAN%20OpenClose%20Door%20Sensor%20Manual/#H3.8A0AlarmBaseonTimeout]]
357 +
358 +[[image:image-20230630155527-3.png||height="146" width="902"]]
359 +
360 +
361 +* (((
362 +(% style="color:blue" %)**Alarm interval(default: 0)**
363 +)))
364 +
365 +When the state of the door sensor has not been changed after the timeout alarm, the device will send a uplink every alarm interval. It will stop the alarm until the state of the door sensor is changed after the timeout alarm.
366 +
367 +
368 +=== 2.3.3  Real-Time Open/Close Status, Uplink FPORT~=2 ===
369 +
370 +
309 309  DS03A-LB will send this uplink **after** Device Status once join the LoRaWAN network successfully. And DS03A-LB will send uplinks when:
310 310  
311 311  * Every 2 hours, this interval [[can be changed>>||anchor="H3.3.1SetTransmitIntervalTime"]].
312 312  * There is an Open/Close event.  (This info can be disabled by AT+DISALARM=1)
313 313  
314 -Uplink Payload totals 11 bytes.
376 +1)When **AT+TTRCHANNEL=1**, Uplink Payload totals 11 bytes. (**Default mode**)
315 315  
316 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:520px" %)
317 -|=(% colspan="5" style="background-color: rgb(217, 226, 243); color: rgb(0, 112, 192); width: 522px;" %)**Real-Time Open/Close Status, FPORT=2**
318 -|(% style="width:95px" %)**Size(bytes)**|(% style="width:78px" %)**1**|(% style="width:98px" %)**3**|(% style="width:144px" %)**3**|(% style="width:108px" %)**4**
319 -|(% style="width:95px" %)**Value**|(% style="width:78px" %)Status & [[Alarm>>||anchor="H3.3.4A0AlarmBaseonTimeout"]]|(% style="width:98px" %)Total open door events|(% style="width:144px" %)(((
320 -The last door open duration (unit: min)
378 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:515px" %)
379 +|=(% colspan="5" style="background-color:#D9E2F3;color:#0070C0;width:515px" %)**Real-Time Open/Close Status, FPORT=2**
380 +|(% style="width:94px" %)**Size(bytes)**|(% style="width:97px" %)**1**|(% style="width:95px" %)**3**|(% style="width:119px" %)**3**|(% style="width:107px" %)**4**
381 +|(% style="width:95px" %)**Value**|(% style="width:97px" %)(((
382 +Status
383 +
384 +&[[Alarm>>||anchor="H3.3.4A0AlarmBaseonTimeout"]]
385 +)))|(% style="width:95px" %)Total open door events|(% style="width:119px" %)(((
386 +The last door open duration (unit: sec)
321 321  )))|(% style="width:108px" %)[[Unix TimeStamp>>||anchor="H2.5.2UnixTimeStamp"]]
322 322  
323 323  **Status & Alarm:**
324 324  
325 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:589px" %)
326 -|(% style="width:76px" %)**Size(bit)**|(% style="width:79px" %)**bit7**|(% style="width:81px" %)**bit6**|(% style="width:111px" %)**[bit5:bit2]**|(% style="width:197px" %)**bit1**|(% style="width:104px" %)**bit0**
327 -|(% style="width:76px" %)**Value**|(% style="width:79px" %)Reserve|(% style="width:81px" %)(((
328 -Poll
391 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:645px" %)
392 +|(% style="background-color:#d9e2f3; color:#0070c0; width:59px" %)**Size(bit)**|(% style="background-color:#d9e2f3; color:#0070c0; width:79px" %)**[bit7:bit4]**|(% style="background-color:#d9e2f3; color:#0070c0; width:110px" %)**bit3**|(% style="background-color:#d9e2f3; color:#0070c0; width:106px" %)**bit2**|(% style="background-color:#d9e2f3; color:#0070c0; width:125px" %)**bit1**|(% style="background-color:#d9e2f3; color:#0070c0; width:129px" %)**bit0**
393 +|(% style="width:76px" %)**Value**|(% style="width:96px" %)Reserve|(% style="width:110px" %)(((
394 +Count mod
395 +)))|(% style="width:106px" %)TDC flag 0:No;1:Yes|(% style="width:125px" %)(((
396 +0: No Alarm;
329 329  
330 -Message
398 +1: Alarm
399 +)))|(% style="width:129px" %)(((
400 +Status 0: Close;
331 331  
332 -Flag
333 -)))|(% style="width:111px" %)Reserve|(% style="width:197px" %)[[Enable/disable Timeout Alarm>>||anchor="H3.3.3A0Enable2FDisableAlarm"]]
334 -0: No Alarm; 1: Alarm|(% style="width:104px" %)Status
335 -0: Close, 1: Open
402 +1: Open
403 +)))
336 336  
337 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDS03A%20-%20Outdoor%20LoRaWAN%20OpenClose%20Door%20Sensor%20Manual/WebHome/image-20220609110547-6.png?width=1191&height=337&rev=1.1||alt="image-20220609110547-6.png" height="337" width="1191"]]
405 +[[image:image-20230630155451-2.png||height="246" width="928"]]
338 338  
339 339  
340 -=== 2.3.3  Historical Door Open/Close Event, FPORT~=3 ===
408 +2)When **AT+TTRCHANNEL=2**, Uplink Payload totals 18 bytes.
341 341  
410 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:819px" %)
411 +|=(% colspan="8" style="background-color: rgb(217, 226, 243); color: rgb(0, 112, 192); width: 817px;" %)**Real-Time Open/Close Status, FPORT=2**
412 +|(% style="width:94px" %)**Size(bytes)**|(% style="width:97px" %)**1**|(% style="width:95px" %)**3**|(% style="width:125px" %)**3**|(% style="width:100px" %)**4**|(% style="width:86px" %)**1**|(% style="width:96px" %)**3**|(% style="width:126px" %)**3**
413 +|(% style="width:95px" %)**Value**|(% style="width:97px" %)(((
414 +Status1
342 342  
416 +&[[Alarm>>||anchor="H3.3.4A0AlarmBaseonTimeout"]]1
417 +)))|(% style="width:95px" %)Total open door events1|(% style="width:125px" %)(((
418 +The last door open duration1 (unit: sec)
419 +)))|(% style="width:100px" %)[[Unix TimeStamp>>||anchor="H2.5.2UnixTimeStamp"]]|(% style="width:86px" %)(((
420 +Status2
421 +
422 +&[[Alarm>>||anchor="H3.3.4A0AlarmBaseonTimeout"]]2
423 +)))|(% style="width:96px" %)Total open door events2|(% style="width:126px" %)The last door open duration2 (unit: sec)
424 +
425 +**Status1 & Alarm1:**
426 +
427 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:730px" %)
428 +|(% style="background-color:#d9e2f3; color:#0070c0; width:59px" %)**Size(bit)**|(% style="background-color:#d9e2f3; color:#0070c0; width:79px" %)**[bit7:bit4]**|(% style="background-color:#d9e2f3; color:#0070c0; width:110px" %)**bit3**|(% style="background-color:#d9e2f3; color:#0070c0; width:106px" %)**bit2**|(% style="background-color:#d9e2f3; color:#0070c0; width:167px" %)**bit1**|(% style="background-color:#d9e2f3; color:#0070c0; width:171px" %)**bit0**
429 +|(% style="width:76px" %)**Value**|(% style="width:96px" %)Reserve|(% style="width:110px" %)(((
430 +Count mod
431 +)))|(% style="width:106px" %)TDC flag 0:No;1:Yes|(% style="width:167px" %)(((
432 +0: No Alarm; 1: Alarm
433 +
434 +(PA8)
435 +)))|(% style="width:171px" %)(((
436 +Status 0: Close; 1:Open
437 +
438 +(PA8)
439 +)))
440 +
441 +**Status2 & Alarm2:**
442 +
443 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:550px" %)
444 +|(% style="background-color:#d9e2f3; color:#0070c0; width:59px" %)**Size(bit)**|(% style="background-color:#d9e2f3; color:#0070c0; width:113px" %)**[bit7:bit2]**|(% style="background-color:#d9e2f3; color:#0070c0; width:176px" %)**bit1**|(% style="background-color:#d9e2f3; color:#0070c0; width:175px" %)**bit0**
445 +|(% style="width:76px" %)**Value**|(% style="width:113px" %)Reserve|(% style="width:176px" %)(((
446 +0: No Alarm; 1: Alarm
447 +
448 +(PA4)
449 +)))|(% style="width:175px" %)(((
450 +Status 0: Close,;1:Open
451 +
452 +(PA4)
453 +)))
454 +
455 +[[image:image-20230630155908-6.png||height="295" width="927"]]
456 +
457 +
458 +=== 2.3.4  Historical Door Open/Close Event, FPORT~=3 ===
459 +
460 +
343 343  DS03A-LB stores sensor values and users can retrieve these history values via the [[downlink command>>||anchor="H2.5DatalogFeature"]].
344 344  
345 345  The historical payload includes one or multiplies entries and every entry has the same payload as Real-Time open/close status.
346 346  
465 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:515px" %)
466 +|=(% colspan="5" style="background-color:#D9E2F3;color:#0070C0;width:515px" %)**Real-Time Open/Close Status, FPORT=3**
467 +|(% style="width:94px" %)**Size(bytes)**|(% style="width:97px" %)**1**|(% style="width:95px" %)**3**|(% style="width:119px" %)**3**|(% style="width:107px" %)**4**
468 +|(% style="width:95px" %)**Value**|(% style="width:97px" %)(((
469 +Status
470 +
471 +&[[Alarm>>||anchor="H3.3.4A0AlarmBaseonTimeout"]]
472 +)))|(% style="width:95px" %)Total open door events|(% style="width:119px" %)(((
473 +The last door open duration (unit: sec)
474 +)))|(% style="width:108px" %)[[Unix TimeStamp>>||anchor="H2.5.2UnixTimeStamp"]]
475 +
476 +**Status & Alarm:**
477 +
478 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:755px" %)
479 +|(% style="background-color:#d9e2f3; color:#0070c0; width:59px" %)**Size(bit)**|(% style="background-color:#d9e2f3; color:#0070c0; width:88px" %)**bit7**|(% style="background-color:#d9e2f3; color:#0070c0; width:92px" %)**bit6**|(% style="background-color:#d9e2f3; color:#0070c0; width:89px" %)**[bit5:bit4]**|(% style="background-color:#d9e2f3; color:#0070c0; width:90px" %)**bit3**|(% style="background-color:#d9e2f3; color:#0070c0; width:95px" %)**bit2**|(% style="background-color:#d9e2f3; color:#0070c0; width:116px" %)**bit1**|(% style="background-color:#d9e2f3; color:#0070c0; width:112px" %)**bit0**
480 +|(% style="width:76px" %)**Value**|(% style="width:88px" %)No ACK message|(% style="width:92px" %)Poll Message Flag|(% style="width:89px" %)Reserve|(% style="width:90px" %)(((
481 +Count mod
482 +)))|(% style="width:95px" %)TDC flag 0:No;1:Yes|(% style="width:116px" %)(((
483 +0: No Alarm;
484 +
485 +1: Alarm
486 +)))|(% style="width:112px" %)(((
487 +Status 0:Close;
488 +
489 +1: Open
490 +)))
491 +
347 347  * (((
348 348  Each data entry is 11 bytes and has the same structure as [[Real-Time open/close status>>||anchor="H2.3.2A0Real-TimeOpen2FCloseStatus2CUplinkFPORT3D2"]], to save airtime and battery, DS03A-LB will send max bytes according to the current DR and Frequency bands.
349 349  )))
... ... @@ -368,82 +368,40 @@
368 368  
369 369  If DS03A-LB doesn't have any data in the polling time. It will uplink 11 bytes of 0
370 370  
371 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDS03A%20-%20Outdoor%20LoRaWAN%20OpenClose%20Door%20Sensor%20Manual/WebHome/image-20220609112215-7.png?width=1250&height=277&rev=1.1||alt="image-20220609112215-7.png" height="277" width="1250"]]
516 +[[image:image-20230630155556-4.png||height="146" width="938"]]
372 372  
373 373  **Downlink:**
374 374  
375 -0x31 61 8E 57 40 61 8E 81 70 05
520 +0x31 64 9E 7D 34 64 9E 7E 9C 05
376 376  
377 377  
378 378  **Uplink:**
379 379  
380 -00 00 00 00 00 00 00 61 8E 5F 8F 01 00 00 01 00 00 00 61 8E 5F D2 00 00 00 01 00 00 02 61 8E 60 64 01 00 00 02 00 00 02 61 8E 60 75 00 00 00 02 00 00 01 61 8E 60 C6 00 00 00 02 00 00 01 61 8E 7B A7 01 00 00 03 00 00 01 61 8E 7F 38 00 00 00 03 00 00 02 61 8E 7F CE 01 00 00 04 00 00 02 61 8E 81 1B 00 00 00 04 00 00 00 61 8E 81 50
525 +45 00 00 00 00 00 00 64 9E 7D 48 40 00 00 00 00 00 63 64 9E 7D 9C 41 00 00 01 00 00 63 64 9E 7D A4 40 00 00 01 00 00 8D 64 9E 7E 31 43 00 00 02 00 00 8D 64 9E 7E 44 48 00 00 02 00 00 1F 64 9E 7E 59 4B 00 00 03 00 00 1F 64 9E 7E 6B
381 381  
382 382  
383 383  **Parsed Value:**
384 384  
385 -[ALARM, DOOR_OPEN_STATUS, DOOR_OPEN_TIMES,LAST_DOOR_OPEN_DURATION, TIME]
530 +[COUNTMOD, TDC_FLAG, ALARM,  DOOR_STATUS, DOOR_OPEN_TIMES, LAST_DOOR_OPEN_DURATION, TIME]
386 386  
387 387  
388 -[FALSE, CLOSE, 0, 0, 2021-11-12 12:35:27],
533 +[SUM,YES,FALSE,OPEN,0,0,2023-06-30 06:59:20],
389 389  
390 -[FALSE, OPEN,  1, 0, 2021-11-12 12:36:34],
535 +[SUM,NO,FALSE,CLOSE,0,99,2023-06-30 07:00:44],
391 391  
392 -[FALSE, CLOSE, 1, 2, 2021-11-12 12:39:00],
537 +[SUM,NO,FALSE,OPEN, 1,99,2023-06-30 07:00:52],
393 393  
394 -[FALSE, OPEN,  2, 2, 2021-11-12 12:39:17],
539 +[SUM,NO,FALSE,CLOSE,1,141,2023-06-30 07:03:13],
395 395  
396 -[FALSE, CLOSE, 2, 1, 2021-11-12 12:40:38],
541 +[SUM,NO,TRUE,OPEN, 2,141,2023-06-30 07:03:32],
397 397  
398 -[FALSE, CLOSE, 2, 1, 2021-11-12 14:35:19],
543 +[PART,NO,FALSE,CLOSE,2,31,2023-06-30 07:03:53],
399 399  
400 -[FALSE, OPEN,  3, 1, 2021-11-12 14:50:32],
545 +[PART,NO,TRUE,OPEN, 3,31,2023-06-30 07:04:11],
401 401  
402 -[FALSE, CLOSE, 3, 2, 2021-11-12 14:53:02],
547 +[[image:image-20230630172740-1.png||height="199" width="868"]]
403 403  
404 -[FALSE, OPEN,  4, 2, 2021-11-12 14:58:35],
405 405  
406 -[FALSE, CLOSE, 4, 0, 2021-11-12 14:59:28],
407 -
408 -
409 -=== 2.3.4  Sensor Configuration, FPORT~=4 ===
410 -
411 -
412 -DS03A-LB will only send this command after getting the downlink command (0x26 02) from the server.
413 -
414 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
415 -|(% colspan="5" style="background-color:#d9e2f3; color:#0070c0; width:504px" %)**Sensor Configuration FPORT=4**
416 -|**Size(bytes)**|(% style="width:75px" %)**3**|(% style="width:77px" %)**1**|(% style="width:96px" %)**1**|(% style="width:158px" %)**2**
417 -|**Value**|(% style="width:75px" %)TDC (unit:sec)|(% style="width:77px" %)Disalarm|(% style="width:96px" %)Keep status|(% style="width:158px" %)Keep time (unit: min)
418 -
419 -* (((
420 -(% style="color:blue" %)**TDC: (default: 0x001C20)**
421 -)))
422 -
423 -Uplink interval for the Open/Close Event, default value is 0x001C20 which is 7200 seconds = 2 hours.
424 -
425 -
426 -* (((
427 -(% style="color:blue" %)**Disalarm: (default: 0)**
428 -)))
429 -
430 - **If Disalarm = 1**, DS03A-LB will only send uplink at every TDC periodically. This is normally use for pulse meter application, in this application, there are many open/close event, and platform only care about the total number of pulse.
431 -
432 - **If Disalarm = 0**, DS03A-LB will send uplink at every TDC periodically and send data on each open/close event. This is useful for the application user need to monitor the open/close event in real-time.
433 -
434 -
435 -(% style="color:red" %)** Note: When Disalarm=0, a high frequently open/close event will cause lots of uplink and drain battery very fast. **
436 -
437 -
438 -* (((
439 -(% style="color:blue" %)**Keep Status & Keep Time**
440 -)))
441 -
442 -Shows the configure value of [[Alarm Base on Timeout Feature>>url:http://wiki.dragino.com/xwiki/bin/view/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDS03A%20-%20Outdoor%20LoRaWAN%20OpenClose%20Door%20Sensor%20Manual/#H3.8A0AlarmBaseonTimeout]]
443 -
444 -[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LDS03A%20-%20Outdoor%20LoRaWAN%20OpenClose%20Door%20Sensor%20Manual/WebHome/image-20220609110018-4.png?width=1159&height=291&rev=1.1||alt="image-20220609110018-4.png" height="291" width="1159"]]
445 -
446 -
447 447  == 2.4 Payload Decoder file ==
448 448  
449 449  
... ... @@ -461,7 +461,9 @@
461 461  
462 462  (% style="color:blue" %)**Datalog Feature** (%%)is to ensure IoT Server can get all sampling data from Sensor even if the LoRaWAN network is down. For each sampling, DS03A-LB will store the reading for future retrieving purposes.
463 463  
567 +(% style="color:red" %)**Note:After the device is reset,in cumulative counting mode,the last stored count value will be read as the initial value.**
464 464  
569 +
465 465  === 2.5.1 Ways to get datalog via LoRaWAN ===
466 466  
467 467  
... ... @@ -566,7 +566,6 @@
566 566  * AT Command via UART Connection : See [[Connection>>http://wiki.dragino.com/xwiki/bin/view/Main/UART%20Access%20for%20LoRa%20ST%20v4%20base%20model/#H2.3UARTConnectionforSN50v3basemotherboard]].
567 567  * LoRaWAN Downlink.  Instruction for different platforms: See [[IoT LoRaWAN Server>>http://wiki.dragino.com/xwiki/bin/view/Main/]] section.
568 568  
569 -
570 570  == 3.2 General Commands ==
571 571  
572 572  
... ... @@ -586,7 +586,7 @@
586 586  These commands only valid for DS03A-LB, as below:
587 587  
588 588  
589 -=== 3.3.1 Set Transmit Interval Time ===
693 +=== 3.3.1  Set Transmit Interval Time ===
590 590  
591 591  
592 592  Feature: Change LoRaWAN End Node Transmit Interval.
... ... @@ -614,20 +614,9 @@
614 614  * Example 1: Downlink Payload: 0100001E  ~/~/  Set Transmit Interval (TDC) = 30 seconds
615 615  * Example 2: Downlink Payload: 0100003C  ~/~/  Set Transmit Interval (TDC) = 60 seconds
616 616  
721 +=== 3.3.2  Enable / Disable Alarm ===
617 617  
618 -=== 3.3.2 Get Device Status ===
619 619  
620 -
621 -Send a LoRaWAN downlink to ask device send Alarm settings.
622 -
623 -* (% style="color:blue" %)**Downlink Payload:  **(%%)0x26 01
624 -
625 -Sensor will upload Device Status via FPORT=5. See payload section for detail.
626 -
627 -
628 -=== 3.3.3  Enable / Disable Alarm ===
629 -
630 -
631 631  Feature: Enable/Disable Alarm for open/close event. Default value 0.
632 632  
633 633  (% style="color:blue" %)**AT Command: **
... ... @@ -644,7 +644,7 @@
644 644  0xA7 00  ~/~/ Same As AT+DISALARM=0
645 645  
646 646  
647 -=== 3.3.4  Alarm Base on Timeout ===
740 +=== 3.3.3  Alarm Base on Timeout ===
648 648  
649 649  
650 650  DS03A-LB can monitor the timeout for a status change, this feature can be used to monitor some events such as door opening too long etc. Related Parameters are:
... ... @@ -670,37 +670,103 @@
670 670  If (% style="color:#037691" %)**keep time > 0**(%%), device will monitor the keep status event and send an alarm when status doesn't change after timeout.
671 671  
672 672  
766 +* (((
767 +(% style="color:blue" %)**Downlink Command**
768 +)))
769 +
770 +(% style="color:#037691" %)**Command: 0xA9 aa bb cc dd**
771 +
772 +**A9:** Command Type Code
773 +
774 +**aa: **01:TTRIG1; 02:TTRIG2
775 +
776 +**bb:** status to be monitored
777 +
778 +**cc dd:** timeout.
779 +
780 +
781 +1)**AT+TTRIG1**:(PA8 of pin)
782 +
673 673  (% style="color:blue" %)**AT Command to configure:**
674 674  
675 675  * (((
676 -(% style="color:#037691" %)**AT+TTRIG=1,30** (%%) **~-~->** When the **Keep Status** change from close to open, and device remains in open status for more than 30 seconds. LDS03A will send an uplink packet, the [[Alarm bit>>||anchor="H2.3.2A0Real-TimeOpen2FCloseStatus2CUplinkFPORT3D2"]] (the second bit of 1^^st^^ byte of payload) on this uplink packet is set to 1.
786 +(% style="color:#037691" %)**AT+TTRIG1=1,30** (%%) **~-~->** When the **Keep Status** change from close to open, and device remains in open status for more than 30 seconds. DS03A-LB will send an uplink packet, the Alarm1 bit(the second bit of 1^^st^^ byte of payload) on this uplink packet is set to 1.
787 +
788 +(% style="color:#037691" %)**AT+TTRIG1=0,30** (%%) **~-~->** When the **Keep Status** change from open to close, and device remains in open status for more than 30 seconds. DS03A-LB will send an uplink packet, the Alarm1 bit (the second bit of 1^^st^^ byte of payload) on this uplink packet is set to 1.
677 677  )))
678 678  
679 679  * (((
680 -(% style="color:#037691" %)**AT+TTRIG=0,0**  (%%) **~-~-> ** Default Value, disable timeout Alarm.
792 +(% style="color:#037691" %)**AT+TTRIG1=0,0**  (%%) **~-~-> ** Default Value, disable timeout Alarm.
793 +
794 +
795 +
681 681  )))
682 682  
683 683  (% style="color:blue" %)**Downlink Command to configure:**
684 684  
685 -(% style="color:#037691" %)**Command: 0xA9 aa bb cc**
800 +If user send 0xA9 01 01 00 1E: equal to AT+TTRIG1=1,30 or
686 686  
687 -**A9:** Command Type Code
802 + 0xA9 01 00 00 00: Equal to AT+TTRIG1=0,0.
688 688  
689 -**aa:** status to be monitored
690 690  
691 -**bb cc:** timeout.
805 +2)**AT+TTRIG2**:(PA4 of pin,need to use AT+TTRCHANNEL=2)
692 692  
807 +(% style="color:blue" %)**AT Command to configure:**
693 693  
694 -If user send 0xA9 01 00 1E: equal to AT+TTRIG=1,30
809 +* (((
810 +(% style="color:#037691" %)**AT+TTRIG2=1,30** (%%) **~-~->** When the **Keep Status** change from close to open, and device remains in open status for more than 30 seconds. DS03A-LB will send an uplink packet, the Alarm2 bit (the second bit of 12^^st^^ byte of payload) on this uplink packet is set to 1.
695 695  
696 -Or
812 +(% style="color:#037691" %)**AT+TTRIG2=0,30** (%%) **~-~->** When the **Keep Status** change from open to close, and device remains in open status for more than 30 seconds. DS03A-LB will send an uplink packet, the Alarm2 bit (the second bit of 12^^st^^ byte of payload) on this uplink packet is set to 1.
813 +)))
697 697  
698 -0xA9 00 00 00: Equal to AT+TTRIG=0,0. Disable timeout Alarm.
815 +* (((
816 +(% style="color:#037691" %)**AT+TTRIG2=0,0**  (%%) **~-~-> ** Default Value, disable timeout Alarm.
699 699  
700 700  
819 +
820 +)))
821 +
822 +(% style="color:blue" %)**Downlink Command to configure:**
823 +
824 +If user send 0xA9 02 00 00 1E: equal to AT+TTRIG2=0,30 or
825 +
826 + 0xA9 02 00 00 00: Equal to AT+TTRIG2=0,0.
827 +
828 +
829 +=== 3.3.4  TTRIG1 & TTRIG2 timeout status alarm ===
830 +
831 +
832 +It needs to be used with AT+TTRIG1 or AT+TTRIG2. When TTRIG1 or TTRIG2 times out and causes an alarm, and the status does not change subsequently, an alarm packet will be sent at the alarm interval.
833 +
834 +(% style="color:blue" %)**AT Command:**
835 +
836 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
837 +|=(% style="width: 155px;background-color:#D9E2F3;color:#0070C0" %)**Command Example**|=(% style="width: 279px;background-color:#D9E2F3;color:#0070C0" %)**Function**|=(% style="width: 76px;background-color:#D9E2F3;color:#0070C0" %)**Response**
838 +|(% style="width:155px" %)(((
839 +AT+TTRALARM=0
840 +)))|(% style="width:279px" %)(((
841 +disable continuous alarm
842 +)))|(% style="width:84px" %)(((
843 +OK
844 +)))
845 +|(% style="width:155px" %)(((
846 +AT+TTRALARM=60
847 +)))|(% style="width:279px" %)(((
848 +The alarm interval is 60 minutes (unit: minutes)
849 +)))|(% style="width:84px" %)(((
850 +OK
851 +)))
852 +
853 +(% style="color:blue" %)**Downlink Command:**
854 +
855 +Example:  0C aa  => AT+TTRALARM= aa
856 +
857 +
701 701  === 3.3.5  Count Mod ===
702 702  
703 703  
861 +Feature: Manually set the count mode.
862 +
704 704  (% style="color:blue" %)**AT Command:**
705 705  
706 706  (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:520px" %)
... ... @@ -725,24 +725,26 @@
725 725  Example:  0B aa  => AT+COUNTMOD = second byte
726 726  
727 727  
728 -=== 3.3.6  Interrupt Pin Channel Mod ===
887 +=== 3.3.6  Number of channel of door sensors ===
729 729  
730 730  
890 +Feature: Set the number of door sensor channels.
891 +
731 731  (% style="color:blue" %)**AT Command:**
732 732  
733 733  (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:500px" %)
734 -|=(% style="width: 155px;background-color:#D9E2F3;color:#0070C0" %)**Command Example**|=(% style="width: 288px;background-color:#D9E2F3;color:#0070C0" %)**Function**|=(% style="width: 57px;background-color:#D9E2F3;color:#0070C0" %)**Response**
895 +|=(% style="width: 155px;background-color:#D9E2F3;color:#0070C0" %)**Command Example**|=(% style="width: 259px; background-color: rgb(217, 226, 243); color: rgb(0, 112, 192);" %)**Function**|=(% style="width: 57px;background-color:#D9E2F3;color:#0070C0" %)**Response**
735 735  |(% style="width:155px" %)(((
736 736  AT+TTRCHANNEL=1
737 -)))|(% style="width:288px" %)(((
738 -set as single channel, only use PB14 pin as interrupt pin.
898 +)))|(% style="width:259px" %)(((
899 +Set as single channel, only use PA8 pin as interrupt pin.
739 739  )))|(% style="width:44px" %)(((
740 740  OK
741 741  )))
742 742  |(% style="width:155px" %)(((
743 743  AT+TTRCHANNEL=2
744 -)))|(% style="width:288px" %)(((
745 -is set as dual channel, use PB14 pin and PB15 pin as interrupt pin.
905 +)))|(% style="width:259px" %)(((
906 +Set as dual channel, use PA8 pin and PA4 pin as interrupt pin.
746 746  )))|(% style="width:44px" %)(((
747 747  OK
748 748  )))
... ... @@ -752,78 +752,92 @@
752 752  Example:  0D aa => AT+TTRCHANNEL = second byte
753 753  
754 754  
755 -=== 3.3.7  Change the name of AT+TTRIG to AT+TTRIG1 ===
916 +=== 3.3.7  Set Time Sync Mode ===
756 756  
757 757  
758 -(% style="color:blue" %)**Downlink Command:**
919 +Feature: Enable/Disable Sync system time via LoRaWAN MAC Command (DeviceTimeReq), LoRaWAN server must support v1.0.3 protocol to reply to this command.
759 759  
760 -Example A9 01 aa bb cc  => AT+TTRIG1= third byte, 4th byte and 5th byte
921 +SYNCMOD is set to 1 by default. If user wants to set a different time from the LoRaWAN server, the user needs to set this to 0.
761 761  
923 +(% style="color:blue" %)**AT Command:**
762 762  
763 -=== 3.3.8  Added AT+TTRIG2 for PB15 pin ===
925 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:500px" %)
926 +|=(% style="width: 155px;background-color:#D9E2F3;color:#0070C0" %)**Command Example**|=(% style="width: 259px; background-color: rgb(217, 226, 243); color: rgb(0, 112, 192);" %)**Function**|=(% style="width: 57px;background-color:#D9E2F3;color:#0070C0" %)**Response**
927 +|(% style="width:155px" %)(((
928 +AT+SYNCMOD=1
929 +)))|(% style="width:259px" %)(((
930 +Enable Sync system time via LoRaWAN MAC Command (DeviceTimeReq) The default is zero time zone.
931 +)))|(% style="width:44px" %)(((
932 +OK
933 +)))
934 +|(% style="width:155px" %)(((
935 +AT+SYNCMOD=1,8
936 +)))|(% style="width:259px" %)(((
937 +Enable Sync system time via LoRaWAN MAC Command (DeviceTimeReq) Set to East eight time zone.
938 +)))|(% style="width:44px" %)(((
939 +OK
940 +)))
941 +|(% style="width:155px" %)AT+SYNCMOD=1,-12|(% style="width:259px" %)Enable Sync system time via LoRaWAN MAC Command (DeviceTimeReq) Set to West Twelve Time Zone.|(% style="width:44px" %)OK
764 764  
765 -
766 766  (% style="color:blue" %)**Downlink Command:**
767 767  
768 -Example: A9 02 aa bb cc  => AT+TTRIG2= third byte, 4th byte and 5th byte
945 +0x28 0 ~/~/ Same As AT+SYNCMOD=1
769 769  
947 +0x28 01 08  ~/~/ Same As AT+SYNCMOD=1,8
770 770  
771 -=== 3.3.9  TTRIG1/2 timeout status alarm ===
949 +0x28 01 F4  ~/~/ Same As AT+SYNCMOD=1,-12
772 772  
951 +0x28 00  ~/~/ Same As AT+SYNCMOD=0
773 773  
774 -It needs to be used with AT+TTRIG1 or AT+TTRIG2. When TTRIG1 or TTRIG2 times out and causes an alarm, and the status does not change subsequently, an alarm packet will be sent at the alarm interval.
775 775  
954 +=== 3.3.8  Clear the door open count and the duration of the last door open ===
955 +
956 +
776 776  (% style="color:blue" %)**AT Command:**
777 777  
778 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
779 -|=(% style="width: 155px;background-color:#D9E2F3;color:#0070C0" %)**Command Example**|=(% style="width: 279px;background-color:#D9E2F3;color:#0070C0" %)**Function**|=(% style="width: 76px;background-color:#D9E2F3;color:#0070C0" %)**Response**
780 -|(% style="width:155px" %)(((
781 -AT+TTRALARM=0
782 -)))|(% style="width:279px" %)(((
783 -disable continuous alarm
784 -)))|(% style="width:84px" %)(((
959 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:500px" %)
960 +|=(% style="width: 155px;background-color:#D9E2F3;color:#0070C0" %)**Command Example**|=(% style="width: 259px; background-color: rgb(217, 226, 243); color: rgb(0, 112, 192);" %)**Function**|=(% style="width: 57px;background-color:#D9E2F3;color:#0070C0" %)**Response**
961 +|(% style="width:155px" %)AT+CLRC|(% style="width:259px" %)clear the leak count and the duration of the last leak.|(% style="width:44px" %)(((
785 785  OK
786 786  )))
787 -|(% style="width:155px" %)(((
788 -AT+TTRALARM=60
789 -)))|(% style="width:279px" %)(((
790 -The alarm interval is 60 minutes (unit: minutes)
791 -)))|(% style="width:84px" %)(((
792 -OK
793 -)))
794 794  
795 -(% style="color:blue" %)**Downlink Command:**
965 +(% style="color:blue" %)**Downlink Command:**(%%)0xA6 01
796 796  
797 -Example 0C aa  => AT+TTRALARM= aa
967 +The sensor will clear the door open count and the duration of the last door open.
798 798  
799 799  
800 -=== 3.3.10  Select counting mode ===
970 +=== 3.3.9  Set the count value of the number of door open ===
801 801  
802 802  
803 -(% style="color:blue" %)**AT+TTRMODx=a,b**
804 -
805 -When (% style="color:#037691" %)**a=0**(%%), the door is opened to count, and when (% style="color:#037691" %)**a=1**(%%),the closed door is counted.
806 -
807 -When (% style="color:#037691" %)**b=0**(%%), it is the last door open duration, and when (% style="color:#037691" %)**b=1**(%%),the last door close duration.
808 -
809 809  (% style="color:blue" %)**AT Command:**
810 810  
811 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
812 -|=(% style="width: 155px;background-color:#D9E2F3;color:#0070C0" %)**Command Example**|=(% style="width: 278px;background-color:#D9E2F3;color:#0070C0" %)**Function**|=(% style="width: 77px;background-color:#D9E2F3;color:#0070C0" %)**Response**
975 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:500px" %)
976 +|=(% style="width: 155px;background-color:#D9E2F3;color:#0070C0" %)**Command Example**|=(% style="width: 259px; background-color: rgb(217, 226, 243); color: rgb(0, 112, 192);" %)**Function**|=(% style="width: 57px;background-color:#D9E2F3;color:#0070C0" %)**Response**
813 813  |(% style="width:155px" %)(((
814 -AT+TTRMODx=1,0
815 -)))|(% style="width:278px" %)Door closed count and record the last door opened duration|(% style="width:85px" %)(((
978 +AT+SETCNT=1,100
979 +)))|(% style="width:259px" %)(((
980 +Set the door open times of PA8 pin to 100 times.
981 +)))|(% style="width:44px" %)(((
816 816  OK
817 817  )))
984 +|(% style="width:155px" %)AT+SETCNT=1,0|(% style="width:259px" %)Clear the door open times of PA8 pin.|(% style="width:44px" %)OK
818 818  |(% style="width:155px" %)(((
819 -AT+TTRMODx=0,1
820 -)))|(% style="width:278px" %)(((
821 -Door opened count and record the last door Door Door open closed duration
822 -)))|(% style="width:85px" %)(((
986 +AT+SETCNT=2,50
987 +)))|(% style="width:259px" %)(((
988 +Set the door open times of PA4 pin to 100 times.
989 +)))|(% style="width:44px" %)(((
823 823  OK
824 824  )))
825 825  
993 +(% style="color:blue" %)**Downlink Command:**
826 826  
995 +0xA6 01 00 00 64  ==>  AT+SETCNT=1,100
996 +
997 +0xA6 01 00 00 00  ==>  AT+SETCNT=1,0
998 +
999 +0xA6 02 00 00 32  ==>  AT+SETCNT=2,50
1000 +
1001 +
827 827  = 4. Battery & Power Consumption =
828 828  
829 829  
... ... @@ -846,10 +846,9 @@
846 846  
847 847  **Methods to Update Firmware:**
848 848  
849 -* (Recommanded way) OTA firmware update via wireless: [[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/Firmware%20OTA%20Update%20for%20Sensors/>>url:http://wiki.dragino.com/xwiki/bin/view/Main/Firmware%20OTA%20Update%20for%20Sensors/]]
850 -* 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]]**.
1024 +* (Recommanded way) OTA firmware update via wireless:** [[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/Firmware%20OTA%20Update%20for%20Sensors/>>url:http://wiki.dragino.com/xwiki/bin/view/Main/Firmware%20OTA%20Update%20for%20Sensors/]]**
1025 +* 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]]**.
851 851  
852 -
853 853  = 6. FAQ =
854 854  
855 855  
... ... @@ -877,7 +877,6 @@
877 877  
878 878  * (% style="color:red" %)**CN470**(%%): LoRaWAN CN470 band
879 879  
880 -
881 881  = 8. ​Packing Info =
882 882  
883 883  
... ... @@ -895,7 +895,6 @@
895 895  
896 896  * Weight / pcs : g
897 897  
898 -
899 899  = 9. Support =
900 900  
901 901  
image-20230630155406-1.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Saxer
Size
... ... @@ -1,0 +1,1 @@
1 +41.8 KB
Content
image-20230630155451-2.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Saxer
Size
... ... @@ -1,0 +1,1 @@
1 +77.2 KB
Content
image-20230630155527-3.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Saxer
Size
... ... @@ -1,0 +1,1 @@
1 +39.2 KB
Content
image-20230630155556-4.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Saxer
Size
... ... @@ -1,0 +1,1 @@
1 +38.4 KB
Content
image-20230630155751-5.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Saxer
Size
... ... @@ -1,0 +1,1 @@
1 +37.1 KB
Content
image-20230630155908-6.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Saxer
Size
... ... @@ -1,0 +1,1 @@
1 +90.8 KB
Content
image-20230630160843-7.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Saxer
Size
... ... @@ -1,0 +1,1 @@
1 +511.7 KB
Content
image-20230630172740-1.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Saxer
Size
... ... @@ -1,0 +1,1 @@
1 +37.1 KB
Content
image-20230701094042-1.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Saxer
Size
... ... @@ -1,0 +1,1 @@
1 +34.5 KB
Content
Copyright ©2010-2024 Dragino Technology Co., LTD. All rights reserved
Dragino Wiki v2.0