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