Changes for page End Device AT Commands and Downlink Command
Last modified by kai on 2024/09/06 10:00
Summary
-
Page properties (1 modified, 0 added, 0 removed)
-
Attachments (0 modified, 0 added, 2 removed)
Details
- Page properties
-
- Content
-
... ... @@ -1,9 +1,8 @@ 1 - **Contents:**1 +Contens 2 2 3 3 {{toc/}} 4 4 5 5 6 - 7 7 = 1. Introduction = 8 8 9 9 Dragino LoRaWAN End Node support two types of AT Commands and Downlink Commands: ... ... @@ -11,96 +11,34 @@ 11 11 * **Common Commands:** They should be available for each sensor, such as: change uplink interval, reset device. 12 12 * **Sensor Related Commands:** Only for special sensor, such as control relay, poll RS485 device. 13 13 14 -((( 15 15 **This page shows the common commands since Dragino LoRaWAN stack DR-LWS-005. Make sure the end node support stack higher than DR-LWS-005 before checking this page.** 16 16 17 -))) 18 18 19 19 = 2. How to use AT Commands or Downlink command = 20 20 21 21 * For AT Command , See Devices User Manual for Device. The user manual can be found in each product page of [[Dragino Official Website>>url:http://www.dragino.com/]] 22 22 * For LoRaWAN Downlink: The gateway transfer downlink command in HEX format. This page shows the HEX format downlink code for each command. but some servers use base64 as downlink code. Below are reference for how to use downlink command: 23 -** Use HEX format to send a downlink: [[TTN v3>>Notes 24 -** Use Base64 format to send a downlink: [[Chirpstack>>Notes 25 -** See use note for more serves [[Servers Note>>doc :Main.WebHome]](IoT LoRaWANServer)20 +** Use HEX format to send a downlink: [[TTN v3>>url:https://wiki.dragino.com/index.php/Notes_for_TTN#Send_Downlink_message]] 21 +** Use Base64 format to send a downlink: [[Chirpstack>>url:https://wiki.dragino.com/index.php/Notes_for_ChirpStack#Downlink]]. 22 +** See use note for more serves [[Servers Note>>url:https://wiki.dragino.com/index.php/Main_Page#Use_Note_for_Server]] 26 26 27 - 28 - 29 29 = 3. Support End Node and firmware version = 30 30 31 -(% border="1" style="background-color:#ffffcc; color:green; width:966px" %) 32 -|=(% colspan="3" style="width: 963px;" %)((( 33 -Dragino STM32 base hardware Firmware / LoRaWAN stack list 34 -))) 35 -|(% style="width:187px" %)((( 36 -**Model** 37 -)))|(% style="width:330px" %)((( 38 -**Description** 39 -)))|(% style="width:445px" %)((( 40 -**Firmware Version <~-~-> Stack Version** 41 -))) 42 -|(% style="width:187px" %)((( 43 -[[LSN50-v1>>url:http://www.dragino.com/products/lora-lorawan-end-node/item/128-lsn50.html]], [[LSN50-V2>>url:http://www.dragino.com/products/lora-lorawan-end-node/item/155-lsn50-v2.html]], 44 -)))|(% style="width:330px" %)((( 45 -Open Source Generic LoRaWAN Sensor Node 46 -)))|(% style="width:445px" %)((( 47 -((( 48 -LSN50 v1.6.0 <~-~-> DR-LWS-003; 49 -))) 50 - 51 -((( 52 -((( 26 +(% style="background-color:#ffffcc; color:green; width:995.222px" %) 27 +|=(% colspan="3" style="width: 992px;" %)Dragino STM32 base hardware Firmware / LoRaWAN stack list 28 +|(% style="width:187px" %)**Model**|(% style="width:349px" %)**Description**|(% style="width:453px" %)**Firmware Version <~-~-> Stack Version** 29 +|(% style="width:187px" %)[[LSN50-v1>>url:http://www.dragino.com/products/lora-lorawan-end-node/item/128-lsn50.html]], [[LSN50-V2>>url:http://www.dragino.com/products/lora-lorawan-end-node/item/155-lsn50-v2.html]],|(% style="width:349px" %)Open Source Generic LoRaWAN Sensor Node|(% style="width:453px" %)LSN50 v1.6.0 <~-~-> DR-LWS-003;((( 53 53 LSN50 v1.7.0 <~-~-> DR-LWS-005; ~-~-> Support since this version 54 54 ))) 55 -))) 56 -))) 57 -|(% style="width:187px" %)((( 58 -[[LGT92>>url:http://www.dragino.com/products/lora-lorawan-end-node/item/142-lgt-92.html]], 59 -)))|(% style="width:330px" %)((( 60 -LoRaWAN GPS Tracker 61 -)))|(% style="width:445px" %)((( 62 -((( 63 -LGT92 v1.6.3 <~-~-> DR-LWS-003; 64 -))) 65 - 66 -((( 67 -((( 32 +|(% style="width:187px" %)[[LGT92>>url:http://www.dragino.com/products/lora-lorawan-end-node/item/142-lgt-92.html]],|(% style="width:349px" %)LoRaWAN GPS Tracker|(% style="width:453px" %)LGT92 v1.6.3 <~-~-> DR-LWS-003;((( 68 68 LGT92 v1.6.4 <~-~-> DR-LWS-005;~-~-> Support since this version 69 69 ))) 70 -))) 71 -))) 72 -|(% style="width:187px" %)((( 73 -[[LBT1>>url:http://www.dragino.com/products/lora-lorawan-end-node/item/165-lbt1.html]], 74 -)))|(% style="width:330px" %)((( 75 -LoRaWAN BLE Indoor Tracker 76 -)))|(% style="width:445px" %)((( 77 -LBT1 v1.0 <~-~-> DR-LWS-005; 78 -))) 79 -|(% style="width:187px" %)((( 80 -[[RS485-LN>>url:http://www.dragino.com/products/lora-lorawan-end-node/item/154-rs485-ln.html]], 81 -)))|(% style="width:330px" %)((( 82 -LoRaWAN RS485 Modbus Converter 83 -)))|(% style="width:445px" %)((( 84 -RS485-LN v1.3 <~-~-> DR-LWS-005; 85 -))) 86 -|(% style="width:187px" %)((( 87 -[[LHT65>>url:http://www.dragino.com/products/lora-lorawan-end-node/item/151-lht65.html]], 88 -)))|(% style="width:330px" %)((( 89 -LoRaWAN Temperature & Humidity Sensor 90 -)))|(% style="width:445px" %)((( 91 -((( 92 -LHT65 v1.7 <~-~-> DR-LWS-003; 93 -))) 94 - 95 -((( 96 -((( 35 +|(% style="width:187px" %)[[LBT1>>url:http://www.dragino.com/products/lora-lorawan-end-node/item/165-lbt1.html]],|(% style="width:349px" %)LoRaWAN BLE Indoor Tracker|(% style="width:453px" %)LBT1 v1.0 <~-~-> DR-LWS-005; 36 +|(% style="width:187px" %)[[RS485-LN>>url:http://www.dragino.com/products/lora-lorawan-end-node/item/154-rs485-ln.html]],|(% style="width:349px" %)LoRaWAN RS485 Modbus Converter|(% style="width:453px" %)RS485-LN v1.3 <~-~-> DR-LWS-005; 37 +|(% style="width:187px" %)[[LHT65>>url:http://www.dragino.com/products/lora-lorawan-end-node/item/151-lht65.html]],|(% style="width:349px" %)LoRaWAN Temperature & Humidity Sensor|(% style="width:453px" %)LHT65 v1.7 <~-~-> DR-LWS-003;((( 97 97 LHT65 v1.8.0 <~-~-> DR-LWS-005;~-~-> Support since this version 98 98 ))) 99 -))) 100 -))) 101 101 102 - 103 - 104 104 = 4. System Management Commands = 105 105 106 106 == 4.1 Change Uplink Interval == ... ... @@ -112,7 +112,7 @@ 112 112 **AT Command: AT+TDC** 113 113 ))) 114 114 115 -(% border="1"style="background-color:#ffffcc; color:green; width:727.222px" %)52 +(% style="background-color:#ffffcc; color:green; width:727.222px" %) 116 116 |=(% colspan="3" style="width: 724px;" %)AT+TDC 117 117 |(% style="width:165px" %)**Command Example**|(% style="width:227px" %)**Function**|(% style="width:329px" %)**Response** 118 118 |(% style="width:165px" %)AT+TDC=?|(% style="width:227px" %)Show current transmit Interval|(% style="width:329px" %)30000((( ... ... @@ -128,19 +128,13 @@ 128 128 **Downlink Command: 0x01** 129 129 {{/info}} 130 130 131 -((( 132 132 Format: Command Code (0x01) followed by 3 bytes time value. 133 -))) 134 134 135 -((( 136 136 If the downlink payload=0100003C, it means set the END Node’s Transmit Interval to 0x00003C=60(S), while type code is 01. 137 -))) 138 138 139 139 * **Example 1**: Downlink Payload:** 0100001E** ~/~/ Set Transmit Interval (TDC) = 30 seconds 140 140 * **Example 2**: Downlink Payload:** 0100003C** ~/~/ Set Transmit Interval (TDC) = 60 seconds 141 141 142 - 143 - 144 144 == 4.2 Reboot End Node == 145 145 146 146 Feature: Reboot End Node to perform a new OTAA or ABP Join. ... ... @@ -149,7 +149,7 @@ 149 149 **AT Command: ATZ** 150 150 {{/info}} 151 151 152 -(% border=" 1" style="background-color:#ffffcc; color:green; width:727.222px" %)83 +(% border="0" style="background-color:#ffffcc; color:green; width:727.222px" %) 153 153 |=(% colspan="3" %)ATZ: Trig a reset of the MCU 154 154 |**Command Example**|**Function**|**Response** 155 155 |ATZ|Reset MCU|((( ... ... @@ -170,16 +170,10 @@ 170 170 **Downlink Command: 0x04** 171 171 {{/info}} 172 172 173 -((( 174 174 Format: Command Code (0x04) followed by FF. 175 -))) 176 176 177 -((( 178 178 If the downlink payload=**04FF**, the end node will reboot. 179 179 180 - 181 -))) 182 - 183 183 == 4.3 Reset to factory Default == 184 184 185 185 Feature: Reset the parameters to Factory Default, factory default value depends on the firmware settings, the OTAA and ABP keys will reserve after this command. ... ... @@ -188,7 +188,7 @@ 188 188 **AT Command: AT+FDR** 189 189 {{/info}} 190 190 191 -(% border="1"style="background-color:#ffffcc; color:green; width:831.222px" %)116 +(% style="background-color:#ffffcc; color:green; width:831.222px" %) 192 192 |=(% colspan="3" style="width: 828px;" %)Reset to factory default 193 193 |(% style="width:181px" %)**Command Example**|(% style="width:181px" %)**Function**|(% style="width:465px" %)**Response** 194 194 |(% style="width:181px" %)AT+FDR|(% style="width:181px" %)Reset to factory default|(% style="width:465px" %)((( ... ... @@ -209,13 +209,9 @@ 209 209 **Downlink Command: 0x04** 210 210 {{/info}} 211 211 212 -((( 213 213 Format: Command Code (0x04) followed by FE. 214 -))) 215 215 216 -((( 217 217 If the downlink payload=**04FE**, Reset Parameters to Factory Default, Keys Reserve. 218 -))) 219 219 220 220 221 221 == 4.4 Show Firmware Version == ... ... @@ -226,10 +226,10 @@ 226 226 **AT Command: AT+VER** 227 227 {{/info}} 228 228 229 -(% border="1"style="background-color:#ffffcc; color:green; width:586px" %)230 -|=(% colspan="3" style="width: 583px;"%)AT+VER: Image Version and Frequency Band231 -| (% style="width:170px" %)**Command Example**|(% style="width:300px" %)**Function**|(% style="width:113px" %)**Response**232 -| (% style="width:170px" %)AT+VER=?|(% style="width:300px" %)Show Image version and Frequency Band|(% style="width:113px" %)(((150 +(% style="background-color:#ffffcc; color:green" %) 151 +|=(% colspan="3" %)AT+VER: Image Version and Frequency Band 152 +|**Command Example**|**Function**|**Response** 153 +|AT+VER=?|Show Image version and Frequency Band|((( 233 233 1.3 EU868 234 234 235 235 OK ... ... @@ -239,25 +239,17 @@ 239 239 **Downlink Command: 0x26 (Valid in 006 stack)** 240 240 {{/info}} 241 241 242 -((( 243 243 Downlink Format: 0x26 244 -))) 245 245 246 -((( 247 247 Device will reply with firmware version info, device info. frequency band info. detail please check device user manual. Total 5 bytes Example: If device is of firmware version 1.1.0 Upload: xx ~-~- yy ~-~- zz ~-~- 110 total 5 bytes 248 -))) 249 249 250 -((( 251 251 **xx: Software Type:** 252 -))) 253 253 254 254 * 0x00 01: LGT92 Version 255 255 * 0x00 02: LBT1 256 256 * 0x00 03: LSE01/LDDS75/LDDS20/LSPH01/LLMS01/LSNPK01 257 257 258 -((( 259 259 **yy: Frequency Band:** 260 -))) 261 261 262 262 * 0x01: EU868 263 263 * 0x02: US915 ... ... @@ -270,9 +270,7 @@ 270 270 * 0x09: AS923-2 271 271 * 0xa0: AS923-3 272 272 273 -((( 274 274 **zz: Subband** 275 -))) 276 276 277 277 firmware version: v1.1.0 ~-~-> 110 278 278 ... ... @@ -285,7 +285,7 @@ 285 285 **AT Command: AT+CFG** 286 286 {{/info}} 287 287 288 -(% border="1"style="background-color:#ffffcc; color:green; width:599.222px" %)199 +(% style="background-color:#ffffcc; color:green; width:599.222px" %) 289 289 |=(% colspan="3" style="width: 596px;" %)AT+CFG: Print all configurations 290 290 |(% style="width:160px" %)**Command Example**|(% style="width:154px" %)**Function**|(% style="width:280px" %)**Response** 291 291 |(% style="width:160px" %)AT+CFG|(% style="width:154px" %)Show all configures|(% style="width:280px" %)((( ... ... @@ -302,8 +302,6 @@ 302 302 OK 303 303 ))) 304 304 305 - 306 - 307 307 = 5. Keys, IDs and EUIs management = 308 308 309 309 == 5.1 Application EUI == ... ... @@ -314,7 +314,7 @@ 314 314 **AT Command: AT+APPEUI** 315 315 {{/info}} 316 316 317 -(% border="1"style="background-color:#ffffcc; color:green; width:686.222px" %)226 +(% style="background-color:#ffffcc; color:green; width:686.222px" %) 318 318 |=(% colspan="3" style="width: 683px;" %)AT+APPEUI 319 319 |(% style="width:305px" %)**Command Example**|(% style="width:186px" %)**Function**|(% style="width:191px" %)**Response** 320 320 |(% style="width:305px" %)AT+APPEUI=?|(% style="width:186px" %)Get the Application EUI|(% style="width:191px" %)00 b3 d5 00 00 00 00 00((( ... ... @@ -322,8 +322,6 @@ 322 322 ))) 323 323 |(% style="width:305px" %)AT+APPEUI=00 b3 d5 7e f0 00 4d 34|(% style="width:186px" %)Set the Application EUI|(% style="width:191px" %)OK 324 324 325 - 326 - 327 327 == 5.2 Application Key == 328 328 329 329 Feature: Get or Set the Application Key. ... ... @@ -332,7 +332,7 @@ 332 332 **AT Command: AT+APPKEY** 333 333 {{/info}} 334 334 335 -(% border="1"style="background-color:#ffffcc; color:green; width:976.222px" %)242 +(% style="background-color:#ffffcc; color:green; width:976.222px" %) 336 336 |=(% colspan="3" style="width: 973px;" %)AT+APPKEY 337 337 |(% style="width:441px" %)**Command Example**|(% style="width:180px" %)**Function**|(% style="width:350px" %)**Response** 338 338 |(% style="width:441px" %)AT+APPKEY=?|(% style="width:180px" %)Get the Application Key|(% style="width:350px" %)00 35 55 55 22 23 55 53 43 24 23 42 34 35 35 35((( ... ... @@ -340,8 +340,6 @@ 340 340 ))) 341 341 |(% style="width:441px" %)AT+APPKEY=00 35 55 55 22 23 55 53 43 24 23 42 34 35 35 35|(% style="width:180px" %)Set the Application Key|(% style="width:350px" %)OK 342 342 343 - 344 - 345 345 == 5.3 Application Session Key == 346 346 347 347 Feature: Get or Set the Application Session Key. ... ... @@ -350,7 +350,7 @@ 350 350 **AT Command: AT+APPSKEY** 351 351 {{/info}} 352 352 353 -(% border="1"style="background-color:#ffffcc; color:green; width:1040.22px" %)258 +(% style="background-color:#ffffcc; color:green; width:1040.22px" %) 354 354 |=(% colspan="3" style="width: 1037px;" %)AT+APPSKEY 355 355 |(% style="width:451px" %)**Command Example**|(% style="width:231px" %)**Function**|(% style="width:354px" %)**Response** 356 356 |(% style="width:451px" %)AT+APPSKEY=?|(% style="width:231px" %)Get the Application Session Key|(% style="width:354px" %)00 7d dc 73 33 d3 eb 9e 14 38 d5 a4 3e 62 5b e2((( ... ... @@ -360,8 +360,6 @@ 360 360 OK 361 361 ))) 362 362 363 - 364 - 365 365 == 5.4 Device Address == 366 366 367 367 Feature: Get or Set the Device Address. ... ... @@ -370,7 +370,7 @@ 370 370 **AT Command: AT+DADDR** 371 371 {{/info}} 372 372 373 -(% border="1"style="background-color:#ffffcc; color:green; width:795.222px" %)276 +(% style="background-color:#ffffcc; color:green; width:795.222px" %) 374 374 |=(% colspan="3" style="width: 792px;" %)AT+DADDR 375 375 |(% style="width:192px" %)**Command Example**|(% style="width:241px" %)**Function**|(% style="width:359px" %)**Response** 376 376 |(% style="width:192px" %)AT+DADDR=?|(% style="width:241px" %)Get the Application Session Key.|(% style="width:359px" %)(While Error in format, return AT_PARAM_ERROR)((( ... ... @@ -388,7 +388,7 @@ 388 388 **AT Command: AT+DEUI** 389 389 {{/info}} 390 390 391 -(% border="1"style="background-color:#ffffcc; color:green; width:1035.22px" %)294 +(% style="background-color:#ffffcc; color:green; width:1035.22px" %) 392 392 |=(% colspan="3" style="width: 1032px;" %)AT+DEUI 393 393 |(% style="width:250px" %)**Command Example**|(% style="width:147px" %)**Function**|(% style="width:634px" %)**Response** 394 394 |(% style="width:250px" %)AT+DEUI=?|(% style="width:147px" %)Get the Device EUI.|(% style="width:634px" %)00 44 34 22 33 45 55 55((( ... ... @@ -406,7 +406,7 @@ 406 406 **AT Command: AT+NWKID** 407 407 {{/info}} 408 408 409 -(% border="1"style="background-color:#ffffcc; color:green; width:448.222px" %)312 +(% style="background-color:#ffffcc; color:green; width:448.222px" %) 410 410 |=(% colspan="3" style="width: 445px;" %)AT+NWKID 411 411 |(% style="width:191px" %)**Command Example**|(% style="width:153px" %)**Function**|(% style="width:101px" %)**Response** 412 412 |(% style="width:191px" %)AT+NWKID=?|(% style="width:153px" %)Get the Network ID.|(% style="width:101px" %)a8 40 41 ff((( ... ... @@ -422,7 +422,7 @@ 422 422 **AT Command: AT+NWKSKEY** 423 423 {{/info}} 424 424 425 -(% border="1"style="background-color:#ffffcc; color:green; width:1017.22px" %)328 +(% style="background-color:#ffffcc; color:green; width:1017.22px" %) 426 426 |=(% colspan="3" style="width: 1014px;" %)AT+NWKSKEY 427 427 |(% style="width:455px" %)**Command Example**|(% style="width:215px" %)**Function**|(% style="width:343px" %)**Response** 428 428 |(% style="width:455px" %)AT+NWKSKEY=?|(% style="width:215px" %)Get the Network Session Key.|(% style="width:343px" %)00 4f 19 25 52 ce 97 09 d7 fa 84 71 db 51 02 92((( ... ... @@ -440,7 +440,7 @@ 440 440 **AT Command: AT+CFM** 441 441 {{/info}} 442 442 443 -(% border="1"style="background-color:#ffffcc; color:green; width:710.222px" %)346 +(% style="background-color:#ffffcc; color:green; width:710.222px" %) 444 444 |=(% colspan="3" style="width: 707px;" %)AT+CFM 445 445 |(% style="width:155px" %)**Command Example**|(% style="width:205px" %)**Function**|(% style="width:346px" %)**Response** 446 446 |(% style="width:155px" %)AT+CFM=?|(% style="width:205px" %)Get the confirmation mode|(% style="width:346px" %)0((( ... ... @@ -466,7 +466,7 @@ 466 466 **AT Command: AT+CFS** 467 467 {{/info}} 468 468 469 -(% border="1"style="background-color:#ffffcc; color:green; width:534.222px" %)372 +(% style="background-color:#ffffcc; color:green; width:534.222px" %) 470 470 |=(% colspan="3" style="width: 531px;" %)AT+CFS 471 471 |(% style="width:156px" %)**Command Example**|(% style="width:193px" %)**Function**|(% style="width:178px" %)**Response** 472 472 |(% style="width:156px" %)AT+CFS=?|(% style="width:193px" %)Get confirmation status|(% style="width:178px" %)0((( ... ... @@ -481,7 +481,7 @@ 481 481 **AT Command: AT+JOIN** 482 482 {{/info}} 483 483 484 -(% border="1"style="background-color:#ffffcc; color:green; width:647.222px" %)387 +(% style="background-color:#ffffcc; color:green; width:647.222px" %) 485 485 |=(% colspan="3" style="width: 644px;" %)AT+JOIN 486 486 |(% style="width:163px" %)**Command Example**|(% style="width:147px" %)**Function**|(% style="width:334px" %)**Response** 487 487 |(% style="width:163px" %)AT+JOIN ?|(% style="width:147px" %)Get imformation.|(% style="width:334px" %)AT+JOIN: Join network((( ... ... @@ -498,7 +498,7 @@ 498 498 **AT Command: AT+NJM** 499 499 {{/info}} 500 500 501 -(% border="1"style="background-color:#ffffcc; color:green; width:753.222px" %)404 +(% style="background-color:#ffffcc; color:green; width:753.222px" %) 502 502 |=(% colspan="3" style="width: 750px;" %)AT+NJM 503 503 |(% style="width:162px" %)**Command Example**|(% style="width:227px" %)**Function**|(% style="width:361px" %)**Response** 504 504 |(% style="width:162px" %)AT+NJM=?|(% style="width:227px" %)Get the Network Join Mode|(% style="width:361px" %)1((( ... ... @@ -526,7 +526,7 @@ 526 526 **AT Command: AT+NJS** 527 527 {{/info}} 528 528 529 -(% border="1"style="background-color:#ffffcc; color:green; width:498.222px" %)432 +(% style="background-color:#ffffcc; color:green; width:498.222px" %) 530 530 |=(% colspan="3" style="width: 495px;" %)AT+NJS 531 531 |(% style="width:169px" %)**Command Example**|(% style="width:164px" %)**Function**|(% style="width:161px" %)**Response** 532 532 |(% style="width:169px" %)AT+NJS=?|(% style="width:164px" %)Get the join status.|(% style="width:161px" %)0((( ... ... @@ -541,7 +541,7 @@ 541 541 **AT Command: AT+RECV** 542 542 {{/info}} 543 543 544 -(% border="1"style="background-color:#ffffcc; color:green; width:587.222px" %)447 +(% style="background-color:#ffffcc; color:green; width:587.222px" %) 545 545 |=(% colspan="3" style="width: 584px;" %)AT+RECV 546 546 |(% style="width:161px" %)**Command Example**|(% style="width:272px" %)**Function**|(% style="width:150px" %)**Response** 547 547 |(% style="width:161px" %)AT+RECV=?|(% style="width:272px" %)print last received data in raw format.|(% style="width:150px" %)0:((( ... ... @@ -556,7 +556,7 @@ 556 556 **AT Command: AT+RECVB** 557 557 {{/info}} 558 558 559 -(% border="1"style="background-color:#ffffcc; color:green; width:793.222px" %)462 +(% style="background-color:#ffffcc; color:green; width:793.222px" %) 560 560 |=(% colspan="3" style="width: 790px;" %)AT+RECVB 561 561 |(% style="width:173px" %)**Command Example**|(% style="width:497px" %)**Function**|(% style="width:120px" %)**Response** 562 562 |(% style="width:173px" %)AT+RECVB=?|(% style="width:497px" %)print last received data in binary format (with hexadecimal values).|(% style="width:120px" %)2: 0010((( ... ... @@ -571,7 +571,7 @@ 571 571 **AT Command: AT+SEND** 572 572 {{/info}} 573 573 574 -(% border="1"style="background-color:#ffffcc; color:green; width:991.222px" %)477 +(% style="background-color:#ffffcc; color:green; width:991.222px" %) 575 575 |=(% colspan="3" style="width: 988px;" %)AT+SEND 576 576 |(% style="width:201px" %)**Command Example**|(% style="width:340px" %)**Function**|(% style="width:446px" %)**Response** 577 577 |(% style="width:201px" %)AT+SEND=12:hello world|(% style="width:340px" %)Send text data along with the application port.|(% style="width:446px" %)OK((( ... ... @@ -590,7 +590,7 @@ 590 590 **AT Command: AT+SENDB** 591 591 {{/info}} 592 592 593 -(% border="1"style="background-color:#ffffcc; color:green; width:1120.22px" %)496 +(% style="background-color:#ffffcc; color:green; width:1120.22px" %) 594 594 |=(% colspan="3" style="width: 1117px;" %)AT+SENDB 595 595 |(% style="width:257px" %)**Command Example**|(% style="width:406px" %)**Function**|(% style="width:453px" %)**Response** 596 596 |(% style="width:257px" %)AT+SENDB=12:abcdef0123456789|(% style="width:406px" %)Send hexadecimal data along with the application port.|(% style="width:453px" %)OK ... ... @@ -610,7 +610,7 @@ 610 610 **AT Command: AT+ADR** 611 611 {{/info}} 612 612 613 -(% border="1"style="background-color:#ffffcc; color:green; width:683.222px" %)516 +(% style="background-color:#ffffcc; color:green; width:683.222px" %) 614 614 |=(% colspan="3" style="width: 680px;" %)AT+ADR 615 615 |(% style="width:162px" %)**Command Example**|(% style="width:266px" %)**Function**|(% style="width:250px" %)**Response** 616 616 |(% style="width:162px" %)AT+ADR=?|(% style="width:266px" %)Get the Adaptive Data Rate setting.|(% style="width:250px" %)1((( ... ... @@ -639,7 +639,7 @@ 639 639 **AT Command:AT+CLASS** 640 640 {{/info}} 641 641 642 -(% border="1"style="background-color:#ffffcc; color:green; width:507.222px" %)545 +(% style="background-color:#ffffcc; color:green; width:507.222px" %) 643 643 |=(% colspan="3" style="width: 504px;" %)AT+CLASS 644 644 |(% style="width:163px" %)**Command Example**|(% style="width:166px" %)**Function**|(% style="width:175px" %)**Response** 645 645 |(% style="width:163px" %)AT+CLASS=?|(% style="width:166px" %)Get the Device Class.|(% style="width:175px" %)A((( ... ... @@ -657,7 +657,7 @@ 657 657 **AT Command:AT+DCS** 658 658 {{/info}} 659 659 660 -(% border="1"style="background-color:#ffffcc; color:green; width:515.222px" %)563 +(% style="background-color:#ffffcc; color:green; width:515.222px" %) 661 661 |=(% colspan="3" style="width: 512px;" %)AT+DCS 662 662 |(% style="width:165px" %)**Command Example**|(% style="width:239px" %)**Function**|(% style="width:107px" %)**Response** 663 663 |(% style="width:165px" %)AT+DCS=?|(% style="width:239px" %)Get the ETSI Duty Cycle setting.|(% style="width:107px" %)1((( ... ... @@ -675,7 +675,7 @@ 675 675 **AT Command: AT+DR** 676 676 {{/info}} 677 677 678 -(% border="1"style="background-color:#ffffcc; color:green; width:466.222px" %)581 +(% style="background-color:#ffffcc; color:green; width:466.222px" %) 679 679 |=(% colspan="3" style="width: 463px;" %)AT+DR 680 680 |(% style="width:156px" %)**Command Example**|(% style="width:167px" %)**Function**|(% style="width:140px" %)**Response** 681 681 |(% style="width:156px" %)AT+DR=?|(% style="width:167px" %)Get the Data Rate.|(% style="width:140px" %)5((( ... ... @@ -703,7 +703,7 @@ 703 703 **AT Command:AT+FCD** 704 704 {{/info}} 705 705 706 -(% border="1"style="background-color:#ffffcc; color:green; width:693.222px" %)609 +(% style="background-color:#ffffcc; color:green; width:693.222px" %) 707 707 |=(% colspan="3" style="width: 690px;" %)AT+FCD 708 708 |(% style="width:162px" %)**Command Example**|(% style="width:258px" %)**Function**|(% style="width:269px" %)**Response** 709 709 |(% style="width:162px" %)AT+FCD=?|(% style="width:258px" %)Get the Frame Counter Downlink.|(% style="width:269px" %)0((( ... ... @@ -723,7 +723,7 @@ 723 723 **AT Command:AT+FCU** 724 724 {{/info}} 725 725 726 -(% border="1"style="background-color:#ffffcc; color:green; width:534.222px" %)629 +(% style="background-color:#ffffcc; color:green; width:534.222px" %) 727 727 |=(% colspan="3" style="width: 531px;" %)AT+FCU 728 728 |(% style="width:177px" %)**Command Example**|(% style="width:239px" %)**Function**|(% style="width:113px" %)**Response** 729 729 |(% style="width:177px" %)AT+FCU=?|(% style="width:239px" %)Get the Frame Counter Uplink.|(% style="width:113px" %)0((( ... ... @@ -741,7 +741,7 @@ 741 741 **AT Command:AT+JN1DL** 742 742 {{/info}} 743 743 744 -(% border="1"style="background-color:#ffffcc; color:green; width:537.222px" %)647 +(% style="background-color:#ffffcc; color:green; width:537.222px" %) 745 745 |=(% colspan="3" style="width: 534px;" %)AT+JN1DL 746 746 |(% style="width:164px" %)**Command Example**|(% style="width:229px" %)**Function**|(% style="width:140px" %)**Response** 747 747 |(% style="width:164px" %)AT+JN1DL=?|(% style="width:229px" %)Get the Join Accept Delay.|(% style="width:140px" %)5000((( ... ... @@ -759,7 +759,7 @@ 759 759 **AT Command:AT+JN2DL** 760 760 {{/info}} 761 761 762 -(% border="1"style="background-color:#ffffcc; color:green; width:538.222px" %)665 +(% style="background-color:#ffffcc; color:green; width:538.222px" %) 763 763 |=(% colspan="3" style="width: 535px;" %)AT+JN2DL 764 764 |(% style="width:160px" %)**Command Example**|(% style="width:228px" %)**Function**|(% style="width:146px" %)**Response** 765 765 |(% style="width:160px" %)AT+JN2DL=?|(% style="width:228px" %)Get the Join Accept Delay.|(% style="width:146px" %)6000((( ... ... @@ -777,7 +777,7 @@ 777 777 **AT Command:AT+PNM** 778 778 {{/info}} 779 779 780 -(% border="1"style="background-color:#ffffcc; color:green; width:667.222px" %)683 +(% style="background-color:#ffffcc; color:green; width:667.222px" %) 781 781 |=(% colspan="3" style="width: 664px;" %)AT+PNM 782 782 |(% style="width:166px" %)**Command Example**|(% style="width:225px" %)**Function**|(% style="width:272px" %)**Response** 783 783 |(% style="width:166px" %)AT+PNM=?|(% style="width:225px" %)Get the public network mode.|(% style="width:272px" %)1((( ... ... @@ -797,7 +797,7 @@ 797 797 **AT Command:AT+RX1DL** 798 798 {{/info}} 799 799 800 -(% border="1"style="background-color:#ffffcc; color:green; width:408.222px" %)703 +(% style="background-color:#ffffcc; color:green; width:408.222px" %) 801 801 |=(% colspan="3" style="width: 405px;" %)AT+RX1DL 802 802 |(% style="width:155px" %)**Command Example**|(% style="width:128px" %)**Function**|(% style="width:122px" %)**Response** 803 803 |(% style="width:155px" %)AT+RX1DL=?|(% style="width:128px" %)Get the delay.|(% style="width:122px" %)1000((( ... ... @@ -807,7 +807,7 @@ 807 807 808 808 ))) 809 809 810 -== 7.11 713 +== 7.11Receive Delay2 == 811 811 812 812 Feature: Get or Set the delay between the end of the Tx and the Rx Window 2 in ms 813 813 ... ... @@ -815,7 +815,7 @@ 815 815 **AT Command:AT+RX2DL** 816 816 {{/info}} 817 817 818 -(% border="1"style="background-color:#ffffcc; color:green; width:481.222px" %)721 +(% style="background-color:#ffffcc; color:green; width:481.222px" %) 819 819 |=(% colspan="3" style="width: 478px;" %)AT+RX2DL 820 820 |(% style="width:175px" %)**Command Example**|(% style="width:152px" %)**Function**|(% style="width:150px" %)**Response** 821 821 |(% style="width:175px" %)AT+RX2DL=?|(% style="width:152px" %)Get the delay.|(% style="width:150px" %)2000((( ... ... @@ -833,7 +833,7 @@ 833 833 **AT Command:AT+RX2DR** 834 834 {{/info}} 835 835 836 -(% border="1"style="background-color:#ffffcc; color:green; width:525.222px" %)739 +(% style="background-color:#ffffcc; color:green; width:525.222px" %) 837 837 |=(% colspan="3" style="width: 522px;" %)AT+RX2DR 838 838 |(% style="width:160px" %)**Command Example**|(% style="width:232px" %)**Function**|(% style="width:130px" %)**Response** 839 839 |(% style="width:160px" %)AT+RX2DR=?|(% style="width:232px" %)Get the Rx2 window data rate.|(% style="width:130px" %)2((( ... ... @@ -851,7 +851,7 @@ 851 851 **AT Command:AT+RX2FQ** 852 852 {{/info}} 853 853 854 -(% border="1"style="background-color:#ffffcc; color:green; width:587.222px" %)757 +(% style="background-color:#ffffcc; color:green; width:587.222px" %) 855 855 |=(% colspan="3" style="width: 584px;" %)AT+RX2FQ 856 856 |(% style="width:183px" %)**Command Example**|(% style="width:240px" %)**Function**|(% style="width:160px" %)**Response** 857 857 |(% style="width:183px" %)AT+RX2FQ=?|(% style="width:240px" %)Get the Rx2 window frequency.|(% style="width:160px" %)434665000((( ... ... @@ -869,7 +869,7 @@ 869 869 **AT Command:AT+TXP** 870 870 {{/info}} 871 871 872 -(% border="1"style="background-color:#ffffcc; color:green; width:465.222px" %)775 +(% style="background-color:#ffffcc; color:green; width:465.222px" %) 873 873 |=(% colspan="3" style="width: 462px;" %)AT+TXP 874 874 |(% style="width:161px" %)**Command Example**|(% style="width:189px" %)**Function**|(% style="width:112px" %)**Response** 875 875 |(% style="width:161px" %)AT+TXP=?|(% style="width:189px" %)Get the Transmit Power.|(% style="width:112px" %)0((( ... ... @@ -894,7 +894,7 @@ 894 894 **AT Command:AT+RSSI** 895 895 {{/info}} 896 896 897 -(% border="1"style="background-color:#ffffcc; color:green; width:557.222px" %)800 +(% style="background-color:#ffffcc; color:green; width:557.222px" %) 898 898 |=(% colspan="3" style="width: 554px;" %)AT+RSSI 899 899 |(% style="width:164px" %)**Command Example**|(% style="width:289px" %)**Function**|(% style="width:100px" %)**Response** 900 900 |(% style="width:164px" %)AT+RSSI=?|(% style="width:289px" %)Get the RSSI of the last received packet.|(% style="width:100px" %)0((( ... ... @@ -909,7 +909,7 @@ 909 909 **AT Command:AT+SNR** 910 910 {{/info}} 911 911 912 -(% border="1"style="background-color:#ffffcc; color:green; width:571.222px" %)815 +(% style="background-color:#ffffcc; color:green; width:571.222px" %) 913 913 |=(% colspan="3" style="width: 568px;" %)AT+SNR 914 914 |(% style="width:164px" %)**Command Example**|(% style="width:290px" %)**Function**|(% style="width:113px" %)**Response** 915 915 |(% style="width:164px" %)AT+SNR=?|(% style="width:290px" %)Get the RSSI of the last received packet.|(% style="width:113px" %)0((( ... ... @@ -924,7 +924,7 @@ 924 924 **AT Command: AT+PORT** 925 925 {{/info}} 926 926 927 -(% border="1"style="background-color:#ffffcc; color:green; width:500.222px" %)830 +(% style="background-color:#ffffcc; color:green; width:500.222px" %) 928 928 |=(% colspan="3" style="width: 497px;" %)AT+PORT 929 929 |(% style="width:157px" %)**Command Example**|(% style="width:204px" %)**Function**|(% style="width:135px" %)**Response** 930 930 |(% style="width:157px" %)AT+PORT=?|(% style="width:204px" %)Get the application port|(% style="width:135px" %)21((( ... ... @@ -951,7 +951,7 @@ 951 951 **AT Command: AT+CHS** 952 952 {{/info}} 953 953 954 -(% border="1"style="background-color:#ffffcc; color:green; width:603.222px" %)857 +(% style="background-color:#ffffcc; color:green; width:603.222px" %) 955 955 |=(% colspan="3" style="width: 600px;" %)AT+CHS 956 956 |(% style="width:182px" %)**Command Example**|(% style="width:295px" %)**Function**|(% style="width:122px" %)**Response** 957 957 |(% style="width:182px" %)AT+CHS=?|(% style="width:295px" %)Get Frequency for Single Channel Mode|(% style="width:122px" %)0((( ... ... @@ -967,7 +967,7 @@ 967 967 **AT Command: AT+CHE** 968 968 {{/info}} 969 969 970 -(% border="1"style="background-color:#ffffcc; color:green; width:710.222px" %)873 +(% style="background-color:#ffffcc; color:green; width:710.222px" %) 971 971 |=(% colspan="3" style="width: 707px;" %)AT+CHE 972 972 |(% style="width:160px" %)**Command Example**|(% style="width:198px" %)**Function**|(% style="width:349px" %)**Response** 973 973 |(% style="width:160px" %)AT+CHE=?|(% style="width:198px" %)Get eight channels mode|(% style="width:349px" %)1((( ... ... @@ -996,7 +996,7 @@ 996 996 **AT Command: AT+RX1WTO** 997 997 {{/info}} 998 998 999 -(% border="1"style="background-color:#ffffcc; color:green; width:460.222px" %)902 +(% style="background-color:#ffffcc; color:green; width:460.222px" %) 1000 1000 |=(% colspan="3" style="width: 457px;" %)AT+ RX1WTO 1001 1001 |(% style="width:163px" %)**Command Example**|(% style="width:201px" %)**Function**|(% style="width:93px" %)**Response** 1002 1002 |(% style="width:163px" %)AT+RX1WTO=?|(% style="width:201px" %)Get RXwindows1 timeout|(% style="width:93px" %)14((( ... ... @@ -1004,60 +1004,46 @@ 1004 1004 ))) 1005 1005 |(% style="width:163px" %)AT+RX1WTO=60|(% style="width:201px" %)Set RXwindows1 timeout|(% style="width:93px" %)OK 1006 1006 1007 -((( 1008 -**AT+RX1TWO** is theRxSingle timeout value of receive window 1. If it is not set, then the queriedvalue is the default value. If it is set, then the queried value is the setvalue. AT+RX2TWO is thesame as above. The definitionof RxSingle timeout is as described in the following paragraph. 1009 -))) 910 +AT+RX1TWO is theRxSingle timeout value of receive window 1. If it is not set, then the queriedvalue is the default value. If it is set, then the queried value is the setvalue. AT+RX2TWO is thesame as above. The definitionof RxSingle timeout is as described in the following paragraph. 1010 1010 1011 -[[image:image -20220526162535-1.png]]912 +[[~[~[image:https://wiki.dragino.com/images/thumb/5/51/RX1WTO.JPG/600px-RX1WTO.JPG~|~|alt="RX1WTO.JPG" height="239" width="600"~]~]>>url:https://wiki.dragino.com/index.php/File:RX1WTO.JPG]] 1012 1012 1013 -((( 1014 1014 Increasing thisvalue is equal to extending the time that the receiving window is opened, butthe corresponding power consumption will also increase. Properly increasingthis value can increase the success rate of the downlink. 1015 1015 1016 - 1017 -))) 1018 - 1019 1019 == 7.21 Get or Set RXwindows2 timeout == 1020 1020 1021 1021 Feature:Get or Set the number of symbols to detect and timeout from RXwindow2(0 to 255). 1022 1022 1023 -{{info}} 1024 -**AT Command: AT+RX2WTO** 1025 -{{/info}} 920 +AT Command: AT+RX2WTO 1026 1026 1027 -(% border="1" style="background-color:#ffffcc; color:green; width:497.222px" %) 1028 -|=(% colspan="3" style="width: 494px;" %)AT+ RX2WTO 1029 -|(% style="width:190px" %)**Command Example**|(% style="width:199px" %)**Function**|(% style="width:104px" %)**Response** 1030 -|(% style="width:190px" %)AT+RX2WTO=?|(% style="width:199px" %)Get RXwindows2 timeout|(% style="width:104px" %)7((( 922 +|=(% colspan="3" %)AT+ RX2WTO 923 +|**Command Example**|**Function**|**Response** 924 +|AT+RX2WTO=?|Get RXwindows2 timeout|7((( 1031 1031 OK 1032 1032 ))) 1033 -| (% style="width:190px" %)AT+RX2WTO=20|(% style="width:199px" %)Set RXwindows2 timeout|(% style="width:104px" %)OK927 +|AT+RX2WTO=20|Set RXwindows2 timeout|OK 1034 1034 1035 1035 == 7.22 Setting up uplinkdwelltime (as923, au915) == 1036 1036 1037 1037 Feature: Get or Set uplinkdwelltime 1038 1038 1039 -{{info}} 1040 -**AT Command: AT+DWELLT** 1041 -{{/info}} 933 +AT Command: AT+DWELLT 1042 1042 1043 -(% border="1" style="background-color:#ffffcc; color:green; width:497.222px" %) 1044 -|=(% colspan="3" style="width: 494px;" %)AT+DWELLT 1045 -|(% style="width:183px" %)**Command Example**|(% style="width:179px" %)**Function**|(% style="width:131px" %)**Response** 1046 -|(% style="width:183px" %)AT+DWELLT=?|(% style="width:179px" %)Get uplinkdwelltime|(% style="width:131px" %)1((( 935 +|=(% colspan="3" %)AT+DWELLT 936 +|**Command Example**|**Function**|**Response** 937 +|AT+DWELLT=?|Get uplinkdwelltime|1((( 1047 1047 OK 1048 1048 ))) 1049 -| (% style="width:183px" %)AT+DWELLT=0|(% style="width:179px" %)Set uplinkdwelltime|(% style="width:131px" %)OK940 +|AT+DWELLT=0|Set uplinkdwelltime|OK 1050 1050 1051 -{{info}} 1052 -**Downlink Command: 0x25** 1053 -{{/info}} 942 +Downlink Command: 0x25 1054 1054 1055 1055 Format: Command Code (0x25) followed by 1 bytes state value. 1056 1056 1057 1057 If the downlink payload=2501, it means set uplinkdwelltime to 1, while type code is 25. 1058 1058 1059 -* **Example 1**: Downlink Payload:**2501**~/~/ set uplinkdwelltime to 11060 -* **Example 2**: Downlink Payload:**2500**~/~/ set uplinkdwelltime to 0948 +* Example 1: Downlink Payload: 2501 ~/~/ set uplinkdwelltime to 1 949 +* Example 2: Downlink Payload: 2500 ~/~/ set uplinkdwelltime to 0 1061 1061 1062 1062 == 7.23 Set Packet Receiving Response Level == 1063 1063 ... ... @@ -1065,11 +1065,11 @@ 1065 1065 1066 1066 RPL value: 1067 1067 1068 -* **AT+RPL=0:**Device won't immediately reply any downlink commands from platform.1069 -* **AT+RPL=1:**Device will immediately reply message to Unconfirmed Data Down. Payload is 0x00.1070 -* **AT+RPL=2:**Device will immediately reply message to Confirmed Data Down. Payload is 0x00 and requied response header for this command.1071 -* **AT+RPL=3:**Device will immediately reply message to MAC Command. Payload is 0x00 and requied response header for this command.1072 -* **AT+RPL=4:**Device will immediately reply message to Confirmed Data Down & MAC Command. Payload is 0x00 and requied response header for these two commands.957 +* AT+RPL=0: Device won't immediately reply any downlink commands from platform. 958 +* AT+RPL=1: Device will immediately reply message to Unconfirmed Data Down. Payload is 0x00. 959 +* AT+RPL=2: Device will immediately reply message to Confirmed Data Down. Payload is 0x00 and requied response header for this command. 960 +* AT+RPL=3: Device will immediately reply message to MAC Command. Payload is 0x00 and requied response header for this command. 961 +* AT+RPL=4: Device will immediately reply message to Confirmed Data Down & MAC Command. Payload is 0x00 and requied response header for these two commands. 1073 1073 1074 1074 Case Analyes: 1075 1075 ... ... @@ -1077,44 +1077,37 @@ 1077 1077 * For Class C devices used in ChirpStack, need to set AT+RPL=4 because Chirpstack require immedietely reply message to MAC Command. 1078 1078 * For Class C devices used in TTI, need to set AT+RPL=4 because TTI require immediately reply message to Confirmed Data Down & MAC Command. 1079 1079 1080 -{{info}} 1081 -**AT Command: AT+RPL** 1082 -{{/info}} 969 +AT Command: AT+RPL 1083 1083 1084 -(% border="1" style="background-color:#ffffcc; color:green; width:536.222px" %) 1085 -|=(% colspan="3" style="width: 533px;" %)AT+RPL 1086 -|(% style="width:160px" %)**Command Example**|(% style="width:263px" %)**Function**|(% style="width:109px" %)**Response** 1087 -|(% style="width:160px" %)AT+RPL=?|(% style="width:263px" %)Get packet receiving response level|(% style="width:109px" %)1((( 971 +|=(% colspan="3" %)AT+RPL 972 +|**Command Example**|**Function**|**Response** 973 +|AT+RPL=?|Get packet receiving response level|1((( 1088 1088 OK 1089 1089 ))) 1090 -| (% style="width:160px" %)AT+RPL=0|(% style="width:263px" %)Set packet receiving response level|(% style="width:109px" %)OK976 +|AT+RPL=0|Set packet receiving response level|OK 1091 1091 1092 -{{info}} 1093 -**Downlink Command: 0x21** 1094 -{{/info}} 978 +Downlink Command: 0x21 1095 1095 1096 1096 Format: Command Code (0x21) followed by 1 bytes level value. 1097 1097 1098 1098 If the downlink payload=2101, it means set packet receiving response level to 1, while type code is 21. 1099 1099 1100 -* **Example 1**: Downlink Payload:**2101**~/~/ set packet receiving response level to 11101 -* **Example 2**: Downlink Payload:**2102**~/~/ set packet receiving response level to 2984 +* Example 1: Downlink Payload: 2101 ~/~/ set packet receiving response level to 1 985 +* Example 2: Downlink Payload: 2102 ~/~/ set packet receiving response level to 2 1102 1102 1103 1103 = 8. AT Commands Combination = 1104 1104 1105 1105 == 8.1 Set a fix RX2DR for downlink window == 1106 1106 1107 -* **AT+ADR=0**~-~-> Disable ADR first1108 -* **AT+RX2DR=xxxx**~-~-> Set xxxx to your wanted DataRate991 +* AT+ADR=0 ~-~-> Disable ADR first 992 +* AT+RX2DR=xxxx ~-~-> Set xxxx to your wanted DataRate 1109 1109 1110 1110 == 8.2 Use Downlink Command to set a fix uplink DR == 1111 1111 1112 -{{info}} 1113 -**Downlink Command: 0x22000500** 1114 -{{/info}} 996 +Downlink Command: 0x22000500 1115 1115 1116 1116 Same as: 1117 1117 1118 -* AT+ADR=0 ||anchor="H7.1AdaptiveDataRate"]]1119 -* AT+DR=5 ||anchor="H7.4DataRate"]]1120 -* AT+TXP=0 ||anchor="H7.14TransmitPower"]]1000 +* AT+ADR=0 [[Reference>>url:https://wiki.dragino.com/index.php/End_Device_Downlink_Command#Adaptive_Data_Rate]] 1001 +* AT+DR=5 [[Reference>>url:https://wiki.dragino.com/index.php/End_Device_Downlink_Command#Data_Rate]] 1002 +* AT+TXP=0 [[Reference>>url:https://wiki.dragino.com/index.php/End_Device_Downlink_Command#Transmit_Power]]
- image-20220511120050-1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -136.3 KB - Content
- image-20220526162535-1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -149.4 KB - Content