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