<
From version < 31.1 >
edited by Saxer Lin
on 2023/07/01 09:43
To version < 12.3 >
edited by Xiaoling
on 2023/06/26 16:10
>
Change comment: There is no comment for this version

Summary

Details

Page properties
Author
... ... @@ -1,1 +1,1 @@
1 -XWiki.Saxer
1 +XWiki.Xiaoling
Content
... ... @@ -71,6 +71,8 @@
71 71  * Wall Mountable
72 72  * Outdoor Use
73 73  
74 +
75 +
74 74  == 1.3 Specification ==
75 75  
76 76  
... ... @@ -104,6 +104,8 @@
104 104  * Sleep Mode: 5uA @ 3.3v
105 105  * LoRa Transmit Mode: 125mA @ 20dBm, 82mA @ 14dBm
106 106  
109 +
110 +
107 107  == 1.4 Applications ==
108 108  
109 109  
... ... @@ -137,10 +137,12 @@
137 137  )))
138 138  |(% 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.
139 139  
144 +
145 +
140 140  == 1.7 BLE connection ==
141 141  
142 142  
143 -DS03A-LB support BLE remote configure.
149 +D2x-LB support BLE remote configure.
144 144  
145 145  
146 146  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:
... ... @@ -152,13 +152,9 @@
152 152  If there is no activity connection on BLE in 60 seconds, sensor will shut down BLE module to enter low power mode.
153 153  
154 154  
155 -== 1.8 Pin Definitions ==
161 +== 1.8 Mechanical ==
156 156  
157 -[[image:image-20230630160843-7.png]]
158 158  
159 -== 1.9 Mechanical ==
160 -
161 -
162 162  [[image:Main.User Manual for LoRaWAN End Nodes.LDS03A - Outdoor LoRaWAN OpenClose Door Sensor Manual.WebHome@1654741444887-479.png||height="399" width="513"]]
163 163  
164 164  
... ... @@ -176,7 +176,7 @@
176 176  == 2.1 How it works ==
177 177  
178 178  
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.
181 +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.
180 180  
181 181  
182 182  == 2.2 ​Quick guide to connect to LoRaWAN server (OTAA) ==
... ... @@ -184,7 +184,7 @@
184 184  
185 185  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" %)
186 186  
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.
189 +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.
188 188  
189 189  [[image:image-20230522092858-1.png||height="391" width="874"]]
190 190  
... ... @@ -248,7 +248,7 @@
248 248  
249 249  Example parse in TTNv3
250 250  
251 -[[image:image-20230630155406-1.png||height="190" width="873"]]
253 +[[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"]]
252 252  
253 253  
254 254  (% style="color:#037691" %)**Sensor Model**(%%): For DS03A-LB, this value is 0x1B
... ... @@ -304,299 +304,144 @@
304 304  Ex2: 0x0B49 = 2889mV
305 305  
306 306  
307 -=== (% style="color:inherit; font-family:inherit; font-size:23px" %)2.3.2  Sensor Configuration, FPORT~=4(%%) ===
309 +=== 2.3.2  Real-Time Open/Close Status, Uplink FPORT~=2 ===
308 308  
309 309  
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 -
371 371  DS03A-LB will send this uplink **after** Device Status once join the LoRaWAN network successfully. And DS03A-LB will send uplinks when:
372 372  
373 373  * Every 2 hours, this interval [[can be changed>>||anchor="H3.3.1SetTransmitIntervalTime"]].
374 374  * There is an Open/Close event.  (This info can be disabled by AT+DISALARM=1)
375 375  
376 -1)When **AT+TTRCHANNEL=1**, Uplink Payload totals 11 bytes. (**Default mode**)
317 +Uplink Payload totals 11 bytes.
377 377  
378 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:515px" %)
319 +(% border="1" cellspacing="4" style="background-color:#f2f2f2;width:515px" %)
379 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 +|(% style="width:94px" %)**Size(bytes)**|(% style="width:77px" %)**1**|(% style="width:97px" %)**3**|(% style="width:143px" %)**3**|(% style="width:107px" %)**4**
322 +|(% style="width:95px" %)**Value**|(% style="width:78px" %)Status & [[Alarm>>||anchor="H3.3.4A0AlarmBaseonTimeout"]]|(% style="width:98px" %)Total open door events|(% style="width:144px" %)(((
323 +The last door open duration (unit: min)
387 387  )))|(% style="width:108px" %)[[Unix TimeStamp>>||anchor="H2.5.2UnixTimeStamp"]]
388 388  
389 389  **Status & Alarm:**
390 390  
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;
328 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:515px" %)
329 +|(% style="background-color:#d9e2f3; color:#0070c0; width:59px" %)**Size(bit)**|(% style="background-color:#d9e2f3; color:#0070c0; width:79px" %)**bit7**|(% style="background-color:#d9e2f3; color:#0070c0; width:79px" %)**bit6**|(% style="background-color:#d9e2f3; color:#0070c0; width:59px" %)**[bit5:bit2]**|(% style="background-color:#d9e2f3; color:#0070c0; width:129px" %)**bit1**|(% style="background-color:#d9e2f3; color:#0070c0; width:110px" %)**bit0**
330 +|(% style="width:76px" %)**Value**|(% style="width:79px" %)(((
331 +No ACK Message
332 +)))|(% style="width:84px" %)(((
333 +Poll Message Flag
334 +)))|(% style="width:96px" %)Reserve|(% style="width:197px" %)[[Enable/disable Timeout Alarm>>||anchor="H3.3.3A0Enable2FDisableAlarm"]]
335 +0: No Alarm; 1: Alarm|(% style="width:104px" %)Status 0: Close, 1: Open
397 397  
398 -1: Alarm
399 -)))|(% style="width:129px" %)(((
400 -Status 0: Close;
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"]]
401 401  
402 -1: Open
403 -)))
404 404  
405 -[[image:image-20230630155451-2.png||height="246" width="928"]]
340 +=== 2.3.3  Historical Door Open/Close Event, FPORT~=3 ===
406 406  
407 407  
408 -* (((
409 -(% style="color:blue" %)**Count mod:Default=0**
410 -)))
343 +DS03A-LB stores sensor values and users can retrieve these history values via the [[downlink command>>||anchor="H2.5DatalogFeature"]].
411 411  
412 -MOD=0 ~-~-> Uplink total door open times since factory
345 +The historical payload includes one or multiplies entries and every entry has the same payload as Real-Time open/close status.
413 413  
414 -MOD=1 ~-~-> Uplink total door open times since last FPORT=2 uplink.
415 -
416 -
417 -* (% style="color:blue" %)**TDC flag**
418 -
419 -When the flag is 1, it means sending packets at normal time intervals.
420 -
421 -Otherwise, it is a packet sent at non-TDC time.
422 -
423 -
424 424  * (((
425 -(% style="color:#0000ff" %)**Alarm**
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.
426 426  )))
427 427  
428 -See [[Alarm Base on Timeout>>url:http://8.211.40.43/xwiki/bin/view/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/CPL01%20LoRaWAN%20Outdoor%20PulseContact%20%20Sensor%20Manual/#H3.5AlarmBaseonTimeout]]
351 +For example, in the US915 band, the max payload for different DR is:
429 429  
353 +(((
354 +**~1. DR0**: max is 11 bytes so one entry of data
355 +)))
430 430  
431 -* (((
432 -(% style="color:blue" %)**Status**
357 +(((
358 +**2. DR1**: max is 53 bytes so devices will upload 4 entries of data (total 44 bytes)
433 433  )))
434 434  
435 -This bit is 1 when the door sensor is open and 0 when it is close.
436 -
437 -
438 -* (((
439 -(% style="color:blue" %)**Total open door events**
361 +(((
362 +**3. DR2**: total payload includes 11 entries of data
440 440  )))
441 441  
442 -Total pulse/counting base on open door.
443 -
444 -Range (3 Bytes) : 0x000000 ~~ 0xFFFFFF . Max: 16777215
445 -
446 -
447 -* (((
448 -(% style="color:blue" %)**The last door open duration**
365 +(((
366 +**4. DR3**: total payload includes 22 entries of data.
449 449  )))
450 450  
451 -Door sensor last open duration.
369 +If DS03A-LB doesn't have any data in the polling time. It will uplink 11 bytes of 0
452 452  
453 -Unit: sec.
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"]]
454 454  
455 -[[image:image-20230701094042-1.png||height="154" width="763"]]
373 +**Downlink:**
456 456  
375 +0x31 61 8E 57 40 61 8E 81 70 05
457 457  
458 -2)When **AT+TTRCHANNEL=2**, Uplink Payload totals 18 bytes.
459 459  
460 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:819px" %)
461 -|=(% colspan="8" style="background-color: rgb(217, 226, 243); color: rgb(0, 112, 192); width: 817px;" %)**Real-Time Open/Close Status, FPORT=2**
462 -|(% 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**
463 -|(% style="width:95px" %)**Value**|(% style="width:97px" %)(((
464 -Status1
378 +**Uplink:**
465 465  
466 -&[[Alarm>>||anchor="H3.3.4A0AlarmBaseonTimeout"]]1
467 -)))|(% style="width:95px" %)Total open door events1|(% style="width:125px" %)(((
468 -The last door open duration1 (unit: sec)
469 -)))|(% style="width:100px" %)[[Unix TimeStamp>>||anchor="H2.5.2UnixTimeStamp"]]|(% style="width:86px" %)(((
470 -Status2
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
471 471  
472 -&[[Alarm>>||anchor="H3.3.4A0AlarmBaseonTimeout"]]2
473 -)))|(% style="width:96px" %)Total open door events2|(% style="width:126px" %)The last door open duration2 (unit: sec)
474 474  
475 -**Status1 & Alarm1:**
383 +**Parsed Value:**
476 476  
477 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:730px" %)
478 -|(% 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**
479 -|(% style="width:76px" %)**Value**|(% style="width:96px" %)Reserve|(% style="width:110px" %)(((
480 -Count mod
481 -)))|(% style="width:106px" %)TDC flag 0:No;1:Yes|(% style="width:167px" %)(((
482 -0: No Alarm; 1: Alarm
385 +[ALARM, DOOR_OPEN_STATUS, DOOR_OPEN_TIMES,LAST_DOOR_OPEN_DURATION, TIME]
483 483  
484 -(PA8)
485 -)))|(% style="width:171px" %)(((
486 -Status 0: Close; 1:Open
487 487  
488 -(PA8)
489 -)))
388 +[FALSE, CLOSE, 0, 0, 2021-11-12 12:35:27],
490 490  
491 -**Status2 & Alarm2:**
390 +[FALSE, OPEN,  1, 0, 2021-11-12 12:36:34],
492 492  
493 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:550px" %)
494 -|(% 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**
495 -|(% style="width:76px" %)**Value**|(% style="width:113px" %)Reserve|(% style="width:176px" %)(((
496 -0: No Alarm; 1: Alarm
392 +[FALSE, CLOSE, 1, 2, 2021-11-12 12:39:00],
497 497  
498 -(PA4)
499 -)))|(% style="width:175px" %)(((
500 -Status 0: Close,;1:Open
394 +[FALSE, OPEN,  2, 2, 2021-11-12 12:39:17],
501 501  
502 -(PA4)
503 -)))
396 +[FALSE, CLOSE, 2, 1, 2021-11-12 12:40:38],
504 504  
505 -[[image:image-20230630155908-6.png||height="295" width="927"]]
398 +[FALSE, CLOSE, 2, 1, 2021-11-12 14:35:19],
506 506  
400 +[FALSE, OPEN,  3, 1, 2021-11-12 14:50:32],
507 507  
508 -=== 2.3.4  Historical Door Open/Close Event, FPORT~=3 ===
402 +[FALSE, CLOSE, 3, 2, 2021-11-12 14:53:02],
509 509  
404 +[FALSE, OPEN,  4, 2, 2021-11-12 14:58:35],
510 510  
511 -DS03A-LB stores sensor values and users can retrieve these history values via the [[downlink command>>||anchor="H2.5DatalogFeature"]].
406 +[FALSE, CLOSE, 4, 0, 2021-11-12 14:59:28],
512 512  
513 -The historical payload includes one or multiplies entries and every entry has the same payload as Real-Time open/close status.
514 514  
515 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:515px" %)
516 -|=(% colspan="5" style="background-color:#D9E2F3;color:#0070C0;width:515px" %)**Real-Time Open/Close Status, FPORT=3**
517 -|(% style="width:94px" %)**Size(bytes)**|(% style="width:97px" %)**1**|(% style="width:95px" %)**3**|(% style="width:119px" %)**3**|(% style="width:107px" %)**4**
518 -|(% style="width:95px" %)**Value**|(% style="width:97px" %)(((
519 -Status
409 +=== 2.3.4  Sensor Configuration, FPORT~=4 ===
520 520  
521 -&[[Alarm>>||anchor="H3.3.4A0AlarmBaseonTimeout"]]
522 -)))|(% style="width:95px" %)Total open door events|(% style="width:119px" %)(((
523 -The last door open duration (unit: sec)
524 -)))|(% style="width:108px" %)[[Unix TimeStamp>>||anchor="H2.5.2UnixTimeStamp"]]
525 525  
526 -**Status & Alarm:**
412 +DS03A-LB will only send this command after getting the downlink command (0x26 02) from the server.
527 527  
528 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:755px" %)
529 -|(% 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**
530 -|(% style="width:76px" %)**Value**|(% style="width:88px" %)No ACK message|(% style="width:92px" %)Poll Message Flag|(% style="width:89px" %)Reserve|(% style="width:90px" %)(((
531 -Count mod
532 -)))|(% style="width:95px" %)TDC flag 0:No;1:Yes|(% style="width:116px" %)(((
533 -0: No Alarm;
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)
534 534  
535 -1: Alarm
536 -)))|(% style="width:112px" %)(((
537 -Status 0:Close;
538 -
539 -1: Open
540 -)))
541 -
542 542  * (((
543 -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.
420 +(% style="color:blue" %)**TDC: (default: 0x001C20)**
544 544  )))
545 545  
546 -For example, in the US915 band, the max payload for different DR is:
423 +Uplink interval for the Open/Close Event, default value is 0x001C20 which is 7200 seconds = 2 hours.
547 547  
548 -(((
549 -**~1. DR0**: max is 11 bytes so one entry of data
550 -)))
551 551  
552 -(((
553 -**2. DR1**: max is 53 bytes so devices will upload 4 entries of data (total 44 bytes)
426 +* (((
427 +(% style="color:blue" %)**Disalarm: (default: 0)**
554 554  )))
555 555  
556 -(((
557 -**3. DR2**: total payload includes 11 entries of data
558 -)))
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.
559 559  
560 -(((
561 -**4. DR3**: total payload includes 22 entries of data.
562 -)))
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.
563 563  
564 -If DS03A-LB doesn't have any data in the polling time. It will uplink 11 bytes of 0
565 565  
566 -[[image:image-20230630155556-4.png||height="146" width="938"]]
435 +(% style="color:red" %)** Note: When Disalarm=0, a high frequently open/close event will cause lots of uplink and drain battery very fast. **
567 567  
568 -**Downlink:**
569 569  
570 -0x31 64 9E 7D 34 64 9E 7E 9C 05
438 +* (((
439 +(% style="color:blue" %)**Keep Status & Keep Time**
440 +)))
571 571  
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]]
572 572  
573 -**Uplink:**
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"]]
574 574  
575 -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
576 576  
577 -
578 -**Parsed Value:**
579 -
580 -[COUNTMOD, TDC_FLAG, ALARM,  DOOR_STATUS, OPEN_DOOR_TIMES, LAST_DOOR_OPEN_DURATION, TIME]
581 -
582 -
583 -[SUM,YES,FALSE,OPEN,0,0,2023-06-30 06:59:20],
584 -
585 -[SUM,NO,FALSE,CLOSE,0,99,2023-06-30 07:00:44],
586 -
587 -[SUM,NO,FALSE,OPEN, 1,99,2023-06-30 07:00:52],
588 -
589 -[SUM,NO,FALSE,CLOSE,1,141,2023-06-30 07:03:13],
590 -
591 -[SUM,NO,TRUE,OPEN, 2,141,2023-06-30 07:03:32],
592 -
593 -[PART,NO,FALSE,CLOSE,2,31,2023-06-30 07:03:53],
594 -
595 -[PART,NO,TRUE,OPEN, 3,31,2023-06-30 07:04:11],
596 -
597 -[[image:image-20230630172740-1.png||height="199" width="868"]]
598 -
599 -
600 600  == 2.4 Payload Decoder file ==
601 601  
602 602  
... ... @@ -614,9 +614,7 @@
614 614  
615 615  (% 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.
616 616  
617 -(% 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.**
618 618  
619 -
620 620  === 2.5.1 Ways to get datalog via LoRaWAN ===
621 621  
622 622  
... ... @@ -740,7 +740,7 @@
740 740  These commands only valid for DS03A-LB, as below:
741 741  
742 742  
743 -=== 3.3.1  Set Transmit Interval Time ===
588 +=== 3.3.1 Set Transmit Interval Time ===
744 744  
745 745  
746 746  Feature: Change LoRaWAN End Node Transmit Interval.
... ... @@ -768,9 +768,19 @@
768 768  * Example 1: Downlink Payload: 0100001E  ~/~/  Set Transmit Interval (TDC) = 30 seconds
769 769  * Example 2: Downlink Payload: 0100003C  ~/~/  Set Transmit Interval (TDC) = 60 seconds
770 770  
771 -=== 3.3.2  Enable / Disable Alarm ===
616 +=== 3.3.2 Get Device Status ===
772 772  
773 773  
619 +Send a LoRaWAN downlink to ask device send Alarm settings.
620 +
621 +* (% style="color:blue" %)**Downlink Payload:  **(%%)0x26 01
622 +
623 +Sensor will upload Device Status via FPORT=5. See payload section for detail.
624 +
625 +
626 +=== 3.3.3  Enable / Disable Alarm ===
627 +
628 +
774 774  Feature: Enable/Disable Alarm for open/close event. Default value 0.
775 775  
776 776  (% style="color:blue" %)**AT Command: **
... ... @@ -787,7 +787,7 @@
787 787  0xA7 00  ~/~/ Same As AT+DISALARM=0
788 788  
789 789  
790 -=== 3.3.3  Alarm Base on Timeout ===
645 +=== 3.3.4  Alarm Base on Timeout ===
791 791  
792 792  
793 793  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:
... ... @@ -813,103 +813,37 @@
813 813  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.
814 814  
815 815  
816 -* (((
817 -(% style="color:blue" %)**Downlink Command**
818 -)))
819 -
820 -(% style="color:#037691" %)**Command: 0xA9 aa bb cc dd**
821 -
822 -**A9:** Command Type Code
823 -
824 -**aa: **01:TTRIG1; 02:TTRIG2
825 -
826 -**bb:** status to be monitored
827 -
828 -**cc dd:** timeout.
829 -
830 -
831 -1)**AT+TTRIG1**:(PA8 of pin)
832 -
833 833  (% style="color:blue" %)**AT Command to configure:**
834 834  
835 835  * (((
836 -(% 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.
837 -
838 -(% 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.
674 +(% 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.
839 839  )))
840 840  
841 841  * (((
842 -(% style="color:#037691" %)**AT+TTRIG1=0,0**  (%%) **~-~-> ** Default Value, disable timeout Alarm.
843 -
844 -
845 -
678 +(% style="color:#037691" %)**AT+TTRIG=0,0**  (%%) **~-~-> ** Default Value, disable timeout Alarm.
846 846  )))
847 847  
848 848  (% style="color:blue" %)**Downlink Command to configure:**
849 849  
850 -If user send 0xA9 01 01 00 1E: equal to AT+TTRIG1=1,30 or
683 +(% style="color:#037691" %)**Command: 0xA9 aa bb cc**
851 851  
852 - 0xA9 01 00 00 00: Equal to AT+TTRIG1=0,0.
685 +**A9:** Command Type Code
853 853  
687 +**aa:** status to be monitored
854 854  
855 -2)**AT+TTRIG2**:(PA4 of pin,need to use AT+TTRCHANNEL=2)
689 +**bb cc:** timeout.
856 856  
857 -(% style="color:blue" %)**AT Command to configure:**
858 858  
859 -* (((
860 -(% 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.
692 +If user send 0xA9 01 00 1E: equal to AT+TTRIG=1,30
861 861  
862 -(% 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.
863 -)))
694 +Or
864 864  
865 -* (((
866 -(% style="color:#037691" %)**AT+TTRIG2=0,0**  (%%) **~-~-> ** Default Value, disable timeout Alarm.
696 +0xA9 00 00 00: Equal to AT+TTRIG=0,0. Disable timeout Alarm.
867 867  
868 868  
869 -
870 -)))
871 -
872 -(% style="color:blue" %)**Downlink Command to configure:**
873 -
874 -If user send 0xA9 02 00 00 1E: equal to AT+TTRIG2=0,30 or
875 -
876 - 0xA9 02 00 00 00: Equal to AT+TTRIG2=0,0.
877 -
878 -
879 -=== 3.3.4  TTRIG1 & TTRIG2 timeout status alarm ===
880 -
881 -
882 -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.
883 -
884 -(% style="color:blue" %)**AT Command:**
885 -
886 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
887 -|=(% 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**
888 -|(% style="width:155px" %)(((
889 -AT+TTRALARM=0
890 -)))|(% style="width:279px" %)(((
891 -disable continuous alarm
892 -)))|(% style="width:84px" %)(((
893 -OK
894 -)))
895 -|(% style="width:155px" %)(((
896 -AT+TTRALARM=60
897 -)))|(% style="width:279px" %)(((
898 -The alarm interval is 60 minutes (unit: minutes)
899 -)))|(% style="width:84px" %)(((
900 -OK
901 -)))
902 -
903 -(% style="color:blue" %)**Downlink Command:**
904 -
905 -Example:  0C aa  => AT+TTRALARM= aa
906 -
907 -
908 908  === 3.3.5  Count Mod ===
909 909  
910 910  
911 -Feature: Manually set the count mode.
912 -
913 913  (% style="color:blue" %)**AT Command:**
914 914  
915 915  (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:520px" %)
... ... @@ -934,26 +934,24 @@
934 934  Example:  0B aa  => AT+COUNTMOD = second byte
935 935  
936 936  
937 -=== 3.3.6  Number of channel of door sensors ===
726 +=== 3.3.6  Interrupt Pin Channel Mod ===
938 938  
939 939  
940 -Feature: Set the number of door sensor channels.
941 -
942 942  (% style="color:blue" %)**AT Command:**
943 943  
944 944  (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:500px" %)
945 -|=(% 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**
732 +|=(% 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**
946 946  |(% style="width:155px" %)(((
947 947  AT+TTRCHANNEL=1
948 -)))|(% style="width:259px" %)(((
949 -Set as single channel, only use PA8 pin as interrupt pin.
735 +)))|(% style="width:288px" %)(((
736 +set as single channel, only use PA8 pin as interrupt pin.
950 950  )))|(% style="width:44px" %)(((
951 951  OK
952 952  )))
953 953  |(% style="width:155px" %)(((
954 954  AT+TTRCHANNEL=2
955 -)))|(% style="width:259px" %)(((
956 -Set as dual channel, use PA8 pin and PA4 pin as interrupt pin.
742 +)))|(% style="width:288px" %)(((
743 +is set as dual channel, use PA8 pin and PA4 pin as interrupt pin.
957 957  )))|(% style="width:44px" %)(((
958 958  OK
959 959  )))
... ... @@ -963,92 +963,52 @@
963 963  Example:  0D aa => AT+TTRCHANNEL = second byte
964 964  
965 965  
966 -=== 3.3.7  Set Time Sync Mode ===
753 +=== 3.3.7  Change the name of AT+TTRIG to AT+TTRIG1 ===
967 967  
968 968  
969 -Feature: Enable/Disable Sync system time via LoRaWAN MAC Command (DeviceTimeReq), LoRaWAN server must support v1.0.3 protocol to reply to this command.
970 -
971 -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.
972 -
973 -(% style="color:blue" %)**AT Command:**
974 -
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**
977 -|(% style="width:155px" %)(((
978 -AT+SYNCMOD=1
979 -)))|(% style="width:259px" %)(((
980 -Enable Sync system time via LoRaWAN MAC Command (DeviceTimeReq) The default is zero time zone.
981 -)))|(% style="width:44px" %)(((
982 -OK
983 -)))
984 -|(% style="width:155px" %)(((
985 -AT+SYNCMOD=1,8
986 -)))|(% style="width:259px" %)(((
987 -Enable Sync system time via LoRaWAN MAC Command (DeviceTimeReq) Set to East eight time zone.
988 -)))|(% style="width:44px" %)(((
989 -OK
990 -)))
991 -|(% 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
992 -
993 993  (% style="color:blue" %)**Downlink Command:**
994 994  
995 -0x28 01  ~/~/ Same As AT+SYNCMOD=1
758 +Example:  A9 01 aa bb cc  => AT+TTRIG1= third byte, 4th byte and 5th byte
996 996  
997 -0x28 01 08  ~/~/ Same As AT+SYNCMOD=1,8
998 998  
999 -0x28 01 F4  ~/~/ Same As AT+SYNCMOD=1,-12
761 +=== 3.3.8  Added AT+TTRIG2 for PB15 pin ===
1000 1000  
1001 -0x28 00  ~/~/ Same As AT+SYNCMOD=0
1002 1002  
764 +(% style="color:blue" %)**Downlink Command:**
1003 1003  
1004 -=== 3.3.8  Clear the open door times and the duration of the last open door ===
766 +Example: A9 02 aa bb cc  => AT+TTRIG2= third byte, 4th byte and 5th byte
1005 1005  
1006 1006  
1007 -(% style="color:blue" %)**AT Command:**
769 +=== 3.3.9  TTRIG1/2 timeout status alarm ===
1008 1008  
1009 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:500px" %)
1010 -|=(% 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**
1011 -|(% style="width:155px" %)AT+CLRC|(% style="width:259px" %)clear the open door times and the duration of the last open door.|(% style="width:44px" %)(((
1012 -OK
1013 -)))
1014 1014  
1015 -(% style="color:blue" %)**Downlink Command:**(%%)0xA6 01
772 +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.
1016 1016  
1017 -The sensor will clear the open door times and the duration of the last open door.
1018 -
1019 -
1020 -=== 3.3.9  Set the count value of the number of open door ===
1021 -
1022 -
1023 1023  (% style="color:blue" %)**AT Command:**
1024 1024  
1025 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:500px" %)
1026 -|=(% 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**
776 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
777 +|=(% 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**
1027 1027  |(% style="width:155px" %)(((
1028 -AT+SETCNT=1,100
1029 -)))|(% style="width:259px" %)(((
1030 -Set the open door times of PA8 pin to 100 times.
1031 -)))|(% style="width:44px" %)(((
779 +AT+TTRALARM=0
780 +)))|(% style="width:279px" %)(((
781 +disable continuous alarm
782 +)))|(% style="width:84px" %)(((
1032 1032  OK
1033 1033  )))
1034 -|(% style="width:155px" %)AT+SETCNT=1,0|(% style="width:259px" %)Clear the open door times of PA8 pin.|(% style="width:44px" %)OK
1035 1035  |(% style="width:155px" %)(((
1036 -AT+SETCNT=2,50
1037 -)))|(% style="width:259px" %)(((
1038 -Set the open door times of PA4 pin to 100 times.
1039 -)))|(% style="width:44px" %)(((
786 +AT+TTRALARM=60
787 +)))|(% style="width:279px" %)(((
788 +The alarm interval is 60 minutes (unit: minutes)
789 +)))|(% style="width:84px" %)(((
1040 1040  OK
1041 1041  )))
1042 1042  
1043 1043  (% style="color:blue" %)**Downlink Command:**
1044 1044  
1045 -0xA6 01 00 00 64  ==>  AT+SETCNT=1,100
795 +Example:  0C aa  => AT+TTRALARM= aa
1046 1046  
1047 -0xA6 01 00 00 00  ==>  AT+SETCNT=1,0
1048 1048  
1049 -0xA6 02 00 00 32  ==>  AT+SETCNT=2,50
1050 1050  
1051 -
1052 1052  = 4. Battery & Power Consumption =
1053 1053  
1054 1054  
... ... @@ -1071,8 +1071,8 @@
1071 1071  
1072 1072  **Methods to Update Firmware:**
1073 1073  
1074 -* (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/]]**
1075 -* 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]]**.
821 +* (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/]]
822 +* 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]]**.
1076 1076  
1077 1077  = 6. FAQ =
1078 1078  
image-20230630155406-1.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Saxer
Size
... ... @@ -1,1 +1,0 @@
1 -41.8 KB
Content
image-20230630155451-2.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Saxer
Size
... ... @@ -1,1 +1,0 @@
1 -77.2 KB
Content
image-20230630155527-3.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Saxer
Size
... ... @@ -1,1 +1,0 @@
1 -39.2 KB
Content
image-20230630155556-4.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Saxer
Size
... ... @@ -1,1 +1,0 @@
1 -38.4 KB
Content
image-20230630155751-5.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Saxer
Size
... ... @@ -1,1 +1,0 @@
1 -37.1 KB
Content
image-20230630155908-6.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Saxer
Size
... ... @@ -1,1 +1,0 @@
1 -90.8 KB
Content
image-20230630160843-7.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Saxer
Size
... ... @@ -1,1 +1,0 @@
1 -511.7 KB
Content
image-20230630172740-1.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Saxer
Size
... ... @@ -1,1 +1,0 @@
1 -37.1 KB
Content
image-20230701094042-1.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Saxer
Size
... ... @@ -1,1 +1,0 @@
1 -34.5 KB
Content
Copyright ©2010-2024 Dragino Technology Co., LTD. All rights reserved
Dragino Wiki v2.0