<
From version < 34.18 >
edited by Xiaoling
on 2023/07/01 14:38
To version < 18.1 >
edited by Saxer Lin
on 2023/06/30 15:59
>
Change comment: Uploaded new attachment "image-20230630155908-6.png", version {1}

Summary

Details

Page properties
Author
... ... @@ -1,1 +1,1 @@
1 -XWiki.Xiaoling
1 +XWiki.Saxer
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,6 +137,8 @@
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  
... ... @@ -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) ==
... ... @@ -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,322 +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:515px" %)
313 -|(% colspan="8" style="background-color:#d9e2f3; color:#0070c0; width:515px" %)**Sensor Configuration FPORT=4**
314 -|**Size(bytes)**|(% style="width:75px" %)**3**|(% style="width:50px" %)**1**|(% style="width:100px" %)**1**|(% style="width:90px" %)**2**|(% style="width:100px" %)**1**|(% style="width:100px" %)**2**|(% style="width:98px" %)**1**
315 -|**Value**|(% style="width:75px" %)TDC (unit:sec)|(% style="width:77px" %)Disalarm|(% style="width:96px" %)(((
316 -Keep status1)))|(% style="width:99px" %)(((
317 -Keep time1(unit: sec)
318 -)))|(% style="width:87px" %)Keep status2|(% style="width:97px" %)(((
319 -Keep time2(unit: sec)
320 -)))|(% style="width:98px" %)(((
321 -Alarm interval(unit: min)
322 -)))
323 -
324 -* (((
325 -(% style="color:blue" %)**TDC: (default: 0x001C20)**
326 -)))
327 -
328 -Uplink interval for the Open/Close Event, default value is 0x001C20 which is 7200 seconds = 2 hours.
329 -
330 -
331 -* (((
332 -(% style="color:blue" %)**Disalarm: (default: 0)**
333 -)))
334 -
335 - **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.
336 -
337 - **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.
338 -
339 -
340 -(% style="color:red" %)** Note: When Disalarm=0, a high frequently open/close event will cause lots of uplink and drain battery very fast. **
341 -
342 -
343 -* (((
344 -(% style="color:blue" %)**Keep Status1 & Keep Time1 & Keep Status2 & Keep Time2**
345 -)))
346 -
347 -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]]
348 -
349 -[[image:image-20230630155527-3.png||height="146" width="902"]]
350 -
351 -
352 -* (((
353 -(% style="color:blue" %)**Alarm interval(default: 0)**
354 -)))
355 -
356 -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.
357 -
358 -
359 -=== 2.3.3  Real-Time Open/Close Status, Uplink FPORT~=2 ===
360 -
361 -
362 362  DS03A-LB will send this uplink **after** Device Status once join the LoRaWAN network successfully. And DS03A-LB will send uplinks when:
363 363  
364 364  * Every 2 hours, this interval [[can be changed>>||anchor="H3.3.1SetTransmitIntervalTime"]].
365 365  * There is an Open/Close event.  (This info can be disabled by AT+DISALARM=1)
366 366  
367 -1) When **AT+TTRCHANNEL=1**, Uplink Payload totals **11 bytes**. (**Default mode**)
317 +Uplink Payload totals 11 bytes.
368 368  
369 369  (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:515px" %)
370 370  |=(% colspan="5" style="background-color:#D9E2F3;color:#0070C0;width:515px" %)**Real-Time Open/Close Status, FPORT=2**
371 -|(% style="width:94px" %)**Size(bytes)**|(% style="width:97px" %)**1**|(% style="width:95px" %)**3**|(% style="width:119px" %)**3**|(% style="width:107px" %)**4**
372 -|(% style="width:95px" %)**Value**|(% style="width:97px" %)(((
373 -Status & [[Alarm>>||anchor="H3.3.4A0AlarmBaseonTimeout"]]
374 -)))|(% style="width:95px" %)Total open door events|(% style="width:119px" %)(((
375 -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)
376 376  )))|(% style="width:108px" %)[[Unix TimeStamp>>||anchor="H2.5.2UnixTimeStamp"]]
377 377  
378 378  **Status & Alarm:**
379 379  
380 380  (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:515px" %)
381 -|(% style="background-color:#d9e2f3; color:#0070c0; width:50px" %)**Size(bit)**|(% style="background-color:#d9e2f3; color:#0070c0; width:60px" %)**[bit7:bit4]**|(% style="background-color:#d9e2f3; color:#0070c0; width:80px" %)**bit3**|(% style="background-color:#d9e2f3; color:#0070c0; width:105px" %)**bit2**|(% style="background-color:#d9e2f3; color:#0070c0; width:100px" %)**bit1**|(% style="background-color:#d9e2f3; color:#0070c0; width:100px" %)**bit0**
382 -|(% style="width:76px" %)**Value**|(% style="width:96px" %)Reserve|(% style="width:110px" %)(((
383 -Count mod
384 -)))|(% style="width:106px" %)TDC flag 0:No;1:Yes|(% style="width:148px" %)(((
385 -Alarm 0: No Alarm; 1: Alarm
386 -)))|(% style="width:131px" %)(((
387 -Status 0: Close; 1: Open
388 -)))
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
389 389  
390 -[[image:image-20230630155451-2.png||height="246" width="928"]]
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"]]
391 391  
392 392  
393 -* (((
394 -(% style="color:blue" %)**Count mod:Default=0**
395 -)))
340 +=== 2.3.3  Historical Door Open/Close Event, FPORT~=3 ===
396 396  
397 -MOD=0 ~-~-> Uplink total open door times since factory
398 398  
399 -MOD=1 ~-~-> Uplink total open door times since last FPORT=2 uplink.
343 +DS03A-LB stores sensor values and users can retrieve these history values via the [[downlink command>>||anchor="H2.5DatalogFeature"]].
400 400  
345 +The historical payload includes one or multiplies entries and every entry has the same payload as Real-Time open/close status.
401 401  
402 -* (% style="color:blue" %)**TDC flag**
403 -
404 -When the flag is 1, it means sending packets at normal time intervals.
405 -
406 -Otherwise, it is a packet sent at non-TDC time.
407 -
408 -
409 409  * (((
410 -(% 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.
411 411  )))
412 412  
413 -See [[Alarm Base on Timeout>>http://8.211.40.43/xwiki/bin/view/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/DS03A-LB/#H3.3.3A0AlarmBaseonTimeout]]
351 +For example, in the US915 band, the max payload for different DR is:
414 414  
353 +(((
354 +**~1. DR0**: max is 11 bytes so one entry of data
355 +)))
415 415  
416 -* (((
417 -(% style="color:blue" %)**Status**
357 +(((
358 +**2. DR1**: max is 53 bytes so devices will upload 4 entries of data (total 44 bytes)
418 418  )))
419 419  
420 -This bit is 1 when the door sensor is open and 0 when it is close.
421 -
422 -
423 -* (((
424 -(% style="color:blue" %)**Total open door events**
361 +(((
362 +**3. DR2**: total payload includes 11 entries of data
425 425  )))
426 426  
427 -Total pulse/counting base on open door.
428 -
429 -Range (3 Bytes) : 0x000000 ~~ 0xFFFFFF . Max: 16777215
430 -
431 -
432 -* (((
433 -(% style="color:blue" %)**The last door open duration**
365 +(((
366 +**4. DR3**: total payload includes 22 entries of data.
434 434  )))
435 435  
436 -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
437 437  
438 -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"]]
439 439  
440 -[[image:image-20230701094042-1.png||height="154" width="763"]]
373 +**Downlink:**
441 441  
375 +0x31 61 8E 57 40 61 8E 81 70 05
442 442  
443 -2) When **AT+TTRCHANNEL=2**, Uplink Payload totals **18 bytes**.
444 444  
445 -(When the maximum DR of some frequencies is 11 bytes, it will cause the server to receive empty packets)
378 +**Uplink:**
446 446  
447 -(% style="color:red" %)**Note:When using the AT+TTRCHANNEL=2 command, the Datalog function cannot be used.**
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
448 448  
449 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:515px" %)
450 -|=(% colspan="8" style="background-color:#D9E2F3;color:#0070C0; width: 515px;" %)**Real-Time Open/Close Status, FPORT=2**
451 -|(% style="width:50px" %)**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**
452 -|(% style="width:95px" %)**Value**|(% style="width:97px" %)(((
453 -Status1 & [[Alarm>>||anchor="H3.3.4A0AlarmBaseonTimeout"]]1
454 -)))|(% style="width:95px" %)Total open door events1|(% style="width:125px" %)(((
455 -The last door open duration1 (unit: sec)
456 -)))|(% style="width:100px" %)[[Unix TimeStamp>>||anchor="H2.5.2UnixTimeStamp"]]|(% style="width:86px" %)(((
457 -Status2 & [[Alarm>>||anchor="H3.3.4A0AlarmBaseonTimeout"]]2
458 -)))|(% style="width:96px" %)Total open door events2|(% style="width:126px" %)The last door open duration2 (unit: sec)
459 459  
460 -**Status1 & Alarm1:**
383 +**Parsed Value:**
461 461  
462 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:515px" %)
463 -|(% style="background-color:#d9e2f3; color:#0070c0; width:50px" %)**Size(bit)**|(% style="background-color:#d9e2f3; color:#0070c0; width:79px" %)**[bit7:bit4]**|(% style="background-color:#d9e2f3; color:#0070c0; width:99px" %)**bit3**|(% style="background-color:#d9e2f3; color:#0070c0; width:103px" %)**bit2**|(% style="background-color:#d9e2f3; color:#0070c0; width:216px" %)**bit1**|(% style="background-color:#d9e2f3; color:#0070c0; width:181px" %)**bit0**
464 -|(% style="width:76px" %)**Value**|(% style="width:96px" %)Reserve|(% style="width:99px" %)(((
465 -Count mod
466 -)))|(% style="width:103px" %)TDC flag 0:No;1:Yes|(% style="width:216px" %)(((
467 -Alarm1 0: No Alarm; 1: Alarm (PA8 of pin)
468 -)))|(% style="width:181px" %)(((
469 -Status1 0: Close; 1: Open (PA8 of pin)
470 -)))
385 +[ALARM, DOOR_OPEN_STATUS, DOOR_OPEN_TIMES,LAST_DOOR_OPEN_DURATION, TIME]
471 471  
472 -**Status2 & Alarm2:**
473 473  
474 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:515px" %)
475 -|(% style="background-color:#d9e2f3; color:#0070c0; width:50px" %)**Size(bit)**|(% style="background-color:#d9e2f3; color:#0070c0; width:113px" %)**[bit7:bit2]**|(% style="background-color:#d9e2f3; color:#0070c0; width:219px" %)**bit1**|(% style="background-color:#d9e2f3; color:#0070c0; width:181px" %)**bit0**
476 -|(% style="width:76px" %)**Value**|(% style="width:113px" %)Reserve|(% style="width:219px" %)(((
477 -Alarm2 0: No Alarm; 1: Alarm (PA4 of pin)
478 -)))|(% style="width:181px" %)(((
479 -Status2 0: Close; 1: Open (PA4 of pin)
480 -)))
388 +[FALSE, CLOSE, 0, 0, 2021-11-12 12:35:27],
481 481  
482 -[[image:image-20230630155908-6.png||height="295" width="927"]]
390 +[FALSE, OPEN,  1, 0, 2021-11-12 12:36:34],
483 483  
392 +[FALSE, CLOSE, 1, 2, 2021-11-12 12:39:00],
484 484  
485 -* (((
486 -(% id="cke_bm_695345S" style="color:blue; display:none" %)** **(% style="color:blue" %)**Count mod:Default=0**
487 -)))
394 +[FALSE, OPEN,  2, 2, 2021-11-12 12:39:17],
488 488  
489 -MOD=0 ~-~-> Uplink total open door times since factory
396 +[FALSE, CLOSE, 2, 1, 2021-11-12 12:40:38],
490 490  
491 -MOD=1 ~-~-> Uplink total open door times since last FPORT=2 uplink.
398 +[FALSE, CLOSE, 2, 1, 2021-11-12 14:35:19],
492 492  
400 +[FALSE, OPEN,  3, 1, 2021-11-12 14:50:32],
493 493  
494 -* (% style="color:blue" %)**TDC flag**
402 +[FALSE, CLOSE, 3, 2, 2021-11-12 14:53:02],
495 495  
496 -When the flag is 1, it means sending packets at normal time intervals.
404 +[FALSE, OPEN,  4, 2, 2021-11-12 14:58:35],
497 497  
498 -Otherwise, it is a packet sent at non-TDC time.
406 +[FALSE, CLOSE, 4, 0, 2021-11-12 14:59:28],
499 499  
500 500  
501 -* (((
502 -(% style="color:#0000ff" %)**Alarm1 or Alarm2**
503 -)))
409 +=== 2.3.4  Sensor Configuration, FPORT~=4 ===
504 504  
505 -See [[Alarm Base on Timeout>>http://8.211.40.43/xwiki/bin/view/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/DS03A-LB/#H3.3.3A0AlarmBaseonTimeout]]
506 506  
412 +DS03A-LB will only send this command after getting the downlink command (0x26 02) from the server.
507 507  
508 -* (((
509 -(% style="color:blue" %)**Status1 **(% style="color:#0000ff" %)**or **(% style="color:blue" %)**Status2**
510 -)))
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)
511 511  
512 -This bit is 1 when the door sensor is open and 0 when it is close.
513 -
514 -
515 515  * (((
516 -(% style="color:blue" %)**Total open door events1 **(% style="color:#0000ff" %)**or**(% style="color:blue" %)** Total open door events2**
420 +(% style="color:blue" %)**TDC: (default: 0x001C20)**
517 517  )))
518 518  
519 -Total pulse/counting base on open door.
423 +Uplink interval for the Open/Close Event, default value is 0x001C20 which is 7200 seconds = 2 hours.
520 520  
521 -Range (3 Bytes) : 0x000000 ~~ 0xFFFFFF . Max: 16777215
522 522  
523 -
524 524  * (((
525 -(% style="color:blue" %)**The last door open duration1 **(% style="color:#0000ff" %)**or**(% style="color:blue" %)** The last door open duration2**
427 +(% style="color:blue" %)**Disalarm: (default: 0)**
526 526  )))
527 527  
528 -Door sensor last open duration.
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.
529 529  
530 -Unit: sec.
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.
531 531  
532 -[[image:image-20230701094042-1.png||height="154" width="763"]]
533 533  
435 +(% style="color:red" %)** Note: When Disalarm=0, a high frequently open/close event will cause lots of uplink and drain battery very fast. **
534 534  
535 -=== 2.3.4  Historical Door Open/Close Event, FPORT~=3 ===
536 536  
537 -
538 -DS03A-LB stores sensor values and users can retrieve these history values via the [[downlink command>>||anchor="H2.5DatalogFeature"]].
539 -
540 -The historical payload includes one or multiplies entries and every entry has the same payload as Real-Time open/close status.
541 -
542 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:515px" %)
543 -|=(% colspan="5" style="background-color:#D9E2F3;color:#0070C0;width:515px" %)**Real-Time Open/Close Status, FPORT=3**
544 -|(% style="width:94px" %)**Size(bytes)**|(% style="width:97px" %)**1**|(% style="width:95px" %)**3**|(% style="width:119px" %)**3**|(% style="width:107px" %)**4**
545 -|(% style="width:95px" %)**Value**|(% style="width:97px" %)(((
546 -Status & [[Alarm>>||anchor="H3.3.4A0AlarmBaseonTimeout"]]
547 -)))|(% style="width:95px" %)Total open door events|(% style="width:119px" %)(((
548 -The last door open duration (unit: sec)
549 -)))|(% style="width:108px" %)[[Unix TimeStamp>>||anchor="H2.5.2UnixTimeStamp"]]
550 -
551 -**Status & Alarm:**
552 -
553 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:515px" %)
554 -|(% style="background-color:#d9e2f3; color:#0070c0; width:50px" %)**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**
555 -|(% style="width:76px" %)**Value**|(% style="width:88px" %)No ACK message|(% style="width:92px" %)Poll Message Flag|(% style="width:89px" %)Reserve|(% style="width:90px" %)(((
556 -Count mod
557 -)))|(% style="width:95px" %)(((
558 -TDC flag 0:No; 1:Yes
559 -)))|(% style="width:116px" %)(((
560 -Alarm 0: No Alarm; 1: Alarm
561 -)))|(% style="width:112px" %)(((
562 -Status 0:Close; 1: Open
563 -)))
564 -
565 565  * (((
566 -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.
439 +(% style="color:blue" %)**Keep Status & Keep Time**
567 567  )))
568 568  
569 -For example, in the US915 band, the max payload for different DR is:
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]]
570 570  
571 -(((
572 -**~1. DR0**: max is 11 bytes so one entry of data
573 -)))
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 -(((
576 -**2. DR1**: max is 53 bytes so devices will upload 4 entries of data (total 44 bytes)
577 -)))
578 578  
579 -(((
580 -**3. DR2**: total payload includes 11 entries of data
581 -)))
582 -
583 -(((
584 -**4. DR3**: total payload includes 22 entries of data.
585 -)))
586 -
587 -If DS03A-LB doesn't have any data in the polling time. It will uplink 11 bytes of 0
588 -
589 -[[image:image-20230630155556-4.png||height="146" width="938"]]
590 -
591 -**Downlink:**
592 -
593 -0x31 64 9E 7D 34 64 9E 7E 9C 05
594 -
595 -
596 -**Uplink:**
597 -
598 -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
599 -
600 -
601 -**Parsed Value:**
602 -
603 -[COUNTMOD, TDC_FLAG, ALARM,  DOOR_STATUS, OPEN_DOOR_TIMES, LAST_DOOR_OPEN_DURATION, TIME]
604 -
605 -
606 -[SUM,YES,FALSE,OPEN,0,0,2023-06-30 06:59:20],
607 -
608 -[SUM,NO,FALSE,CLOSE,0,99,2023-06-30 07:00:44],
609 -
610 -[SUM,NO,FALSE,OPEN, 1,99,2023-06-30 07:00:52],
611 -
612 -[SUM,NO,FALSE,CLOSE,1,141,2023-06-30 07:03:13],
613 -
614 -[SUM,NO,TRUE,OPEN, 2,141,2023-06-30 07:03:32],
615 -
616 -[PART,NO,FALSE,CLOSE,2,31,2023-06-30 07:03:53],
617 -
618 -[PART,NO,TRUE,OPEN, 3,31,2023-06-30 07:04:11],
619 -
620 -[[image:image-20230630172740-1.png||height="199" width="868"]]
621 -
622 -
623 623  == 2.4 Payload Decoder file ==
624 624  
625 625  
... ... @@ -637,9 +637,7 @@
637 637  
638 638  (% 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.
639 639  
640 -(% 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.**
641 641  
642 -
643 643  === 2.5.1 Ways to get datalog via LoRaWAN ===
644 644  
645 645  
... ... @@ -744,6 +744,8 @@
744 744  * 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]].
745 745  * LoRaWAN Downlink.  Instruction for different platforms: See [[IoT LoRaWAN Server>>http://wiki.dragino.com/xwiki/bin/view/Main/]] section.
746 746  
569 +
570 +
747 747  == 3.2 General Commands ==
748 748  
749 749  
... ... @@ -763,7 +763,7 @@
763 763  These commands only valid for DS03A-LB, as below:
764 764  
765 765  
766 -=== 3.3.1  Set Transmit Interval Time ===
590 +=== 3.3.1 Set Transmit Interval Time ===
767 767  
768 768  
769 769  Feature: Change LoRaWAN End Node Transmit Interval.
... ... @@ -791,9 +791,21 @@
791 791  * Example 1: Downlink Payload: 0100001E  ~/~/  Set Transmit Interval (TDC) = 30 seconds
792 792  * Example 2: Downlink Payload: 0100003C  ~/~/  Set Transmit Interval (TDC) = 60 seconds
793 793  
794 -=== 3.3.2  Enable / Disable Alarm ===
795 795  
796 796  
620 +=== 3.3.2 Get Device Status ===
621 +
622 +
623 +Send a LoRaWAN downlink to ask device send Alarm settings.
624 +
625 +* (% style="color:blue" %)**Downlink Payload:  **(%%)0x26 01
626 +
627 +Sensor will upload Device Status via FPORT=5. See payload section for detail.
628 +
629 +
630 +=== 3.3.3  Enable / Disable Alarm ===
631 +
632 +
797 797  Feature: Enable/Disable Alarm for open/close event. Default value 0.
798 798  
799 799  (% style="color:blue" %)**AT Command: **
... ... @@ -810,7 +810,7 @@
810 810  0xA7 00  ~/~/ Same As AT+DISALARM=0
811 811  
812 812  
813 -=== 3.3.3  Alarm Base on Timeout ===
649 +=== 3.3.4  Alarm Base on Timeout ===
814 814  
815 815  
816 816  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:
... ... @@ -836,103 +836,37 @@
836 836  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.
837 837  
838 838  
839 -* (((
840 -(% style="color:blue" %)**Downlink Command**
841 -)))
842 -
843 -(% style="color:#037691" %)**Command: 0xA9 aa bb cc dd**
844 -
845 -**A9:** Command Type Code
846 -
847 -**aa: **01:TTRIG1; 02:TTRIG2
848 -
849 -**bb:** status to be monitored
850 -
851 -**cc dd:** timeout.
852 -
853 -
854 -1)**AT+TTRIG1**:(PA8 of pin)
855 -
856 856  (% style="color:blue" %)**AT Command to configure:**
857 857  
858 858  * (((
859 -(% 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.
860 -
861 -(% 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.
678 +(% 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.
862 862  )))
863 863  
864 864  * (((
865 -(% style="color:#037691" %)**AT+TTRIG1=0,0**  (%%) **~-~-> ** Default Value, disable timeout Alarm.
866 -
867 -
868 -
682 +(% style="color:#037691" %)**AT+TTRIG=0,0**  (%%) **~-~-> ** Default Value, disable timeout Alarm.
869 869  )))
870 870  
871 871  (% style="color:blue" %)**Downlink Command to configure:**
872 872  
873 -If user send 0xA9 01 01 00 1E: equal to AT+TTRIG1=1,30 or
687 +(% style="color:#037691" %)**Command: 0xA9 aa bb cc**
874 874  
875 - 0xA9 01 00 00 00: Equal to AT+TTRIG1=0,0.
689 +**A9:** Command Type Code
876 876  
691 +**aa:** status to be monitored
877 877  
878 -2)**AT+TTRIG2**:(PA4 of pin,need to use AT+TTRCHANNEL=2)
693 +**bb cc:** timeout.
879 879  
880 -(% style="color:blue" %)**AT Command to configure:**
881 881  
882 -* (((
883 -(% 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.
696 +If user send 0xA9 01 00 1E: equal to AT+TTRIG=1,30
884 884  
885 -(% 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.
886 -)))
698 +Or
887 887  
888 -* (((
889 -(% style="color:#037691" %)**AT+TTRIG2=0,0**  (%%) **~-~-> ** Default Value, disable timeout Alarm.
700 +0xA9 00 00 00: Equal to AT+TTRIG=0,0. Disable timeout Alarm.
890 890  
891 891  
892 -
893 -)))
894 -
895 -(% style="color:blue" %)**Downlink Command to configure:**
896 -
897 -If user send 0xA9 02 00 00 1E: equal to AT+TTRIG2=0,30 or
898 -
899 - 0xA9 02 00 00 00: Equal to AT+TTRIG2=0,0.
900 -
901 -
902 -=== 3.3.4  TTRIG1 & TTRIG2 timeout status alarm ===
903 -
904 -
905 -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.
906 -
907 -(% style="color:blue" %)**AT Command:**
908 -
909 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
910 -|=(% 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**
911 -|(% style="width:155px" %)(((
912 -AT+TTRALARM=0
913 -)))|(% style="width:279px" %)(((
914 -disable continuous alarm
915 -)))|(% style="width:84px" %)(((
916 -OK
917 -)))
918 -|(% style="width:155px" %)(((
919 -AT+TTRALARM=60
920 -)))|(% style="width:279px" %)(((
921 -The alarm interval is 60 minutes (unit: minutes)
922 -)))|(% style="width:84px" %)(((
923 -OK
924 -)))
925 -
926 -(% style="color:blue" %)**Downlink Command:**
927 -
928 -Example:  0C aa  => AT+TTRALARM= aa
929 -
930 -
931 931  === 3.3.5  Count Mod ===
932 932  
933 933  
934 -Feature: Manually set the count mode.
935 -
936 936  (% style="color:blue" %)**AT Command:**
937 937  
938 938  (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:520px" %)
... ... @@ -957,26 +957,24 @@
957 957  Example:  0B aa  => AT+COUNTMOD = second byte
958 958  
959 959  
960 -=== 3.3.6  Number of channel of door sensors ===
730 +=== 3.3.6  Interrupt Pin Channel Mod ===
961 961  
962 962  
963 -Feature: Set the number of door sensor channels.
964 -
965 965  (% style="color:blue" %)**AT Command:**
966 966  
967 967  (% border="1" cellspacing="4" style="background-color:#f2f2f2; width:500px" %)
968 -|=(% 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**
736 +|=(% 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**
969 969  |(% style="width:155px" %)(((
970 970  AT+TTRCHANNEL=1
971 -)))|(% style="width:259px" %)(((
972 -Set as single channel, only use PA8 pin as interrupt pin.
739 +)))|(% style="width:288px" %)(((
740 +set as single channel, only use PA8 pin as interrupt pin.
973 973  )))|(% style="width:44px" %)(((
974 974  OK
975 975  )))
976 976  |(% style="width:155px" %)(((
977 977  AT+TTRCHANNEL=2
978 -)))|(% style="width:259px" %)(((
979 -Set as dual channel, use PA8 pin and PA4 pin as interrupt pin.
746 +)))|(% style="width:288px" %)(((
747 +is set as dual channel, use PA8 pin and PA4 pin as interrupt pin.
980 980  )))|(% style="width:44px" %)(((
981 981  OK
982 982  )))
... ... @@ -986,92 +986,51 @@
986 986  Example:  0D aa => AT+TTRCHANNEL = second byte
987 987  
988 988  
989 -=== 3.3.7  Set Time Sync Mode ===
757 +=== 3.3.7  Change the name of AT+TTRIG to AT+TTRIG1 ===
990 990  
991 991  
992 -Feature: Enable/Disable Sync system time via LoRaWAN MAC Command (DeviceTimeReq), LoRaWAN server must support v1.0.3 protocol to reply to this command.
993 -
994 -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.
995 -
996 -(% style="color:blue" %)**AT Command:**
997 -
998 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:500px" %)
999 -|=(% 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**
1000 -|(% style="width:155px" %)(((
1001 -AT+SYNCMOD=1
1002 -)))|(% style="width:259px" %)(((
1003 -Enable Sync system time via LoRaWAN MAC Command (DeviceTimeReq) The default is zero time zone.
1004 -)))|(% style="width:44px" %)(((
1005 -OK
1006 -)))
1007 -|(% style="width:155px" %)(((
1008 -AT+SYNCMOD=1,8
1009 -)))|(% style="width:259px" %)(((
1010 -Enable Sync system time via LoRaWAN MAC Command (DeviceTimeReq) Set to East eight time zone.
1011 -)))|(% style="width:44px" %)(((
1012 -OK
1013 -)))
1014 -|(% 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
1015 -
1016 1016  (% style="color:blue" %)**Downlink Command:**
1017 1017  
1018 -0x28 01  ~/~/ Same As AT+SYNCMOD=1
762 +Example:  A9 01 aa bb cc  => AT+TTRIG1= third byte, 4th byte and 5th byte
1019 1019  
1020 -0x28 01 08  ~/~/ Same As AT+SYNCMOD=1,8
1021 1021  
1022 -0x28 01 F4  ~/~/ Same As AT+SYNCMOD=1,-12
765 +=== 3.3.8  Added AT+TTRIG2 for PB15 pin ===
1023 1023  
1024 -0x28 00  ~/~/ Same As AT+SYNCMOD=0
1025 1025  
768 +(% style="color:blue" %)**Downlink Command:**
1026 1026  
1027 -=== 3.3.8  Clear the open door times and the duration of the last open door ===
770 +Example: A9 02 aa bb cc  => AT+TTRIG2= third byte, 4th byte and 5th byte
1028 1028  
1029 1029  
1030 -(% style="color:blue" %)**AT Command:**
773 +=== 3.3.9  TTRIG1/2 timeout status alarm ===
1031 1031  
1032 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:500px" %)
1033 -|=(% 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**
1034 -|(% style="width:155px" %)AT+CLRC|(% style="width:259px" %)clear the open door times and the duration of the last open door.|(% style="width:44px" %)(((
1035 -OK
1036 -)))
1037 1037  
1038 -(% style="color:blue" %)**Downlink Command:**(%%)0xA6 01
776 +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.
1039 1039  
1040 -The sensor will clear the open door times and the duration of the last open door.
1041 -
1042 -
1043 -=== 3.3.9  Set the count value of the number of open door ===
1044 -
1045 -
1046 1046  (% style="color:blue" %)**AT Command:**
1047 1047  
1048 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:500px" %)
1049 -|=(% 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**
780 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:510px" %)
781 +|=(% 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**
1050 1050  |(% style="width:155px" %)(((
1051 -AT+SETCNT=1,100
1052 -)))|(% style="width:259px" %)(((
1053 -Set the open door times of PA8 pin to 100 times.
1054 -)))|(% style="width:44px" %)(((
783 +AT+TTRALARM=0
784 +)))|(% style="width:279px" %)(((
785 +disable continuous alarm
786 +)))|(% style="width:84px" %)(((
1055 1055  OK
1056 1056  )))
1057 -|(% style="width:155px" %)AT+SETCNT=1,0|(% style="width:259px" %)Clear the open door times of PA8 pin.|(% style="width:44px" %)OK
1058 1058  |(% style="width:155px" %)(((
1059 -AT+SETCNT=2,50
1060 -)))|(% style="width:259px" %)(((
1061 -Set the open door times of PA4 pin to 100 times.
1062 -)))|(% style="width:44px" %)(((
790 +AT+TTRALARM=60
791 +)))|(% style="width:279px" %)(((
792 +The alarm interval is 60 minutes (unit: minutes)
793 +)))|(% style="width:84px" %)(((
1063 1063  OK
1064 1064  )))
1065 1065  
1066 1066  (% style="color:blue" %)**Downlink Command:**
1067 1067  
1068 -0xA6 01 00 00 64  ==>  AT+SETCNT=1,100
799 +Example:  0C aa  => AT+TTRALARM= aa
1069 1069  
1070 -0xA6 01 00 00 00  ==>  AT+SETCNT=1,0
1071 1071  
1072 -0xA6 02 00 00 32  ==>  AT+SETCNT=2,50
1073 -
1074 -
1075 1075  = 4. Battery & Power Consumption =
1076 1076  
1077 1077  
... ... @@ -1097,6 +1097,8 @@
1097 1097  * (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/]]**
1098 1098  * 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]]**.
1099 1099  
827 +
828 +
1100 1100  = 6. FAQ =
1101 1101  
1102 1102  
... ... @@ -1124,6 +1124,8 @@
1124 1124  
1125 1125  * (% style="color:red" %)**CN470**(%%): LoRaWAN CN470 band
1126 1126  
856 +
857 +
1127 1127  = 8. ​Packing Info =
1128 1128  
1129 1129  
... ... @@ -1141,6 +1141,8 @@
1141 1141  
1142 1142  * Weight / pcs : g
1143 1143  
875 +
876 +
1144 1144  = 9. Support =
1145 1145  
1146 1146  
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