Changes for page End Device AT Commands and Downlink Command
Last modified by Mengting Qiu on 2025/07/08 16:32
From version 83.1
edited by Mengting Qiu
on 2025/07/01 15:48
on 2025/07/01 15:48
Change comment:
There is no comment for this version
Summary
-
Page properties (2 modified, 0 added, 0 removed)
-
Attachments (0 modified, 0 added, 8 removed)
Details
- Page properties
-
- Author
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. ting1 +XWiki.Xiaoling - Content
-
... ... @@ -1,157 +1,87 @@ 1 - **Table of** **Contents:**1 +Contens 2 2 3 3 {{toc/}} 4 4 5 5 6 - 7 7 = 1. Introduction = 8 8 9 - 10 10 Dragino LoRaWAN End Node support two types of AT Commands and Downlink Commands: 11 11 12 -* (% style="color:blue" %)**Common Commands:** (%%) They should be available for each sensor, such as: change uplink interval, reset device. 10 +* **Common Commands:** They should be available for each sensor, such as: change uplink interval, reset device. 11 +* **Sensor Related Commands:** Only for special sensor, such as control relay, poll RS485 device. 13 13 14 -* (% style="color:blue" %)**Sensor Related Commands:** (%%) Only for special sensor, such as control relay, poll RS485 device. 15 - 16 -((( 17 17 **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.** 18 - )))14 + 19 19 20 - 21 - 22 - 23 - 24 - 25 - 26 26 = 2. How to use AT Commands or Downlink command = 27 27 18 +* 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/]] 19 +* 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: 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]] 28 28 29 -* **AT Command** : See Devices User Manual for how to connect to device via USB TTL adapter and use. The user manual can be found in each product page of **[[Dragino Products User Manual>>http://wiki.dragino.com/xwiki/bin/view/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/]]**. 30 - 31 -* **LoRaWAN Downlink Command**: The gateway transfer downlink command in HEX format. This page shows the Downlink Command In HEX format. Please note some LoRaWAN servers use base64 as downlink code so user need to convert HEX to Base64 and use. Below are references for how to use downlink command: 32 -** Use HEX format to send a downlink: [[TTN v3>>Notes for TTN]] 33 -** Use Base64 format to send a downlink: [[Chirpstack>>Notes for ChirpStack]], [[How to Convert>>http://wiki.dragino.com/xwiki/bin/view/Main/Notes%20for%20ChirpStack/#H4.1ConvertHEXtoBase64]]? 34 -** See use note for more serves [[Servers Note>>doc:Main.WebHome]](IoT LoRaWAN Server) 35 - 36 -(% style="display:none" %) (%%) 37 - 38 38 = 3. Support End Node and firmware version = 39 39 40 - 41 -Dragino STM32 base hardware Firmware / LoRaWAN stack list 42 - 43 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:966px" %) 44 -|(% style="background-color:#4f81bd; color:white; width:187px" %)**Model**|(% style="background-color:#4f81bd; color:white; width:330px" %)**Description**|(% style="background-color:#4f81bd; color:white; width:445px" %)**Firmware Version <~-~-> Stack Version** 45 -|(% style="width:187px" %)((( 46 -[[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]], 47 -)))|(% style="width:330px" %)((( 48 -Open Source Generic LoRaWAN Sensor Node 49 -)))|(% style="width:445px" %)((( 50 -((( 51 -LSN50 v1.6.0 <~-~-> DR-LWS-003; 52 -))) 53 - 54 -((( 55 -((( 26 +(% border="1" style="background-color:#ffffcc; color:green; width:957.222px" %) 27 +|=(% colspan="3" style="width: 954px;Alignment:center" %) Dragino STM32 base hardware Firmware / LoRaWAN stack list 28 +|(% style="width:198px" %)**Model**|(% style="width:311px" %)**Description**|(% style="width:444px" %)**Firmware Version <~-~-> Stack Version** 29 +|(% style="width:198px" %)[[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:311px" %)Open Source Generic LoRaWAN Sensor Node|(% style="width:444px" %)LSN50 v1.6.0 <~-~-> DR-LWS-003;((( 56 56 LSN50 v1.7.0 <~-~-> DR-LWS-005; ~-~-> Support since this version 57 57 ))) 58 -))) 59 -))) 60 -|(% style="width:187px" %)((( 61 -[[LGT92>>url:http://www.dragino.com/products/lora-lorawan-end-node/item/142-lgt-92.html]], 62 -)))|(% style="width:330px" %)((( 63 -LoRaWAN GPS Tracker 64 -)))|(% style="width:445px" %)((( 65 -((( 66 -LGT92 v1.6.3 <~-~-> DR-LWS-003; 67 -))) 68 - 69 -((( 70 -((( 32 +|(% style="width:198px" %)[[LGT92>>url:http://www.dragino.com/products/lora-lorawan-end-node/item/142-lgt-92.html]],|(% style="width:311px" %)LoRaWAN GPS Tracker|(% style="width:444px" %)LGT92 v1.6.3 <~-~-> DR-LWS-003;((( 71 71 LGT92 v1.6.4 <~-~-> DR-LWS-005;~-~-> Support since this version 72 72 ))) 73 -))) 74 -))) 75 -|(% style="width:187px" %)((( 76 -[[LBT1>>url:http://www.dragino.com/products/lora-lorawan-end-node/item/165-lbt1.html]], 77 -)))|(% style="width:330px" %)((( 78 -LoRaWAN BLE Indoor Tracker 79 -)))|(% style="width:445px" %)((( 80 -LBT1 v1.0 <~-~-> DR-LWS-005; 81 -))) 82 -|(% style="width:187px" %)((( 83 -[[RS485-LN>>url:http://www.dragino.com/products/lora-lorawan-end-node/item/154-rs485-ln.html]], 84 -)))|(% style="width:330px" %)((( 85 -LoRaWAN RS485 Modbus Converter 86 -)))|(% style="width:445px" %)((( 87 -RS485-LN v1.3 <~-~-> DR-LWS-005; 88 -))) 89 -|(% style="width:187px" %)((( 90 -[[LHT65>>url:http://www.dragino.com/products/lora-lorawan-end-node/item/151-lht65.html]], 91 -)))|(% style="width:330px" %)((( 92 -LoRaWAN Temperature & Humidity Sensor 93 -)))|(% style="width:445px" %)((( 94 -((( 95 -LHT65 v1.7 <~-~-> DR-LWS-003; 96 -))) 97 - 98 -((( 99 -((( 35 +|(% style="width:198px" %)[[LBT1>>url:http://www.dragino.com/products/lora-lorawan-end-node/item/165-lbt1.html]],|(% style="width:311px" %)LoRaWAN BLE Indoor Tracker|(% style="width:444px" %)LBT1 v1.0 <~-~-> DR-LWS-005; 36 +|(% style="width:198px" %)[[RS485-LN>>url:http://www.dragino.com/products/lora-lorawan-end-node/item/154-rs485-ln.html]],|(% style="width:311px" %)LoRaWAN RS485 Modbus Converter|(% style="width:444px" %)RS485-LN v1.3 <~-~-> DR-LWS-005; 37 +|(% style="width:198px" %)[[LHT65>>url:http://www.dragino.com/products/lora-lorawan-end-node/item/151-lht65.html]],|(% style="width:311px" %)LoRaWAN Temperature & Humidity Sensor|(% style="width:444px" %)LHT65 v1.7 <~-~-> DR-LWS-003;((( 100 100 LHT65 v1.8.0 <~-~-> DR-LWS-005;~-~-> Support since this version 101 101 ))) 102 -))) 103 -))) 104 104 105 -(% style="display:none" %) (%%) 106 - 107 107 = 4. System Management Commands = 108 108 109 109 == 4.1 Change Uplink Interval == 110 110 111 - 112 112 Feature: Change LoRaWAN End Node Transmit Interval. 113 113 47 +(% class="box infomessage" %) 48 +((( 49 +AT Command: AT+TDC 50 +))) 114 114 115 -(% style="color:blue" %)**AT Command: AT+TDC** 116 - 117 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:727.222px" %) 118 -|(% style="background-color:#4f81bd; color:white; width:165px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:227px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:329px" %)**Response** 119 -|(% style="width:165px" %)AT+TDC=?|(% style="width:227px" %)Show current transmit Interval|(% style="width:329px" %)30000((( 52 +(% border="1" style="background-color:#ffffcc; color:green; width:727.222px" %) 53 +|=(% colspan="3" style="width: 724px;Alignment" %) AT+TDC 54 +|(% style="width:168px" %)**Command Example**|(% style="width:223px" %)**Function**|(% style="width:333px" %)**Response** 55 +|(% style="width:168px" %)AT+TDC=?|(% style="width:223px" %)Show current transmit Interval|(% style="width:333px" %)30000((( 120 120 OK 121 121 122 122 the interval is 30000ms = 30s 123 123 ))) 124 -|(% style="width:16 5px" %)AT+TDC=60000|(% style="width:227px" %)Set Transmit Interval|(% style="width:329px" %)OK(((60 +|(% style="width:168px" %)AT+TDC=60000|(% style="width:223px" %)Set Transmit Interval|(% style="width:333px" %)OK((( 125 125 Set transmit interval to 60000ms = 60 seconds 126 126 ))) 127 127 128 -((( 129 -(% style="color:blue" %)**Downlink Command: 0x01** 64 +**Downlink Command: 0x01** 130 130 131 131 Format: Command Code (0x01) followed by 3 bytes time value. 132 -))) 133 133 134 -((( 135 -If the downlink payload=0100003C, it means set the END Node's Transmit Interval to 0x00003C=60(S), while type code is 01. 136 -))) 68 +If the downlink payload=0100003C, it means set the END Node’s Transmit Interval to 0x00003C=60(S), while type code is 01. 137 137 138 -* **Example 1**: Downlink Payload:** 0100001E** ~/~/ Set Transmit Interval (TDC) = 30 seconds 70 +* **Example 1**: Downlink Payload:** 0100001E** ~/~/ Set Transmit Interval (TDC) = 30 seconds 71 +* **Example 2**: Downlink Payload:** 0100003C** ~/~/ Set Transmit Interval (TDC) = 60 seconds 139 139 140 -* **Example 2**: Downlink Payload:** 0100003C** ~/~/ Set Transmit Interval (TDC) = 60 seconds 141 - 142 -(% style="display:none" %) (%%) 143 - 144 144 == 4.2 Reboot End Node == 145 145 146 - 147 147 Feature: Reboot End Node to perform a new OTAA or ABP Join. 148 148 77 +{{info}} 78 +AT Command: ATZ 79 +{{/info}} 149 149 150 -(% style="color:blue" %)**AT Command: ATZ ~/~/ **(%%)Trig a reset of the MCU 151 - 152 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:546px" %) 153 -|(% style="background-color:#4f81bd; color:white; width:157px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:92px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:294px" %)**Response** 154 -|(% style="width:157px" %)ATZ|(% style="width:92px" %)Reset MCU|(% style="width:294px" %)((( 81 +(% border="1" style="background-color:#ffffcc; color:green; width:727.222px" %) 82 +|=(% colspan="3" %)ATZ: Trig a reset of the MCU 83 +|**Command Example**|**Function**|**Response** 84 +|ATZ|Reset MCU|((( 155 155 Device reset and show booting info 156 156 157 157 LSN50 Device/LoRa ST Module ... ... @@ -165,94 +165,66 @@ 165 165 <followed by the Tx and Rx information> 166 166 ))) 167 167 168 - (% style="color:blue" %)**Downlink Command: 0x04**98 +Downlink Command: 0x04 169 169 170 -((( 171 171 Format: Command Code (0x04) followed by FF. 172 -))) 173 173 174 -((( 175 -If the downlink payload=**04FF**, the end node will reboot. 176 -))) 102 +If the downlink payload=04FF, the end node will reboot. 177 177 178 - 179 179 == 4.3 Reset to factory Default == 180 180 181 - 182 182 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. 183 183 108 +AT Command: AT+FDR 184 184 185 -(% style="color:blue" %)**AT Command: AT+FDR ~/~/ **(%%)Reset to factory default 110 +|=(% colspan="3" %)Reset to factory default 111 +|**Command Example**|**Function**|**Response** 112 +|AT+FDR|Reset to factory default|Device reset to factory default parameters and show booting info 186 186 187 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:789px" %) 188 -|(% style="background-color:#4f81bd; color:white; width:154px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:175px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:456px" %)**Response** 189 -|(% style="width:154px" %)AT+FDR|(% style="width:175px" %)Reset to factory default|(% style="width:456px" %)((( 190 -Device reset to factory default parameters and show booting info 191 - 192 -LSN50 Device/LoRa ST Module 193 - 114 +{{{LSN50 Device/LoRa ST Module 194 194 Image Version: XX 195 - 196 196 Frequency Band: XX 197 - 198 198 DevEui= XX XX XX XX XX XX XX XX 199 - 200 200 Please set the parameters or reset Device to apply change 201 - )))119 +}}} 202 202 203 -(% style="color:blue" %)**Downlink Command: 0x04** 204 204 205 -((( 122 +Downlink Command: 0x04 123 + 206 206 Format: Command Code (0x04) followed by FE. 207 -))) 208 208 209 -((( 210 -If the downlink payload=**04FE**, Reset Parameters to Factory Default, Keys Reserve. 211 -))) 126 +If the downlink payload=04FE, Reset Parameters to Factory Default, Keys Reserve. 212 212 213 213 214 214 == 4.4 Show Firmware Version == 215 215 216 - 217 217 Feature: Show firmware version. No downlink command yet. 218 218 133 +AT Command: AT+VER 219 219 220 -(% style="color:blue" %)**AT Command: AT+VER ~/~/ **(%%)Image Version and Frequency Band 135 +|=(% colspan="3" %)AT+VER: Image Version and Frequency Band 136 +|**Command Example**|**Function**|**Response** 137 +|AT+VER=?|Show Image version and Frequency Band| 221 221 222 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:542px" %) 223 -|(% style="background-color:#4f81bd; color:white; width:157px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:295px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:86px" %)**Response** 224 -|(% style="width:157px" %)AT+VER=?|(% style="width:295px" %)Show Image version and Frequency Band|(% style="width:86px" %)((( 225 -1.3 EU868 226 - 139 +{{{1.3 EU868 227 227 OK 228 - )))141 +}}} 229 229 230 -(% style="color:blue" %)**Downlink Command: 0x26 (Valid in 006 stack)** 231 231 232 -((( 233 -Format: Command Code (0x26) followed by 1 byte. 234 -))) 144 +Downlink Command: 0x26 (Valid in 006 stack) 235 235 236 -((( 237 -If the downlink payload=**2601, **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( FPort= 5 usually). 238 -))) 146 +Downlink Format: 0x26 239 239 240 -((( 241 - 148 +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 242 242 243 -(% style="color:#037691" %)**xx: Software Type:** 244 -))) 150 +xx: Software Type: 245 245 246 246 * 0x00 01: LGT92 Version 247 247 * 0x00 02: LBT1 248 248 * 0x00 03: LSE01/LDDS75/LDDS20/LSPH01/LLMS01/LSNPK01 249 249 250 -((( 251 - 156 +yy: Frequency Band: 252 252 253 -(% style="color:#037691" %)**yy: Frequency Band:** 254 -))) 255 - 256 256 * 0x01: EU868 257 257 * 0x02: US915 258 258 * 0x03: IN865 ... ... @@ -260,719 +260,505 @@ 260 260 * 0x05: KZ865 261 261 * 0x06: RU864 262 262 * 0x07: AS923 263 -* 0x08: AS923- 2264 -* 0x09: AS923- 3265 -* 0xa0: AS923- 4165 +* 0x08: AS923-1 166 +* 0x09: AS923-2 167 +* 0xa0: AS923-3 266 266 267 -((( 268 - 169 +zz: Subband 269 269 270 -(% style="color:#037691" %)**zz: Subband** 271 -))) 272 - 273 273 firmware version: v1.1.0 ~-~-> 110 274 274 275 275 276 276 == 4.5 Show System Configure == 277 277 278 - 279 279 Feature: Show All configure. No downlink command yet. 280 280 178 +AT Command: AT+CFG 281 281 282 -(% style="color:blue" %)**AT Command: AT+CFG ~/~/ **(%%)Print all configurations 180 +|=(% colspan="3" %)AT+CFG: Print all configurations 181 +|**Command Example**|**Function**|**Response** 182 +|AT+CFG|Show all configures| 283 283 284 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:599.222px" %) 285 -|(% style="background-color:#4f81bd; color:white; width:160px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:154px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:280px" %)**Response** 286 -|(% style="width:160px" %)AT+CFG|(% style="width:154px" %)Show all configures|(% style="width:280px" %)((( 287 -AT+DEUI = XX XX XX XX XX XX XX XX 184 +{{{AT+DEUI = XX XX XX XX XX XX XX XX 288 288 AT+DADDR=XXXXXXXX 289 289 ………. 290 290 AT+RX2WTO=X 291 291 AT+CHS=868100000 292 292 OK 293 - )))190 +}}} 294 294 295 -(% style="display:none" %) (%%) 296 296 297 -== 4.6 Set time synchronization method(The network server must support LoRaWAN v1.0.3) == 298 - 299 - 300 -Feature: Set the system time synchronization. 301 - 302 -(% style="color:blue" %)**AT Command: AT+SYNCMOD** 303 - 304 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:532.778px" %) 305 -|(% style="background-color:#4f81bd; color:white; width:165px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:216px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:148px" %)**Response** 306 -|(% style="width:165px" %)AT+SYNCMOD=?|(% style="width:216px" %)Get the current time synchronization configuration|(% style="width:148px" %)((( 307 -1 (Default) 308 - 309 -((( 310 -OK 311 -))) 312 -))) 313 -|(% style="width:165px" %)AT+SYNCMOD=0|(% style="width:216px" %)Disenable system time synchronization.|(% style="width:148px" %)OK 314 -|(% style="width:165px" %)AT+SYNCMOD=1|(% style="width:216px" %)Enable system time synchronization.|(% style="width:148px" %)OK 315 - 316 -(% style="color:blue" %)**Downlink Command: 0x28 ** 317 - 318 -Format: Command Code (0x28) followed by 1 byte. 319 - 320 -* Example 1: 28 00 ~/~/Equal to AT+SYNCMOD=0 321 -* Example 2: 28 01 ~/~/Equal to AT+SYNCMOD=1 322 - 323 -(% style="color:red" %)**Note: This command takes effect after the node is reset, or after downlink 0x2601(query device status).** 324 - 325 - 326 326 = 5. Keys, IDs and EUIs management = 327 327 328 328 == 5.1 Application EUI == 329 329 330 - 331 331 Feature: Get or Set the Application EUI. 332 332 199 +AT Command: AT+APPEUI 333 333 334 -(% style="color:blue" %)**AT Command: AT+APPEUI** 335 - 336 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:643px" %) 337 -|(% style="background-color:#4f81bd; color:white; width:272px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:182px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:184px" %)**Response** 338 -|(% style="width:272px" %)AT+APPEUI=?|(% style="width:182px" %)Get the Application EUI|(% style="width:184px" %)00 b3 d5 00 00 00 00 00((( 201 +|=(% colspan="3" %)AT+APPEUI 202 +|**Command Example**|**Function**|**Response** 203 +|AT+APPEUI=?|Get the Application EUI|00 b3 d5 00 00 00 00 00((( 339 339 OK 340 340 ))) 341 -| (% style="width:272px" %)AT+APPEUI=00 b3 d5 7e f0 00 4d 34|(% style="width:182px" %)Set the Application EUI|(% style="width:184px" %)OK206 +|AT+APPEUI=00 b3 d5 7e f0 00 4d 34|Set the Application EUI|OK 342 342 343 -(% style="display:none" %) (%%) 344 - 345 345 == 5.2 Application Key == 346 346 347 - 348 348 Feature: Get or Set the Application Key. 349 349 212 +AT Command: AT+APPKEY 350 350 351 -(% style="color:blue" %)**AT Command: AT+APPKEY** 352 - 353 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:976.222px" %) 354 -|(% style="background-color:#4f81bd; color:white; width:441px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:180px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:350px" %)**Response** 355 -|(% 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((( 214 +|=(% colspan="3" %)AT+APPKEY 215 +|**Command Example**|**Function**|**Response** 216 +|AT+APPKEY=?|Get the Application Key|00 35 55 55 22 23 55 53 43 24 23 42 34 35 35 35((( 356 356 OK 357 357 ))) 358 -| (% 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" %)OK219 +|AT+APPKEY=00 35 55 55 22 23 55 53 43 24 23 42 34 35 35 35|Set the Application Key.|OK 359 359 360 -(% style="display:none" %) (%%) 361 - 362 362 == 5.3 Application Session Key == 363 363 364 - 365 365 Feature: Get or Set the Application Session Key. 366 366 225 +AT Command: AT+APPSKEY 367 367 368 -(% style="color:blue" %)**AT Command: AT+APPSKEY** 369 - 370 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:1040.22px" %) 371 -|(% style="background-color:#4f81bd; color:white; width:451px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:231px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:354px" %)**Response** 372 -|(% 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((( 227 +|=(% colspan="3" %)AT+APPSKEY 228 +|**Command Example**|**Function**|**Response** 229 +|AT+APPSKEY=?|Get the Application Session Key|00 7d dc 73 33 d3 eb 9e 14 38 d5 a4 3e 62 5b e2((( 373 373 OK 374 374 ))) 375 -| (% style="width:451px" %)AT+APPSKEY=00 7d dc 73 33 d3 eb 9e 14 38 d5 a4 3e 62 5b e2|(% style="width:231px" %)Set the Application Session Key|(% style="width:354px" %)(While Error in format, return AT_PARAM_ERROR)(((232 +|AT+APPSKEY=00 7d dc 73 33 d3 eb 9e 14 38 d5 a4 3e 62 5b e2|Set the Application Session Key.|(While Error in format, return AT_PARAM_ERROR)((( 376 376 OK 377 377 ))) 378 378 379 -(% style="display:none" %) (%%) 380 - 381 381 == 5.4 Device Address == 382 382 383 - 384 384 Feature: Get or Set the Device Address. 385 385 240 +AT Command: AT+DADDR 386 386 387 -(% style="color:blue" %)**AT Command: AT+DADDR** 388 - 389 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:795.222px" %) 390 -|(% style="background-color:#4f81bd; color:white; width:192px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:241px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:359px" %)**Response** 391 -|(% style="width:192px" %)AT+DADDR=?|(% style="width:241px" %)Get the Application Session Key.|(% style="width:359px" %)(While Error in format, return AT_PARAM_ERROR)((( 242 +|=(% colspan="3" %)AT+DADDR 243 +|**Command Example**|**Function**|**Response** 244 +|AT+DADDR=?|Get the Application Session Key.|(While Error in format, return AT_PARAM_ERROR)((( 392 392 A8 40 41 FF 393 393 394 394 OK 395 395 ))) 396 -| (% style="width:192px" %)AT+DADDR=A8 40 41 FF|(% style="width:241px" %)Set the Application Session Key.|(% style="width:359px" %)OK249 +|AT+DADDR=A8 40 41 FF|Set the Application Session Key.|OK 397 397 398 -(% style="display:none" %) (%%) 399 - 400 400 == 5.5 Device EUI == 401 401 402 - 403 403 Feature: Get or Set the Device EUI. 404 404 255 +AT Command: AT+DEUI 405 405 406 -(% style="color:blue" %)**AT Command: AT+DEUI** 407 - 408 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:1035.22px" %) 409 -|(% style="background-color:#4f81bd; color:white; width:250px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:147px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:634px" %)**Response** 410 -|(% style="width:250px" %)AT+DEUI=?|(% style="width:147px" %)Get the Device EUI.|(% style="width:634px" %)00 44 34 22 33 45 55 55((( 257 +|=(% colspan="3" %)AT+DEUI 258 +|**Command Example**|**Function**|**Response** 259 +|AT+DEUI=?|Get the Device EUI.|00 44 34 22 33 45 55 55((( 411 411 OK 412 412 ))) 413 -| (% style="width:250px" %)AT+DEUI=A8 40 41 FF FF 12 34 56|(% style="width:147px" %)Set the Device EUI.|(% style="width:634px" %)(System will write new value to Device EUI,While Error in format, return AT_PARAM_ERROR)(((262 +|AT+DEUI=A8 40 41 FF FF 12 34 56|Set the Device EUI.|(System will write new value to Device EUI,While Error in format, return AT_PARAM_ERROR)((( 414 414 OK 415 415 ))) 416 416 417 -(% style="display:none" %) (%%) 418 - 419 419 == 5.6 Network ID == 420 420 421 - 422 422 Feature: Get or Set the Network ID.(You can enter this command change only after successful network connection) 423 423 270 +AT Command: AT+NWKID 424 424 425 -(% style="color:blue" %)**AT Command: AT+NWKID** 426 - 427 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:448.222px" %) 428 -|(% style="background-color:#4f81bd; color:white; width:191px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:153px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:101px" %)**Response** 429 -|(% style="width:191px" %)AT+NWKID=?|(% style="width:153px" %)Get the Network ID.|(% style="width:101px" %)a8 40 41 ff((( 272 +|=(% colspan="3" %)AT+NWKID 273 +|**Command Example**|**Function**|**Response** 274 +|AT+NWKID=?|Get the Network ID.|a8 40 41 ff((( 430 430 OK 431 431 ))) 432 -| (% style="width:191px" %)AT+NWKID=A8 40 41 FF|(% style="width:153px" %)Set the Network ID.|(% style="width:101px" %)OK277 +|AT+NWKID=A8 40 41 FF|Set the Network ID.|OK 433 433 434 -(% style="display:none" %) (%%) 435 - 436 436 == 5.7 Network Session Key == 437 437 438 - 439 439 Feature: Get or Set the Network Session Key 440 440 283 +AT Command: AT+NWKSKEY 441 441 442 -(% style="color:blue" %)**AT Command: AT+NWKSKEY** 443 - 444 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:1017.22px" %) 445 -|(% style="background-color:#4f81bd; color:white; width:455px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:215px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:343px" %)**Response** 446 -|(% 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((( 285 +|=(% colspan="3" %)AT+NWKSKEY 286 +|**Command Example**|**Function**|**Response** 287 +|AT+NWKSKEY=?|Get the Network Session Key.|00 4f 19 25 52 ce 97 09 d7 fa 84 71 db 51 02 92((( 447 447 OK 448 448 ))) 449 -| (% style="width:455px" %)AT+NWKSKEY=A8 40 41 FF FF 12 34 56 00 01 02 04 05 06 06 07|(% style="width:215px" %)Set the Network Session Key.|(% style="width:343px" %)OK290 +|AT+NWKSKEY=A8 40 41 FF FF 12 34 56 00 01 02 04 05 06 06 07|Set the Network Session Key.|OK 450 450 451 -(% style="display:none" %) (%%) 452 - 453 453 = 6. Joining and sending date on LoRaWAN network = 454 454 455 455 == 6.1 Confirm Mode == 456 456 457 -=== 6.1.1 AT+CFM command before DR-LWS007 software stack === 458 - 459 - 460 460 Feature: Get or Set the confirmation mode (0-1). 461 461 298 +AT Command: AT+CFM 462 462 463 -(% style="color:blue" %)**AT Command: AT+CFM** 464 - 465 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:710.222px" %) 466 -|(% style="background-color:#4f81bd; color:white; width:155px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:205px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:346px" %)**Response** 467 -|(% style="width:155px" %)AT+CFM=?|(% style="width:205px" %)Get the confirmation mode|(% style="width:346px" %)0((( 300 +|=(% colspan="3" %)AT+CFM 301 +|**Command Example**|**Function**|**Response** 302 +|AT+CFM=?|Get the confirmation mode|0((( 468 468 OK 469 469 ))) 470 -| (% style="width:155px" %)AT+CFM=1|(% style="width:205px" %)Set the confirmation mode|(% style="width:346px" %)OK471 -| (% style="width:155px" %)AT+CFM=2|(% style="width:205px" %)Set the confirmation mode|(% style="width:346px" %)While Error in format, return AT_PARAM_ERROR305 +|AT+CFM=1|Set the confirmation mode|OK 306 +|AT+CFM=2|Set the confirmation mode|While Error in format, return AT_PARAM_ERROR 472 472 473 - (% style="color:blue" %)**Downlink Command: 0x05**308 +Downlink Command: 0x05 474 474 475 -Format: Command Code (0x05) followed by 1byte mode value.310 +Format: Command Code (0x05) followed by 2 bytes mode value. 476 476 477 477 If the downlink payload=0501, it means set end node to use confirm mode, while type code is 05. 478 478 479 -* **Example 1:** Downlink Payload: 0501 ~/~/ Set AT+CFM=1 314 +* Example 1: Downlink Payload: 0501 ~/~/ Set AT+CFM=1 315 +* Example 2: Downlink Payload: 0500 ~/~/ Set AT+CFM=0 480 480 481 -* **Example 2:** Downlink Payload: 0500 ~/~/ Set AT+CFM=0 482 - 483 -(% style="display:none" %) (%%) 484 - 485 -=== 6.1.2 AT+CFM command since DR-LWS007 software stack === 486 - 487 - 488 -(% style="color:blue" %)**AT Command: AT+CFM** 489 - 490 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:462px" %) 491 -|(% style="background-color:#4f81bd; color:white; width:160px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:198px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:100px" %)**Response** 492 -|(% style="width:160px" %)((( 493 -AT+CFM=1,0,0 494 - 495 -value1 496 -)))|(% style="width:198px" %)confirmed uplink|(% style="width:100px" %)((( 497 -1 498 - 499 -OK 500 -))) 501 -|(% style="width:160px" %)((( 502 -AT+CFM=0,?,0 503 - 504 -value2 505 -)))|(% style="width:198px" %)set max retry , range: 0 ~~ 7|(% style="width:100px" %)((( 506 -0~~7 507 - 508 -OK 509 -))) 510 -|(% style="width:160px" %)((( 511 -AT+CFM=0,0,1 512 - 513 -value3 514 -)))|(% style="width:198px" %)uplink fcnt increase by 1 for each retry|(% style="width:100px" %)((( 515 -1 516 - 517 -OK 518 -))) 519 - 520 -(% style="color:blue" %)**Downlink Command: 0x05** 521 - 522 -Format: Command Code (0x05) followed by 3 bytes mode value. 523 - 524 -If the downlink payload=05010101, it means set end node to use confirm mode, while type code is 05. 525 - 526 -* **Example 1:** Downlink Payload: 05010101 ~/~/ Set AT+CFM=1,1,1 527 - 528 -* **Example 2:** Downlink Payload: 05000700 ~/~/ Set AT+CFM=0,7,0 529 - 530 -(% style="display:none" %) (%%) 531 - 532 532 == 6.2 Confirm Status == 533 533 534 - 535 535 Feature: Get confirmation status of the last AT+SEND (0-1). 536 536 321 +AT Command: AT+CFS 537 537 538 -(% style="color:blue" %)**AT Command: AT+CFS** 539 - 540 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:463px" %) 541 -|(% style="background-color:#4f81bd; color:white; width:156px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:193px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:107px" %)**Response** 542 -|(% style="width:156px" %)AT+CFS=?|(% style="width:193px" %)Get confirmation status|(% style="width:107px" %)0((( 323 +|=(% colspan="3" %)AT+CFS 324 +|**Command Example**|**Function**|**Response** 325 +|AT+CFS=?|Get confirmation status|0((( 543 543 OK 544 544 ))) 545 545 546 -(% style="display:none" %) (%%) 547 - 548 548 == 6.3 Join LoRa® Network == 549 549 550 - 551 551 Feature: Join network. 552 552 333 +AT Command: AT+JOIN 553 553 554 -(% style="color:blue" %)**AT Command: AT+JOIN** 555 - 556 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:647.222px" %) 557 -|(% style="background-color:#4f81bd; color:white; width:163px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:147px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:334px" %)**Response** 558 -|(% style="width:163px" %)AT+JOIN ?|(% style="width:147px" %)Get imformation.|(% style="width:334px" %)AT+JOIN: Join network((( 335 +|=(% colspan="3" %)AT+JOIN 336 +|**Command Example**|**Function**|**Response** 337 +|AT+JOIN ?|Get imformation.|AT+JOIN: Join network((( 559 559 OK 339 + 560 560 While Error in format, return AT_BUSY_ERROR 561 561 ))) 562 562 563 -(% style="display:none" %) (%%) 564 - 565 565 == 6.4 LoRa® Network Join Mode == 566 566 567 - 568 568 Feature: Get or Set the Network Join Mode. (0: ABP, 1: OTAA). 569 569 347 +AT Command: AT+NJM 570 570 571 -(% style="color:blue" %)**AT Command: AT+NJM** 572 - 573 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:753.222px" %) 574 -|(% style="background-color:#4f81bd; color:white; width:162px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:227px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:361px" %)**Response** 575 -|(% style="width:162px" %)AT+NJM=?|(% style="width:227px" %)Get the Network Join Mode|(% style="width:361px" %)1((( 349 +|=(% colspan="3" %)AT+NJM 350 +|**Command Example**|**Function**|**Response** 351 +|AT+NJM=?|Get the Network Join Mode|1((( 576 576 OK 577 577 ))) 578 -| (% style="width:162px" %)AT+NJM=0|(% style="width:227px" %)Set the Network Join Mode|(% style="width:361px" %)OK579 -| (% style="width:162px" %)AT+NJM=2|(% style="width:227px" %)Set the Network Join Mode|(% style="width:361px" %)While Error in format, return AT_PARAM_ERROR354 +|AT+NJM=0|Set the Network Join Mode|OK 355 +|AT+NJM=2|Set the Network Join Mode|While Error in format, return AT_PARAM_ERROR 580 580 581 - (% style="color:blue" %)**Downlink Command: 0x20**357 +Downlink Command: 0x20 582 582 583 583 Format: Command Code (0x20) followed by 1 bytes mode value. 584 584 585 585 If the downlink payload=2000, it means set the Network Join Mode, while type code is 20. 586 586 587 -* **Example 1: **Downlink Payload: **2000 ** ~/~/ Set AT+NJM=0 363 +* Example 1: Downlink Payload: 2000 ~/~/ Set AT+NJM=O 364 +* Example 2: Downlink Payload: 2001 ~/~/ Set AT+NJM=1 588 588 589 -* **Example 2:** Downlink Payload: **2001** ~/~/ Set AT+NJM=1 590 - 591 -(% style="display:none" %) (%%) 592 - 593 593 == 6.5 LoRa® Network Join Status == 594 594 595 - 596 596 Feature: LoRa® Network Join Status. 597 597 370 +AT Command: AT+NJS 598 598 599 -(% style="color:blue" %)**AT Command: AT+NJS** 600 - 601 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:435px" %) 602 -|(% style="background-color:#4f81bd; color:white; width:169px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:164px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:97px" %)**Response** 603 -|(% style="width:169px" %)AT+NJS=?|(% style="width:164px" %)Get the join status.|(% style="width:97px" %)0((( 372 +|=(% colspan="3" %)AT+NJS 373 +|**Command Example**|**Function**|**Response** 374 +|AT+NJS=?|Get the join status.|0((( 604 604 OK 605 605 ))) 606 606 607 -(% style="display:none" %) (%%) 608 - 609 609 == 6.6 Print Last Received Data in Raw Format == 610 610 611 - 612 612 Feature: Print Last Received Data in Raw Format<port:data>. 613 613 382 +AT Command: AT+RECV 614 614 615 -(% style="color:blue" %)**AT Command: AT+RECV** 616 - 617 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:543px" %) 618 -|(% style="background-color:#4f81bd; color:white; width:161px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:272px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:104px" %)**Response** 619 -|(% style="width:161px" %)AT+RECV=?|(% style="width:272px" %)print last received data in raw format.|(% style="width:104px" %)0:((( 384 +|=(% colspan="3" %)AT+RECV 385 +|**Command Example**|**Function**|**Response** 386 +|AT+RECV=?|print last received data in raw format.|0:((( 620 620 OK 621 621 ))) 622 622 623 -(% style="display:none" %) (%%) 624 - 625 625 == 6.7 Print Last Received Data in Binary Format == 626 626 627 - 628 628 Feature: Print Last Received Data in Binary Format<port:data>. 629 629 394 +AT Command: AT+RECVB 630 630 631 -(% style="color:blue" %)**AT Command: AT+RECVB** 632 - 633 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:793.222px" %) 634 -|(% style="background-color:#4f81bd; color:white; width:173px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:497px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:120px" %)**Response** 635 -|(% style="width:173px" %)AT+RECVB=?|(% style="width:497px" %)print last received data in binary format (with hexadecimal values).|(% style="width:120px" %)2: 0010((( 396 +|=(% colspan="3" %)AT+RECVB 397 +|**Command Example**|**Function**|**Response** 398 +|AT+RECVB=?|print last received data in binary format (with hexadecimal values).|2: 0010((( 636 636 OK 637 637 ))) 638 638 639 - (%style="display:none"%)(%%)402 +== 6.8 Send Text Data == 640 640 641 -== 6.8 Send Text Data(Note: The format of this command of LA66 is subject to the manual) == 642 - 643 - 644 644 Feature: Send Text Data<port:data>. 645 645 406 +AT Command: AT+SEND 646 646 647 -(% style="color:blue" %)**AT Command: AT+SEND** 648 - 649 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:991.222px" %) 650 -|(% style="background-color:#4f81bd; color:white; width:201px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:340px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:446px" %)**Response** 651 -|(% style="width:201px" %)AT+SEND=12:hello world|(% style="width:340px" %)Send text data along with the application port.|(% style="width:446px" %)OK((( 408 +|=(% colspan="3" %)AT+SEND 409 +|**Command Example**|**Function**|**Response** 410 +|AT+SEND=12:hello world|Send text data along with the application port.|OK((( 652 652 While Error in format, return 412 + 653 653 AT_BUSY_ERROR/AT_BUSY_ERROR/AT_NO_NETWORK_JOINED 414 + 415 + 654 654 ))) 655 655 656 - (%style="display:none"%) (%%)418 +== 6.9 Send Hexadecimal Data == 657 657 658 -== 6.9 Send Hexadecimal Data(Note: The format of this command of LA66 is subject to the manual) == 659 - 660 - 661 661 Feature: Send hexadecimal data along with the application port. 662 662 422 +AT Command: AT+SENDB 663 663 664 -(% style="color:blue" %)**AT Command: AT+SENDB** 424 +|=(% colspan="3" %)AT+SENDB 425 +|**Command Example**|**Function**|**Response** 426 +|AT+SENDB=12:abcdef0123456789|Send hexadecimal data along with the application port.|OK 427 +|AT+SENDB=abcdef0123456789|Send hexadecimal data along with the application port.|While Error in format, return((( 428 +AT_PARAM_ERROR AT_BUSY_ERROR/AT_NO_NETWORK_JOINED 665 665 666 -(% border="1" cellspacing="4" style="width:974px" %) 667 -|(% style="background-color:#4f81bd; color:white; width:257px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:394px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:318px" %)**Response** 668 -|(% style="width:257px" %)AT+SENDB=12:abcdef0123456789|(% style="width:394px" %)Send hexadecimal data along with the application port.|(% style="width:318px" %)OK 669 -|(% style="width:257px" %)AT+SENDB=abcdef0123456789|(% style="width:394px" %)Send hexadecimal data along with the application port.|(% style="width:318px" %)While Error in format, return((( 670 -AT_PARAM_ERROR AT_BUSY_ERROR/AT_NO_NETWORK_JOINED 430 + 671 671 ))) 672 672 673 -(% style="display:none" %) (%%) 674 - 675 675 = 7. LoRaWAN network management = 676 676 677 677 == 7.1 Adaptive Data Rate == 678 678 679 - 680 680 Feature: Get or Set the Adaptive Data Rate setting. (0: off, 1: on). 681 681 682 682 683 - (% style="color:blue" %)**AT Command: AT+ADR**440 +AT Command: AT+ADR 684 684 685 -(% border="1"cellspacing="4" style="width:643px" %)686 -| (% style="background-color:#4f81bd; color:white; width:162px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:266px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:209px" %)**Response**687 -| (% style="width:162px" %)AT+ADR=?|(% style="width:266px" %)Get the Adaptive Data Rate setting.|(% style="width:209px" %)1(((442 +|=(% colspan="3" %)AT+ADR 443 +|**Command Example**|**Function**|**Response** 444 +|AT+ADR=?|Get the Adaptive Data Rate setting.|1((( 688 688 OK 689 689 ))) 690 -| (% style="width:162px" %)AT+ADR=0|(% style="width:266px" %)Set the Adaptive Data Rate setting.|(% style="width:209px" %)OK691 -| (% style="width:162px" %)AT+ADR=2|(% style="width:266px" %)Set the Adaptive Data Rate setting.|(% style="width:209px" %)While Error in format, return(((447 +|AT+ADR=0|Set the Adaptive Data Rate setting.|OK 448 +|AT+ADR=2|Set the Adaptive Data Rate setting.|While Error in format, return((( 692 692 AT_PARAM_ERROR 693 693 ))) 694 694 695 - (% style="color:blue" %)**Downlink Command: 0x22**452 +Downlink Command: 0x22 696 696 454 + 697 697 If the downlink payload=2201, it means setting the adaptive data rate to 1, while type code is 22. 698 698 699 -* **Example 1**: Downlink Payload: **2201** ~/~/ Set AT+ADR=1. 457 +* Example 1: Downlink Payload: 2201 ~/~/ Set AT+ADR=1. 458 +* Example 2: Downlink Payload: 2200FFFF ~/~/ Set AT+ADR=0. 700 700 701 -* **Example 2**: Downlink Payload: **2200FFFF** ~/~/ Set AT+ADR=0. 702 - 703 -(% style="display:none" %) (%%) 704 - 705 705 == 7.2 LoRa® Class == 706 706 707 - 708 708 Feature: Get or Set the Device Class(Currently only support class A, class C). 709 709 464 +AT Command:AT+CLASS 710 710 711 -(% style="color:blue" %)**AT Command: AT+CLASS** 712 - 713 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:428px" %) 714 -|(% style="background-color:#4f81bd; color:white; width:163px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:166px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:94px" %)**Response** 715 -|(% style="width:163px" %)AT+CLASS=?|(% style="width:166px" %)Get the Device Class.|(% style="width:94px" %)A((( 466 +|=(% colspan="3" %)AT+CLASS 467 +|**Command Example**|**Function**|**Response** 468 +|AT+CLASS=?|Get the Device Class.|A((( 716 716 OK 717 717 ))) 718 -| (% style="width:163px" %)AT+CLASS=C|(% style="width:166px" %)Set the Device Class.|(% style="width:94px" %)OK(((471 +|AT+CLASS=C|Set the Device Class.|OK((( 719 719 720 720 ))) 721 721 722 -(% style="display:none" %) 723 - 724 -(% style="color:red" %)**Notice:** 725 - 726 -* Run AT+FDR before running AT+CLASS=C 727 -* After change to Class=C, Before OTAA Join Successfule, the end node will still shows to use CLASS=A for OTAA Joined. It will use CLASS=C after OTAA Join Succeccful. 728 - 729 729 == 7.3 Duty Cycle Setting == 730 730 477 +Feature: Get or Set the ETSI Duty Cycle setting - 0=disable, 1=enable - Only for testing. 731 731 732 - Feature: Get or Set the ETSIDutyCycle setting** : 0**=disable, **1**=enable - Only for testing.479 +AT Command:AT+DCS 733 733 734 - 735 -(% style="color:blue" %)**AT Command: AT+DCS** 736 - 737 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:515.222px" %) 738 -|(% style="background-color:#4f81bd; color:white; width:165px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:239px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:107px" %)**Response** 739 -|(% style="width:165px" %)AT+DCS=?|(% style="width:239px" %)Get the ETSI Duty Cycle setting.|(% style="width:107px" %)1((( 481 +|=(% colspan="3" %)AT+DCS 482 +|**Command Example**|**Function**|**Response** 483 +|AT+DCS=?|Get the ETSI Duty Cycle setting.|1((( 740 740 OK 741 741 ))) 742 -| (% style="width:165px" %)AT+DCS=1|(% style="width:239px" %)Set the ETSI Duty Cycle setting.|(% style="width:107px" %)OK(((486 +|AT+DCS=1|Set the ETSI Duty Cycle setting.|OK((( 743 743 744 744 ))) 745 745 746 -(% style="display:none" %) (%%) 747 - 748 748 == 7.4 Data Rate == 749 749 492 +Feature: Get or Set the Data Rate. (0-7 corresponding to DR_X) . Note: while set Data Rate, please use set Adptive Data Rate, ADR=0 first. otherwise device will response to server's ADR command and change the DR to the setting from server 750 750 751 - Feature:Getor Set the Data Rate. (0-7 correspondingtoDR_X) .494 +AT Command: AT+DR 752 752 753 -(% style="color:red" %) 754 -**Notice:** 755 - 756 -* User need to set Adaptive Data Rate(ADR)=0 first. otherwise device will respond to server's ADR command and change the DR according to server auto-adjustment. 757 - 758 -* Data Rate specifies Spreading Factor. The mapping varies in different frequency bands. User can check this link for detail. [[rp2-1.0.3-lorawan-regional-parameters.pdf>>https://lora-alliance.org/resource_hub/rp2-1-0-3-lorawan-regional-parameters/]] 759 - 760 -(% style="color:blue" %)**AT Command: AT+DR** 761 - 762 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:409px" %) 763 -|(% style="background-color:#4f81bd; color:white; width:156px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:147px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:100px" %)**Response** 764 -|(% style="width:156px" %)AT+DR=?|(% style="width:147px" %)Get the Data Rate.|(% style="width:100px" %)5((( 496 +|=(% colspan="3" %)AT+DR 497 +|**Command Example**|**Function**|**Response** 498 +|AT+DR=?|Get the Data Rate.|5((( 765 765 OK 766 766 ))) 767 -| (% style="width:156px" %)AT+DR=2|(% style="width:147px" %)Set the Data Rate.|(% style="width:100px" %)OK(((501 +|AT+DR=2|Set the Data Rate.|OK((( 768 768 769 769 ))) 770 770 771 - (% style="color:blue" %)**Downlink Command: 0x2200aaFF**505 +Downlink Command: 0x2200aaFF 772 772 507 + 773 773 If the downlink payload=220001FF, it means setting the data rate to 1, while type code is 22 00 aa FF. 774 774 775 -* **Example 1**: Downlink Payload: **220001FF** ~/~/ Set AT+DR=1. 510 +* Example 1: Downlink Payload: 220001FF ~/~/ Set AT+DR=1. 511 +* Example 2: Downlink Payload: 220000FF ~/~/ Set AT+DR=0. 776 776 777 -* **Example 2**: Downlink Payload: **220000FF** ~/~/ Set AT+DR=0. 778 - 779 -(% style="display:none" %) (%%) 780 - 781 781 == 7.5 Frame Counter Downlink == 782 782 783 - 784 784 Feature: Get or Set the Frame Counter Downlink. 785 785 517 +AT Command:AT+FCD 786 786 787 -(% style="color:blue" %)**AT Command: AT+FCD** 788 - 789 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:693.222px" %) 790 -|(% style="background-color:#4f81bd; color:white; width:162px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:258px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:269px" %)**Response** 791 -|(% style="width:162px" %)AT+FCD=?|(% style="width:258px" %)Get the Frame Counter Downlink.|(% style="width:269px" %)0((( 519 +|=(% colspan="3" %)AT+FCD 520 +|**Command Example**|**Function**|**Response** 521 +|AT+FCD=?|Get the Frame Counter Downlink.|0((( 792 792 OK 793 793 ))) 794 -| (% style="width:162px" %)AT+FCD=10|(% style="width:258px" %)Set the Frame Counter Downlink.|(% style="width:269px" %)(System will write new value to FCD)(((524 +|AT+FCD=10|Set the Frame Counter Downlink.|(System will write new value to FCD)((( 795 795 OK 526 + 527 + 796 796 ))) 797 797 798 -(% style="display:none" %) (%%) 799 - 800 800 == 7.6 Frame Counter Uplink == 801 801 802 802 Feature: Get or Set the Frame Counter Uplink. 803 803 534 +AT Command:AT+FCU 804 804 805 -(% style="color:blue" %)**AT Command: AT+FCU** 806 - 807 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:534.222px" %) 808 -|(% style="background-color:#4f81bd; color:white; width:177px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:239px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:113px" %)**Response** 809 -|(% style="width:177px" %)AT+FCU=?|(% style="width:239px" %)Get the Frame Counter Uplink.|(% style="width:113px" %)0((( 536 +|=(% colspan="3" %)AT+FCU 537 +|**Command Example**|**Function**|**Response** 538 +|AT+FCU=?|Get the Frame Counter Uplink.|0((( 810 810 OK 811 811 ))) 812 -| (% style="width:177px" %)AT+FCU=10|(% style="width:239px" %)Set the Frame Counter Uplink.|(% style="width:113px" %)OK(((541 +|AT+FCU=10|Set the Frame Counter Uplink.|OK((( 813 813 814 814 ))) 815 815 816 -(% style="display:none" %) (%%) 817 - 818 818 == 7.7 Join Accept Delay1 == 819 819 820 - 821 821 Feature: Get or Set the Join Accept Delay between the end of the Tx and the Join Rx Window 1 in ms. 822 822 549 +AT Command:AT+JN1DL 823 823 824 -(% style="color:blue" %)**AT Command: AT+JN1DL** 825 - 826 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:537.222px" %) 827 -|(% style="background-color:#4f81bd; color:white; width:164px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:229px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:140px" %)**Response** 828 -|(% style="width:164px" %)AT+JN1DL=?|(% style="width:229px" %)Get the Join Accept Delay.|(% style="width:140px" %)5000((( 551 +|=(% colspan="3" %)AT+JN1DL 552 +|**Command Example**|**Function**|**Response** 553 +|AT+JN1DL=?|Get the Join Accept Delay.|5000((( 829 829 OK 830 830 ))) 831 -| (% style="width:164px" %)AT+JN1DL=10000|(% style="width:229px" %)Set the Join Accept Delay.|(% style="width:140px" %)OK(((556 +|AT+JN1DL=10000|Set the Join Accept Delay.|OK((( 832 832 833 833 ))) 834 834 835 -(% style="display:none" %) (%%) 836 - 837 837 == 7.8 Join Accept Delay2 == 838 838 839 - 840 840 Feature: Get or Set the Join Accept Delay between the end of the Tx and the Join Rx Window 2 in ms. 841 841 564 +AT Command:AT+JN2DL 842 842 843 -(% style="color:blue" %)**AT Command: AT+JN2DL** 844 - 845 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:538.222px" %) 846 -|(% style="background-color:#4f81bd; color:white; width:160px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:228px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:146px" %)**Response** 847 -|(% style="width:160px" %)AT+JN2DL=?|(% style="width:228px" %)Get the Join Accept Delay.|(% style="width:146px" %)6000((( 566 +|=(% colspan="3" %)AT+JN2DL 567 +|**Command Example**|**Function**|**Response** 568 +|AT+JN2DL=?|Get the Join Accept Delay.|6000((( 848 848 OK 849 849 ))) 850 -| (% style="width:160px" %)AT+JN2DL=20000|(% style="width:228px" %)Set the Join Accept Delay.|(% style="width:146px" %)OK(((571 +|AT+JN2DL=20000|Set the Join Accept Delay.|OK((( 851 851 852 852 ))) 853 853 854 -(% style="display:none" %) (%%) 855 - 856 856 == 7.9 Public Network Mode == 857 857 577 +Feature: Get or Set the public network mode. (0: off, 1: on) 858 858 859 - Feature:Getor Set the public networkmode. (0:off, 1: on).Aublic LoRaWANnetwork use 0x34 as syncword. Default Settings; PNM=1579 +AT Command:AT+PNM 860 860 861 -(% style="color:red" %)**Notice: If user build their own LoRaWAN server but still use syncword=0x34, this is still considered a public LoRaWAN network.** 862 - 863 - 864 -(% style="color:blue" %)**AT Command: AT+PNM** 865 - 866 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:667.222px" %) 867 -|(% style="background-color:#4f81bd; color:white; width:166px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:225px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:272px" %)**Response** 868 -|(% style="width:166px" %)AT+PNM=?|(% style="width:225px" %)Get the public network mode.|(% style="width:272px" %)1((( 581 +|=(% colspan="3" %)AT+PNM 582 +|**Command Example**|**Function**|**Response** 583 +|AT+PNM=?|Get the public network mode.|1((( 869 869 OK 870 870 ))) 871 -|(% style="width:166px" %)AT+PNM=1|(% style="width:225px" %)((( 872 -Set the public network mode. 873 - 874 -Set syncword=0x34 875 -)))|(% style="width:272px" %)(System will write new value to PNM)((( 586 +|AT+PNM=1|Set the public network mode.|(System will write new value to PNM)((( 876 876 OK 877 877 878 878 879 879 ))) 880 -|(% style="width:166px" %)AT+PNM=0|(% style="width:225px" %)Set to use private network autoset syncword=0x12|(% style="width:272px" %) 881 881 882 -(% style="display:none" %) (%%) 883 - 884 884 == 7.10 Receive Delay1 == 885 885 886 - 887 887 Feature: Get or Set the delay between the end of the Tx and the Rx Window 1 in ms 888 888 596 +AT Command:AT+RX1DL 889 889 890 -(% style="color:blue" %)**AT Command: AT+RX1DL** 891 - 892 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:408.222px" %) 893 -|(% style="background-color:#4f81bd; color:white; width:155px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:128px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:122px" %)**Response** 894 -|(% style="width:155px" %)AT+RX1DL=?|(% style="width:128px" %)Get the delay.|(% style="width:122px" %)1000((( 598 +|=(% colspan="3" %)AT+RX1DL 599 +|**Command Example**|**Function**|**Response** 600 +|AT+RX1DL=?|Get the delay.|1000((( 895 895 OK 896 896 ))) 897 -| (% style="width:155px" %)AT+RX1DL=1500|(% style="width:128px" %)Set the delay.|(% style="width:122px" %)OK(((603 +|AT+RX1DL=1500|Set the delay.|OK((( 898 898 899 899 ))) 900 900 901 - (%style="display:none"%) (%%)607 +== 7.11Receive Delay2 == 902 902 903 -== 7.11 Receive Delay2 == 904 - 905 - 906 906 Feature: Get or Set the delay between the end of the Tx and the Rx Window 2 in ms 907 907 611 +AT Command:AT+RX2DL 908 908 909 -(% style="color:blue" %)**AT Command: AT+RX2DL** 910 - 911 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:481.222px" %) 912 -|(% style="background-color:#4f81bd; color:white; width:175px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:152px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:150px" %)**Response** 913 -|(% style="width:175px" %)AT+RX2DL=?|(% style="width:152px" %)Get the delay.|(% style="width:150px" %)2000((( 613 +|=(% colspan="3" %)AT+RX2DL 614 +|**Command Example**|**Function**|**Response** 615 +|AT+RX2DL=?|Get the delay.|2000((( 914 914 OK 915 915 ))) 916 -| (% style="width:175px" %)AT+RX2DL=2500|(% style="width:152px" %)Set the delay.|(% style="width:150px" %)OK(((618 +|AT+RX2DL=2500|Set the delay.|OK((( 917 917 918 918 ))) 919 919 920 -(% style="display:none" %) (%%) 921 - 922 922 == 7.12 Rx2 Window Data Rate == 923 923 924 - 925 925 Feature: Get or Set the Rx2 window data rate (0-7 corresponding to DR_X) 926 926 626 +AT Command:AT+RX2DR 927 927 928 -(% style="color:blue" %)**AT Command: AT+RX2DR** 929 - 930 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:525.222px" %) 931 -|(% style="background-color:#4f81bd; color:white; width:160px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:232px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:130px" %)**Response** 932 -|(% style="width:160px" %)AT+RX2DR=?|(% style="width:232px" %)Get the Rx2 window data rate.|(% style="width:130px" %)2((( 628 +|=(% colspan="3" %)AT+RX2DR 629 +|**Command Example**|**Function**|**Response** 630 +|AT+RX2DR=?|Get the Rx2 window data rate.|2((( 933 933 OK 934 934 ))) 935 -| (% style="width:160px" %)AT+RX2DR=6|(% style="width:232px" %)Set the Rx2 window data rate.|(% style="width:130px" %)OK(((633 +|AT+RX2DR=6|Set the Rx2 window data rate.|OK((( 936 936 937 937 ))) 938 938 939 -(% style="display:none" %) (%%) 940 - 941 941 == 7.13 Rx2 Window Frequency == 942 942 943 - 944 944 Feature: Get or Set the Rx2 window frequency 945 945 641 +AT Command:AT+RX2FQ 946 946 947 -(% style="color:blue" %)**AT Command: AT+RX2FQ** 948 - 949 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:587.222px" %) 950 -|(% style="background-color:#4f81bd; color:white; width:183px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:240px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:160px" %)**Response** 951 -|(% style="width:183px" %)AT+RX2FQ=?|(% style="width:240px" %)Get the Rx2 window frequency.|(% style="width:160px" %)434665000((( 643 +|=(% colspan="3" %)AT+RX2FQ 644 +|**Command Example**|**Function**|**Response** 645 +|AT+RX2FQ=?|Get the Rx2 window frequency.|434665000((( 952 952 OK 953 953 ))) 954 -| (% style="width:183px" %)AT+RX2FQ=434665000|(% style="width:240px" %)Set the Rx2 window frequency.|(% style="width:160px" %)OK(((648 +|AT+RX2FQ=434665000|Set the Rx2 window frequency.|OK((( 955 955 956 956 ))) 957 957 958 -(% style="display:none" %) (%%) 959 - 960 960 == 7.14 Transmit Power == 961 961 654 +Feature: Get or Set the Transmit Power(0-5, MAX:0, MIN:5, according to LoRaWAN Spec, or 40=10dB, 41 = 11dB, …, 50 = 20dB which is out of LoRaWAN spec. ) 962 962 963 - Feature: Get or Set theTransmitPower(0-5, MAX:0, MIN:5, according to LoRaWAN Spec, or 40=10dBm, 41 = 11dBm, …, 50 = 20dBm which is out of LoRaWAN spec. )656 +AT Command:AT+TXP 964 964 965 -(% style="color:red" %)**Notice: Transmit Power might be changed by ADR from LoRaWAN server. So manually change TXP also remember to set AT+ADR=0 in sensor** 966 - 967 - 968 -(% style="color:blue" %)**AT Command: AT+TXP** 969 - 970 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:465.222px" %) 971 -|(% style="background-color:#4f81bd; color:white; width:161px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:189px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:112px" %)**Response** 972 -|(% style="width:161px" %)AT+TXP=?|(% style="width:189px" %)Get the Transmit Power.|(% style="width:112px" %)0((( 658 +|=(% colspan="3" %)AT+TXP 659 +|**Command Example**|**Function**|**Response** 660 +|AT+TXP=?|Get the Transmit Power.|0((( 973 973 OK 974 974 ))) 975 -| (% style="width:161px" %)AT+TXP=1|(% style="width:189px" %)Set the Transmit Power.|(% style="width:112px" %)OK(((663 +|AT+TXP=1|Set the Transmit Power.|OK((( 976 976 977 977 ))) 978 978 ... ... @@ -980,431 +980,195 @@ 980 980 981 981 If the downlink payload=22000100, it means setting the TXP to 0. 982 982 983 -* **Example 1**: Downlink Payload: **22000102** ~/~/ Set AT+TXP=2. 671 +* Example 1: Downlink Payload: 22000102 ~/~/ Set AT+TXP=2. 672 +* Example 2: Downlink Payload: 220000FF ~/~/ Set AT+TXP=0. 984 984 985 -* **Example 2**: Downlink Payload: **22000000** ~/~/ Set AT+TXP=0. 986 - 987 -(% style="display:none" %) (%%) 988 - 989 989 == 7.15 RSSI of the Last Received Packet == 990 990 991 - 992 992 Feature: Get or Set the Rx2 window frequency 993 993 678 +AT Command:AT+RSSI 994 994 995 -(% style="color:blue" %)**AT Command:AT+RSSI** 996 - 997 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:557.222px" %) 998 -|(% style="background-color:#4f81bd; color:white; width:164px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:289px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:100px" %)**Response** 999 -|(% style="width:164px" %)AT+RSSI=?|(% style="width:289px" %)Get the RSSI of the last received packet.|(% style="width:100px" %)0((( 680 +|=(% colspan="3" %)AT+RSSI 681 +|**Command Example**|**Function**|**Response** 682 +|AT+RSSI=?|Get the RSSI of the last received packet.|0((( 1000 1000 OK 1001 1001 ))) 1002 1002 1003 -(% style="display:none" %) (%%) 1004 - 1005 1005 == 7.16 SNR of the Last Received Packet == 1006 1006 1007 - 1008 1008 Feature: Get the SNR of the last received packet 1009 1009 690 +AT Command:AT+SNR 1010 1010 1011 -(% style="color:blue" %)**AT Command: AT+SNR** 1012 - 1013 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:571.222px" %) 1014 -|(% style="background-color:#4f81bd; color:white; width:164px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:290px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:113px" %)**Response** 1015 -|(% style="width:164px" %)AT+SNR=?|(% style="width:290px" %)Get the RSSI of the last received packet.|(% style="width:113px" %)0((( 692 +|=(% colspan="3" %)AT+SNR 693 +|**Command Example**|**Function**|**Response** 694 +|AT+SNR=?|Get the RSSI of the last received packet.|0((( 1016 1016 OK 1017 1017 ))) 1018 1018 1019 -(% style="display:none" %) (%%) 1020 - 1021 1021 == 7.17 Application Port == 1022 1022 1023 - 1024 1024 Feature: Get or set the application port. 1025 1025 702 +AT Command: AT+PORT 1026 1026 1027 -(% style="color:blue" %)**AT Command: AT+PORT** 1028 - 1029 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:459px" %) 1030 -|(% style="background-color:#4f81bd; color:white; width:157px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:193px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:104px" %)**Response** 1031 -|(% style="width:157px" %)AT+PORT=?|(% style="width:193px" %)Get the application port|(% style="width:104px" %)21((( 704 +|=(% colspan="3" %)AT+PORT 705 +|**Command Example**|**Function**|**Response** 706 +|AT+PORT=?|Get the application port|21((( 1032 1032 OK 1033 1033 ))) 1034 -| (% style="width:157px" %)AT+PORT=21|(% style="width:193px" %)Set the application port|(% style="width:104px" %)OK709 +|AT+PORT=21|Set the application port|OK 1035 1035 1036 - (% style="color:blue" %)**Downlink Command: 0x23**711 +Downlink Command: 0x23 1037 1037 1038 1038 Format: Command Code (0x23) followed by 1 bytes port value. 1039 1039 1040 1040 If the downlink payload=2301, it means set the application port to 1, while type code is 23. 1041 1041 1042 -* **Example 1**: Downlink Payload: **2301** ~/~/ set the application port to 1 717 +* Example 1: Downlink Payload: 2301 ~/~/ set the application port to 1 718 +* Example 2: Downlink Payload: 2305 ~/~/ set the application port to 5 1043 1043 1044 -* **Example 2**: Downlink Payload:** 2305** ~/~/ set the application port to 5 1045 - 1046 -(% style="display:none" %) (%%) 1047 - 1048 1048 == 7.18 Single Channel Mode == 1049 1049 1050 - 1051 1051 Feature:Get or Set Frequency (Unit: Hz) for Single Channel Mode. 1052 1052 724 +AT Command: AT+CHS 1053 1053 1054 -(% style="color:blue" %)**AT Command: AT+CHS** 1055 - 1056 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:584px" %) 1057 -|(% style="background-color:#4f81bd; color:white; width:182px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:295px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:101px" %)**Response** 1058 -|(% style="width:182px" %)AT+CHS=?|(% style="width:295px" %)Get Frequency for Single Channel Mode|(% style="width:101px" %)0((( 726 +|=(% colspan="3" %)AT+CHS 727 +|**Command Example**|**Function**|**Response** 728 +|AT+CHS=?|Get Frequency for Single Channel Mode|0((( 1059 1059 OK 1060 1060 ))) 1061 -| (% style="width:182px" %)AT+CHS=868100000|(% style="width:295px" %)Set Frequency for Single Channel Mode|(% style="width:101px" %)OK731 +|AT+CHS=868100000|Set Frequency for Single Channel Mode|OK 1062 1062 1063 -(% style="display:none" %) (%%) 1064 - 1065 1065 == 7.19 Eight Channel Mode == 1066 1066 1067 - 1068 1068 Feature: Get or Set eight channels mode,Only for US915,AU915,CN470. 1069 1069 737 +AT Command: AT+CHE 1070 1070 1071 -(% style="color:blue" %)**AT Command: AT+CHE** 1072 - 1073 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:710.222px" %) 1074 -|(% style="background-color:#4f81bd; color:white; width:160px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:198px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:349px" %)**Response** 1075 -|(% style="width:160px" %)AT+CHE=?|(% style="width:198px" %)Get eight channels mode|(% style="width:349px" %)1((( 739 +|=(% colspan="3" %)AT+CHE 740 +|**Command Example**|**Function**|**Response** 741 +|AT+CHE=?|Get eight channels mode|1((( 1076 1076 902.3 902.5 902.7 902.9 903.1 903.3 903.5 903.7 1077 1077 1078 1078 OK 1079 1079 ))) 1080 -| (% style="width:160px" %)AT+CHE=1|(% style="width:198px" %)Set eight channels mode|(% style="width:349px" %)OK746 +|AT+CHE=1|Set eight channels mode|OK 1081 1081 1082 - (% style="color:blue" %)**Downlink Command: 0x24(LHT65,LHT65N Downlink Command:0x07)**748 +Downlink Command: 0x24 1083 1083 1084 1084 Format: Command Code (0x24) followed by 1 bytes channel value. 1085 1085 1086 1086 If the downlink payload=2401, it means set channel mode to 1, while type code is 24. 1087 1087 1088 -* **Example 1**: Downlink Payload: 2401 ~/~/ set channel mode to 1 754 +* Example 1: Downlink Payload: 2401 ~/~/ set channel mode to 1 755 +* Example 2: Downlink Payload: 2405 ~/~/ set channel mode to 5 1089 1089 1090 -* **Example 2**: Downlink Payload: 2405 ~/~/ set channel mode to 5 1091 - 1092 -(% style="display:none" %) (%%) 1093 - 1094 1094 == 7.20 Get or Set RXwindows1 timeout == 1095 1095 759 +Feature:Get or Set the number of symbols to detect and timeout from RXwindow1(0 to 255). 1096 1096 1097 - Feature:Getor Set the number of symbols to detectandtimeout fromRXwindow1(0 to 255).761 +AT Command: AT+RX1WTO 1098 1098 1099 - 1100 -(% style="color:blue" %)**AT Command: AT+RX1WTO** 1101 - 1102 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:460.222px" %) 1103 -|(% style="background-color:#4f81bd; color:white; width:163px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:201px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:93px" %)**Response** 1104 -|(% style="width:163px" %)AT+RX1WTO=?|(% style="width:201px" %)Get RXwindows1 timeout|(% style="width:93px" %)14((( 763 +|=(% colspan="3" %)AT+ RX1WTO 764 +|**Command Example**|**Function**|**Response** 765 +|AT+RX1WTO=?|Get RXwindows1 timeout|14((( 1105 1105 OK 1106 1106 ))) 1107 -| (% style="width:163px" %)AT+RX1WTO=60|(% style="width:201px" %)Set RXwindows1 timeout|(% style="width:93px" %)OK768 +|AT+RX1WTO=60|Set RXwindows1 timeout|OK 1108 1108 1109 - (%style="display:none"%)(%%)770 +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. 1110 1110 1111 -((( 1112 -(% style="color:blue" %)**AT+RX1WTO**(%%) 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. 1113 -))) 772 +[[~[~[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]] 1114 1114 1115 -[[image:image-20220526162535-1.png]] 1116 - 1117 -((( 1118 1118 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. 1119 -))) 1120 1120 1121 -**Example:** 1122 -~1. Set AT+RX1WTO=0, AT+RX1DL=5000, the window opening time is: 53.699ms 1123 - 1124 -[[image:image-20240906095336-1.png||height="404" width="759"]] 1125 - 1126 - 1127 -2. Set AT+RX1WTO=128, AT+RX1DL=5000, the window opening time is: 149.644ms 1128 - 1129 -[[image:image-20240906095433-2.png||height="403" width="756"]] 1130 - 1131 - 1132 -3. Set AT+RX1WTO=128, AT+RX1DL=5000, the window opening time is: 298.221ms 1133 - 1134 -[[image:image-20240906095527-3.png||height="400" width="749"]] 1135 - 1136 - 1137 1137 == 7.21 Get or Set RXwindows2 timeout == 1138 1138 778 +Feature:Get or Set the number of symbols to detect and timeout from RXwindow2(0 to 255). 1139 1139 1140 - Feature:Getor Set the number of symbols to detectandtimeout fromRXwindow2(0 to 255).780 +AT Command: AT+RX2WTO 1141 1141 1142 - 1143 -(% style="color:blue" %)**AT Command: AT+RX2WTO** 1144 - 1145 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:448px" %) 1146 -|(% style="background-color:#4f81bd; color:white; width:162px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:192px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:90px" %)**Response** 1147 -|(% style="width:162px" %)AT+RX2WTO=?|(% style="width:192px" %)Get RXwindows2 timeout|(% style="width:90px" %)7((( 782 +|=(% colspan="3" %)AT+ RX2WTO 783 +|**Command Example**|**Function**|**Response** 784 +|AT+RX2WTO=?|Get RXwindows2 timeout|7((( 1148 1148 OK 1149 1149 ))) 1150 -| (% style="width:162px" %)AT+RX2WTO=20|(% style="width:192px" %)Set RXwindows2 timeout|(% style="width:90px" %)OK787 +|AT+RX2WTO=20|Set RXwindows2 timeout|OK 1151 1151 1152 -**Example:** 1153 -~1. Set AT+RX2WTO=0, AT+RX2DL=6000, the window opening time is: 48.435ms 1154 - 1155 -(% style="display:none" %) (%%) [[image:image-20240906095619-4.png||height="375" width="703"]] 1156 - 1157 - 1158 -2. Set AT+RX2WTO=128, AT+RX2DL=6000, the window opening time is: 3011ms 1159 - 1160 -[[image:image-20240906095726-5.png||height="381" width="714"]] 1161 - 1162 - 1163 -3. Set AT+RX2WTO=255, AT+RX2DL=6000, the window opening time is: 3009ms 1164 - 1165 -[[image:image-20240906095811-6.png||height="380" width="711"]] 1166 - 1167 - 1168 1168 == 7.22 Setting up uplinkdwelltime (as923, au915) == 1169 1169 1170 - 1171 1171 Feature: Get or Set uplinkdwelltime 1172 1172 793 +AT Command: AT+DWELLT 1173 1173 1174 -(% style="color:blue" %)**AT Command: AT+DWELLT** 1175 - 1176 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:419px" %) 1177 -|(% style="background-color:#4f81bd; color:white; width:162px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:157px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:95px" %)**Response** 1178 -|(% style="width:162px" %)AT+DWELLT=?|(% style="width:157px" %)Get uplinkdwelltime|(% style="width:95px" %)1((( 795 +|=(% colspan="3" %)AT+DWELLT 796 +|**Command Example**|**Function**|**Response** 797 +|AT+DWELLT=?|Get uplinkdwelltime|1((( 1179 1179 OK 1180 1180 ))) 1181 -| (% style="width:162px" %)AT+DWELLT=0|(% style="width:157px" %)Set uplinkdwelltime|(% style="width:95px" %)OK800 +|AT+DWELLT=0|Set uplinkdwelltime|OK 1182 1182 1183 - (% style="color:blue" %)**Downlink Command: 0x25**802 +Downlink Command: 0x25 1184 1184 1185 1185 Format: Command Code (0x25) followed by 1 bytes state value. 1186 1186 1187 1187 If the downlink payload=2501, it means set uplinkdwelltime to 1, while type code is 25. 1188 1188 1189 -* **Example 1**: Downlink Payload: **2501** ~/~/ set uplinkdwelltime to 1 808 +* Example 1: Downlink Payload: 2501 ~/~/ set uplinkdwelltime to 1 809 +* Example 2: Downlink Payload: 2500 ~/~/ set uplinkdwelltime to 0 1190 1190 1191 -* **Example 2**: Downlink Payload: **2500** ~/~/ set uplinkdwelltime to 0 1192 - 1193 -(% style="display:none" %) (%%) 1194 - 1195 1195 == 7.23 Set Packet Receiving Response Level == 1196 1196 1197 - 1198 1198 Feature: Get or Set packet receiving response level. This feature is used to set compatible with different LoRaWAN servers. If RPL doesn;t match , user will see strange message in the server portal. 1199 1199 815 +RPL value: 1200 1200 1201 -(% style="color:blue" %)**RPL value:** 817 +* AT+RPL=0: Device won't immediately reply any downlink commands from platform. 818 +* AT+RPL=1: Device will immediately reply message to Unconfirmed Data Down. Payload is 0x00. 819 +* AT+RPL=2: Device will immediately reply message to Confirmed Data Down. Payload is 0x00 and requied response header for this command. 820 +* AT+RPL=3: Device will immediately reply message to MAC Command. Payload is 0x00 and requied response header for this command. 821 +* 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. 1202 1202 1203 - * **AT+RPL=0:** Devicewon't immediatelyreply any downlink commandsfrom platform.823 +Case Analyes: 1204 1204 1205 -* **AT+RPL=1:** Device will immediately reply message to Unconfirmed Data Down. Payload is 0x00. 1206 - 1207 -* **AT+RPL=2:** Device will immediately reply message to Confirmed Data Down. Payload is 0x00 and requied response header for this command. 1208 - 1209 -* **AT+RPL=3:** Device will immediately reply message to MAC Command. Payload is 0x00 and requied response header for this command. 1210 - 1211 -* **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. 1212 - 1213 -(% style="color:blue" %)**Case Analyes:** 1214 - 1215 1215 * For Class A devices, AT+RPL=0 is ok. that is defaut settings in software. 1216 - 1217 1217 * For Class C devices used in ChirpStack, need to set AT+RPL=4 because Chirpstack require immedietely reply message to MAC Command. 1218 - 1219 1219 * 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. 1220 1220 1221 - (% style="color:blue" %)**AT Command: AT+RPL**829 +AT Command: AT+RPL 1222 1222 1223 -(% border="1"cellspacing="4" style="background-color:#f2f2f2; width:536.222px" %)1224 -| (% style="background-color:#4f81bd; color:white; width:160px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:263px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:109px" %)**Response**1225 -| (% style="width:160px" %)AT+RPL=?|(% style="width:263px" %)Get packet receiving response level|(% style="width:109px" %)1(((831 +|=(% colspan="3" %)AT+RPL 832 +|**Command Example**|**Function**|**Response** 833 +|AT+RPL=?|Get packet receiving response level|1((( 1226 1226 OK 1227 1227 ))) 1228 -| (% style="width:160px" %)AT+RPL=0|(% style="width:263px" %)Set packet receiving response level|(% style="width:109px" %)OK836 +|AT+RPL=0|Set packet receiving response level|OK 1229 1229 1230 - (% style="color:blue" %)**Downlink Command: 0x21**838 +Downlink Command: 0x21 1231 1231 1232 1232 Format: Command Code (0x21) followed by 1 bytes level value. 1233 1233 1234 1234 If the downlink payload=2101, it means set packet receiving response level to 1, while type code is 21. 1235 1235 1236 -* **Example 1**: Downlink Payload: **2101** ~/~/ set packet receiving response level to 1 844 +* Example 1: Downlink Payload: 2101 ~/~/ set packet receiving response level to 1 845 +* Example 2: Downlink Payload: 2102 ~/~/ set packet receiving response level to 2 1237 1237 1238 -* **Example 2**: Downlink Payload: **2102** ~/~/ set packet receiving response level to 2 1239 - 1240 -(% style="display:none" %) (%%) 1241 - 1242 -== 7.24 Controls NBTrans in unconfirmed uplink mode(LWS007 NBTrans:Set retransmission packets) == 1243 - 1244 - 1245 -(% style="color:blue" %)**AT Command: AT+SETMAXNBTRANS ** 1246 - 1247 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:589px" %) 1248 -|(% style="background-color:#4f81bd; color:white; width:227px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:300px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:87px" %)**Response** 1249 -|(% style="width:227px" %)AT+SETMAXNBTRANS=1,0|(% style="width:300px" %)Value1: set the maximum NBTrans.|(% style="width:87px" %)1((( 1250 -OK 1251 -))) 1252 -|(% style="width:227px" %)AT+SETMAXNBTRANS=?,1|(% style="width:300px" %)((( 1253 -value2: 0: uplink fcnt doesn't change for each NBTrans; 1254 - 1255 -1: uplink fcnt increase by 1 for each NBTrans. 1256 -)))|(% style="width:87px" %)((( 1257 -1 1258 - 1259 -OK 1260 -))) 1261 - 1262 -(% style="color:blue" %)**Downlink Command: 0x33** 1263 - 1264 -Format: Command Code (0x33) followed by 2 bytes mode value. 1265 - 1266 -If the downlink payload=330100, it means set end node to use confirm mode, while type code is 33. 1267 - 1268 -* Example 1: Downlink Payload: 330100 ~/~/ Set AT+SETMAXNBTRANS=1,0 1269 - 1270 -* Example 2: Downlink Payload: 330201 ~/~/ Set AT+SETMAXNBTRANS=2,1 1271 - 1272 -(% style="display:none" %) (%%) 1273 - 1274 -== 7.25 Device offline rejoining (LWS007) == 1275 - 1276 - 1277 -(% style="color:blue" %)**AT Command: AT+DDETECT** 1278 - 1279 -AT+DDETECT=<Flag>,<ACK_Timout_1>,<ACK_Timout_2> (Default Value: AT+DDETECT=1,1440,2880) 1280 - 1281 -* ACK_Timout_1: Unit: min 1282 - 1283 -* ACK_Timout_2: Unit: min 1284 - 1285 -(% border="1" style="background-color:#f2f2f2; width:562px" %) 1286 -|(% style="background-color:#4f81bd; color:white; width:160px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:272px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:89px" %)**Response** 1287 -|(% style="width:160px" %)((( 1288 -AT+DDETECT=1,1440,2880 1289 - 1290 -value1 1291 -)))|(% style="width:272px" %)Enable online detect|(% style="width:89px" %)((( 1292 -1 1293 - 1294 -OK 1295 -))) 1296 -|(% style="width:160px" %)((( 1297 -AT+DDETECT=1,?,2880 1298 - 1299 -value2 1300 -)))|(% style="width:272px" %)Online detection packet sending time|(% style="width:89px" %)((( 1301 - 1302 - 1303 -OK 1304 -))) 1305 -|(% style="width:160px" %)((( 1306 -AT+DDETECT=1,1440,? 1307 - 1308 -value3 1309 -)))|(% style="width:272px" %)Process rejoin|(% style="width:89px" %)((( 1310 - 1311 - 1312 -OK 1313 -))) 1314 - 1315 -(% style="color:blue" %)**Downlink Command: 0x32** 1316 - 1317 -Format: Command Code (0x32) followed by 2 bytes mode value. 1318 - 1319 -If the downlink payload=320105A00B40, it means set end node to use confirm mode, while type code is 32. 1320 - 1321 -* **Example 1:** Downlink Payload: 320105A00B40 ~/~/ Set AT+DDETECT=1,1440,2880 1322 - 1323 -* 1324 -** 0x01** : Flag** 1325 - 1326 - **0x05A0 **: ACK_Timout_1 : 1440minutes (24 hours) 1327 - 1328 - **0x0B40 **: ACK_Timout_2 : 2880minutes (48 hours) 1329 - 1330 -* **Explain**: Enable Online Detect, if end node doesn't receive any downlink within ACK_Timout_1( 1440 minutes or 24 hours). End node will use confirmed uplink to send packets during ACK_Timout_1 (the 24th hour) to ACK_Timout_2 ( the 48th hour). If from the 24th to 48th hour, end node got an downlink from server, it will switch back to unconfirmed uplink. end node will restart ACK_Timout_1. If from the 24th to 48th hour, end node still not got any downlink, means device doesn't get ACK from server within last 48 hours. Device will process rejoin, rejoin request interval is AT+RJTDC period. For AU915/ US915, device will use the sub-band used for last join. 1331 - 1332 -(% style="display:none" %) (%%) 1333 - 1334 -== 7.26 Request the server to send an ACK == 1335 - 1336 - 1337 -Feature: Mode for sending data for which acknowledgment was not received. LoraWAN Network Server(eg. The Things NetWork/ChirpStack/AWS/...). 1338 - 1339 -(% style="color:blue" %)**AT Command: AT+PNACKMD** 1340 - 1341 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:889px" %) 1342 -|(% style="background-color:#4f81bd; color:white; width:160px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:627px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:100px" %)**Response** 1343 -|(% style="width:160px" %)AT+PNACKMD=1|(% style="width:627px" %)If the node uploads the ACK as confirm, it will request the LoraWAN Network Server to send an ACK. If the LoraWAN Network Server ack is not received, the node will upload the packets that have not received the ACK the next time it receives the ACK|(% style="width:100px" %)1((( 1344 -OK 1345 -))) 1346 -|(% style="width:160px" %)AT+PNACKMD=0|(% style="width:627px" %)off request the LoraWAN Network Server to send an ACK|(% style="width:100px" %)((( 1347 -0 1348 -OK 1349 -))) 1350 - 1351 -(% style="display:none" %) (%%) (% style="color:blue" %)**Downlink Command: 0x34** 1352 - 1353 -0X34 01 ~/~/Same As AT+PNACKMD=1 1354 - 1355 -0x34 00 ~/~/Same As AT+PNACKMD=0 1356 - 1357 - 1358 -== 7.27 Adjust network rejoining interval == 1359 - 1360 - 1361 -(% style="color:blue" %)**AT Command: AT+RJTDC** 1362 - 1363 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:889px" %) 1364 -|(% style="background-color:#4f81bd; color:white; width:165px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:357px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:361px" %)**Response** 1365 -|(% style="width:165px" %)AT+RJTDC=?|(% style="width:357px" %)Show the ReJoin data transmission interval in min|(% style="width:361px" %)30((( 1366 -OK 1367 - 1368 -the interval is 30 min 1369 -))) 1370 -|(% style="width:165px" %)AT+RJTDC=60|(% style="width:357px" %)Set the ReJoin data transmission interval in min|(% style="width:361px" %)OK((( 1371 -Set the ReJoin data transmission interval to 60 min 1372 -))) 1373 - 1374 -(% style="color:blue" %)**Downlink Command: 0x26** 1375 - 1376 -Format: Command Code (0x26) followed by 2 bytes mode value. 1377 - 1378 -If the downlink payload=26000A, it means set end node to use confirm mode, while type code is 26. 1379 - 1380 -* **Example 1:** Downlink Payload: 26000A ~/~/ Set AT+RJTDC=10 1381 - 1382 -* **Example 2: **Downlink Payload: 260002 ~/~/ Set AT+RJTDC=2 1383 - 1384 -(% style="display:none" %) (%%) 1385 - 1386 1386 = 8. AT Commands Combination = 1387 1387 1388 1388 == 8.1 Set a fix RX2DR for downlink window == 1389 1389 851 +* AT+ADR=0 ~-~-> Disable ADR first 852 +* AT+RX2DR=xxxx ~-~-> Set xxxx to your wanted DataRate 1390 1390 1391 -* (% style="color:blue" %)**AT+ADR=0 **(%%) **~/~/** Disable ADR first 1392 - 1393 -* (% style="color:blue" %)**AT+RX2DR=xxxx** (%%) **~/~/** Set xxxx to your wanted DataRate 1394 - 1395 -(% style="display:none" %) (%%) 1396 - 1397 1397 == 8.2 Use Downlink Command to set a fix uplink DR == 1398 1398 856 +Downlink Command: 0x22000500 1399 1399 1400 - (% style="color:blue"%)**Downlink Command:0x22000500**858 +Same as: 1401 1401 1402 -**Same as:** 1403 - 1404 -* AT+ADR=0 [[Reference>>||anchor="H7.1AdaptiveDataRate"]] 1405 - 1406 -* AT+DR=5 [[Reference>>||anchor="H7.4DataRate"]] 1407 - 1408 -* AT+TXP=0 [[Reference>>||anchor="H7.14TransmitPower"]] 1409 - 1410 - 860 +* AT+ADR=0 [[Reference>>url:https://wiki.dragino.com/index.php/End_Device_Downlink_Command#Adaptive_Data_Rate]] 861 +* AT+DR=5 [[Reference>>url:https://wiki.dragino.com/index.php/End_Device_Downlink_Command#Data_Rate]] 862 +* 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
- image-20240906095336-1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.kai - Size
-
... ... @@ -1,1 +1,0 @@ 1 -111.0 KB - Content
- image-20240906095433-2.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.kai - Size
-
... ... @@ -1,1 +1,0 @@ 1 -113.2 KB - Content
- image-20240906095527-3.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.kai - Size
-
... ... @@ -1,1 +1,0 @@ 1 -111.6 KB - Content
- image-20240906095619-4.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.kai - Size
-
... ... @@ -1,1 +1,0 @@ 1 -112.4 KB - Content
- image-20240906095726-5.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.kai - Size
-
... ... @@ -1,1 +1,0 @@ 1 -114.0 KB - Content
- image-20240906095811-6.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.kai - Size
-
... ... @@ -1,1 +1,0 @@ 1 -112.8 KB - Content