Changes for page End Device AT Commands and Downlink Command
Last modified by kai on 2024/09/06 10:00
Change comment:
There is no comment for this version
Summary
-
Page properties (2 modified, 0 added, 0 removed)
Details
- Page properties
-
- Author
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. Edwin1 +XWiki.Xiaoling - Content
-
... ... @@ -14,10 +14,9 @@ 14 14 15 15 ((( 16 16 **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 - 19 19 ))) 20 20 19 + 21 21 = 2. How to use AT Commands or Downlink command = 22 22 23 23 ... ... @@ -27,19 +27,19 @@ 27 27 ** 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]]? 28 28 ** See use note for more serves [[Servers Note>>doc:Main.WebHome]](IoT LoRaWAN Server) 29 29 29 +(% style="display:none" %) (%%) 30 30 31 31 = 3. Support End Node and firmware version = 32 32 33 33 34 -(% border="1" style="background-color:#ffffcc; color:green; width:966px" %) 35 -|=(% colspan="3" style="width: 963px;" %)((( 36 36 Dragino STM32 base hardware Firmware / LoRaWAN stack list 37 -))) 38 -|(% style="width:187px" %)((( 35 + 36 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:966px" %) 37 +|(% style="background-color:#4f81bd; color:white; width:187px" %)((( 39 39 **Model** 40 -)))|(% style="width:330px" %)((( 39 +)))|(% style="background-color:#4f81bd; color:white; width:330px" %)((( 41 41 **Description** 42 -)))|(% style="width:445px" %)((( 41 +)))|(% style="background-color:#4f81bd; color:white; width:445px" %)((( 43 43 **Firmware Version <~-~-> Stack Version** 44 44 ))) 45 45 |(% style="width:187px" %)((( ... ... @@ -102,6 +102,7 @@ 102 102 ))) 103 103 ))) 104 104 104 +(% style="display:none" %) (%%) 105 105 106 106 = 4. System Management Commands = 107 107 ... ... @@ -113,9 +113,8 @@ 113 113 114 114 (% style="color:blue" %)**AT Command: AT+TDC** 115 115 116 -(% border="1" style="background-color:#ffffcc; color:green; width:727.222px" %) 117 -|=(% colspan="3" style="width: 724px;" %)AT+TDC 118 -|(% style="width:165px" %)**Command Example**|(% style="width:227px" %)**Function**|(% style="width:329px" %)**Response** 116 +(% border="1" style="background-color:#f2f2f2; width:727.222px" %) 117 +|(% 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 119 |(% style="width:165px" %)AT+TDC=?|(% style="width:227px" %)Show current transmit Interval|(% style="width:329px" %)30000((( 120 120 OK 121 121 ... ... @@ -126,8 +126,6 @@ 126 126 ))) 127 127 128 128 ((( 129 - 130 - 131 131 (% style="color:blue" %)**Downlink Command: 0x01** 132 132 133 133 Format: Command Code (0x01) followed by 3 bytes time value. ... ... @@ -140,6 +140,7 @@ 140 140 * **Example 1**: Downlink Payload:** 0100001E** ~/~/ Set Transmit Interval (TDC) = 30 seconds 141 141 * **Example 2**: Downlink Payload:** 0100003C** ~/~/ Set Transmit Interval (TDC) = 60 seconds 142 142 140 +(% style="display:none" %) (%%) 143 143 144 144 == 4.2 Reboot End Node == 145 145 ... ... @@ -147,11 +147,10 @@ 147 147 Feature: Reboot End Node to perform a new OTAA or ABP Join. 148 148 149 149 150 -(% style="color:blue" %)**AT Command: ATZ** 148 +(% style="color:blue" %)**AT Command: ATZ ~/~/ **(%%)Trig a reset of the MCU 151 151 152 -(% border="1" style="background-color:#ffffcc; color:green; width:546px" %) 153 -|=(% colspan="3" style="width: 543px;" %)ATZ: Trig a reset of the MCU 154 -|(% style="width:157px" %)**Command Example**|(% style="width:92px" %)**Function**|(% style="width:294px" %)**Response** 150 +(% border="1" style="background-color:#f2f2f2; width:546px" %) 151 +|(% 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 155 |(% style="width:157px" %)ATZ|(% style="width:92px" %)Reset MCU|(% style="width:294px" %)((( 156 156 Device reset and show booting info 157 157 ... ... @@ -173,11 +173,10 @@ 173 173 ))) 174 174 175 175 ((( 176 -If the downlink payload=**04FF**, the end node will reboot. 177 - 178 - 173 +If the downlink payload=**04FF**, the end node will reboot. 179 179 ))) 180 180 176 + 181 181 == 4.3 Reset to factory Default == 182 182 183 183 ... ... @@ -184,11 +184,10 @@ 184 184 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. 185 185 186 186 187 -(% style="color:blue" %)**AT Command: AT+FDR** 183 +(% style="color:blue" %)**AT Command: AT+FDR ~/~/ **(%%)Reset to factory default 188 188 189 -(% border="1" style="background-color:#ffffcc; color:green; width:789px" %) 190 -|=(% colspan="3" style="width: 786px;" %)Reset to factory default 191 -|(% style="width:154px" %)**Command Example**|(% style="width:175px" %)**Function**|(% style="width:456px" %)**Response** 185 +(% border="1" style="background-color:#f2f2f2; width:789px" %) 186 +|(% 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** 192 192 |(% style="width:154px" %)AT+FDR|(% style="width:175px" %)Reset to factory default|(% style="width:456px" %)((( 193 193 Device reset to factory default parameters and show booting info 194 194 ... ... @@ -220,11 +220,10 @@ 220 220 Feature: Show firmware version. No downlink command yet. 221 221 222 222 223 -(% style="color:blue" %)**AT Command: AT+VER** 218 +(% style="color:blue" %)**AT Command: AT+VER ~/~/ **(%%)Image Version and Frequency Band 224 224 225 -(% border="1" style="background-color:#ffffcc; color:green; width:542px" %) 226 -|=(% colspan="3" style="width: 539px;" %)AT+VER: Image Version and Frequency Band 227 -|(% style="width:157px" %)**Command Example**|(% style="width:295px" %)**Function**|(% style="width:86px" %)**Response** 220 +(% border="1" style="background-color:#f2f2f2; width:542px" %) 221 +|(% 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** 228 228 |(% style="width:157px" %)AT+VER=?|(% style="width:295px" %)Show Image version and Frequency Band|(% style="width:86px" %)((( 229 229 1.3 EU868 230 230 ... ... @@ -244,7 +244,7 @@ 244 244 ((( 245 245 246 246 247 -**xx: Software Type:** 241 +(% style="color:#037691" %)**xx: Software Type:** 248 248 ))) 249 249 250 250 * 0x00 01: LGT92 Version ... ... @@ -254,7 +254,7 @@ 254 254 ((( 255 255 256 256 257 -**yy: Frequency Band:** 251 +(% style="color:#037691" %)**yy: Frequency Band:** 258 258 ))) 259 259 260 260 * 0x01: EU868 ... ... @@ -271,7 +271,7 @@ 271 271 ((( 272 272 273 273 274 -**zz: Subband** 268 +(% style="color:#037691" %)**zz: Subband** 275 275 ))) 276 276 277 277 firmware version: v1.1.0 ~-~-> 110 ... ... @@ -283,25 +283,20 @@ 283 283 Feature: Show All configure. No downlink command yet. 284 284 285 285 286 -(% style="color:blue" %)**AT Command: AT+CFG** 280 +(% style="color:blue" %)**AT Command: AT+CFG ~/~/ **(%%)Print all configurations 287 287 288 -(% border="1" style="background-color:#ffffcc; color:green; width:599.222px" %) 289 -|=(% colspan="3" style="width: 596px;" %)AT+CFG: Print all configurations 290 -|(% style="width:160px" %)**Command Example**|(% style="width:154px" %)**Function**|(% style="width:280px" %)**Response** 282 +(% border="1" style="background-color:#f2f2f2; width:599.222px" %) 283 +|(% 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** 291 291 |(% style="width:160px" %)AT+CFG|(% style="width:154px" %)Show all configures|(% style="width:280px" %)((( 292 292 AT+DEUI = XX XX XX XX XX XX XX XX 293 - 294 294 AT+DADDR=XXXXXXXX 295 - 296 296 ………. 297 - 298 298 AT+RX2WTO=X 299 - 300 300 AT+CHS=868100000 301 - 302 302 OK 303 303 ))) 304 304 293 +(% style="display:none" %) (%%) 305 305 306 306 = 5. Keys, IDs and EUIs management = 307 307 ... ... @@ -313,14 +313,14 @@ 313 313 314 314 (% style="color:blue" %)**AT Command: AT+APPEUI** 315 315 316 -(% border="1" style="background-color:#ffffcc; color:green; width:686.222px" %) 317 -|=(% colspan="3" style="width: 683px;" %)AT+APPEUI 318 -|(% style="width:305px" %)**Command Example**|(% style="width:186px" %)**Function**|(% style="width:191px" %)**Response** 305 +(% border="1" style="background-color:#f2f2f2; width:686.222px" %) 306 +|(% style="background-color:#4f81bd; color:white; width:305px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:186px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:191px" %)**Response** 319 319 |(% style="width:305px" %)AT+APPEUI=?|(% style="width:186px" %)Get the Application EUI|(% style="width:191px" %)00 b3 d5 00 00 00 00 00((( 320 320 OK 321 321 ))) 322 322 |(% style="width:305px" %)AT+APPEUI=00 b3 d5 7e f0 00 4d 34|(% style="width:186px" %)Set the Application EUI|(% style="width:191px" %)OK 323 323 312 +(% style="display:none" %) (%%) 324 324 325 325 == 5.2 Application Key == 326 326 ... ... @@ -330,14 +330,14 @@ 330 330 331 331 (% style="color:blue" %)**AT Command: AT+APPKEY** 332 332 333 -(% border="1" style="background-color:#ffffcc; color:green; width:976.222px" %) 334 -|=(% colspan="3" style="width: 973px;" %)AT+APPKEY 335 -|(% style="width:441px" %)**Command Example**|(% style="width:180px" %)**Function**|(% style="width:350px" %)**Response** 322 +(% border="1" style="background-color:#f2f2f2; width:976.222px" %) 323 +|(% 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** 336 336 |(% 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((( 337 337 OK 338 338 ))) 339 339 |(% 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 340 340 329 +(% style="display:none" %) (%%) 341 341 342 342 == 5.3 Application Session Key == 343 343 ... ... @@ -347,9 +347,8 @@ 347 347 348 348 (% style="color:blue" %)**AT Command: AT+APPSKEY** 349 349 350 -(% border="1" style="background-color:#ffffcc; color:green; width:1040.22px" %) 351 -|=(% colspan="3" style="width: 1037px;" %)AT+APPSKEY 352 -|(% style="width:451px" %)**Command Example**|(% style="width:231px" %)**Function**|(% style="width:354px" %)**Response** 339 +(% border="1" style="background-color:#f2f2f2; width:1040.22px" %) 340 +|(% 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** 353 353 |(% 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((( 354 354 OK 355 355 ))) ... ... @@ -357,6 +357,7 @@ 357 357 OK 358 358 ))) 359 359 348 +(% style="display:none" %) (%%) 360 360 361 361 == 5.4 Device Address == 362 362 ... ... @@ -366,9 +366,8 @@ 366 366 367 367 (% style="color:blue" %)**AT Command: AT+DADDR** 368 368 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** 358 +(% border="1" style="background-color:#f2f2f2; width:795.222px" %) 359 +|(% 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** 372 372 |(% style="width:192px" %)AT+DADDR=?|(% style="width:241px" %)Get the Application Session Key.|(% style="width:359px" %)(While Error in format, return AT_PARAM_ERROR)((( 373 373 A8 40 41 FF 374 374 ... ... @@ -376,6 +376,7 @@ 376 376 ))) 377 377 |(% style="width:192px" %)AT+DADDR=A8 40 41 FF|(% style="width:241px" %)Set the Application Session Key.|(% style="width:359px" %)OK 378 378 367 +(% style="display:none" %) (%%) 379 379 380 380 == 5.5 Device EUI == 381 381 ... ... @@ -385,9 +385,8 @@ 385 385 386 386 (% style="color:blue" %)**AT Command: AT+DEUI** 387 387 388 -(% border="1" style="background-color:#ffffcc; color:green; width:1035.22px" %) 389 -|=(% colspan="3" style="width: 1032px;" %)AT+DEUI 390 -|(% style="width:250px" %)**Command Example**|(% style="width:147px" %)**Function**|(% style="width:634px" %)**Response** 377 +(% border="1" style="background-color:#f2f2f2; width:1035.22px" %) 378 +|(% 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** 391 391 |(% style="width:250px" %)AT+DEUI=?|(% style="width:147px" %)Get the Device EUI.|(% style="width:634px" %)00 44 34 22 33 45 55 55((( 392 392 OK 393 393 ))) ... ... @@ -395,6 +395,7 @@ 395 395 OK 396 396 ))) 397 397 386 +(% style="display:none" %) (%%) 398 398 399 399 == 5.6 Network ID == 400 400 ... ... @@ -404,14 +404,14 @@ 404 404 405 405 (% style="color:blue" %)**AT Command: AT+NWKID** 406 406 407 -(% border="1" style="background-color:#ffffcc; color:green; width:448.222px" %) 408 -|=(% colspan="3" style="width: 445px;" %)AT+NWKID 409 -|(% style="width:191px" %)**Command Example**|(% style="width:153px" %)**Function**|(% style="width:101px" %)**Response** 396 +(% border="1" style="background-color:#f2f2f2; width:448.222px" %) 397 +|(% 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** 410 410 |(% style="width:191px" %)AT+NWKID=?|(% style="width:153px" %)Get the Network ID.|(% style="width:101px" %)a8 40 41 ff((( 411 411 OK 412 412 ))) 413 413 |(% style="width:191px" %)AT+NWKID=A8 40 41 FF|(% style="width:153px" %)Set the Network ID.|(% style="width:101px" %)OK 414 414 403 +(% style="display:none" %) (%%) 415 415 416 416 == 5.7 Network Session Key == 417 417 ... ... @@ -421,14 +421,14 @@ 421 421 422 422 (% style="color:blue" %)**AT Command: AT+NWKSKEY** 423 423 424 -(% border="1" style="background-color:#ffffcc; color:green; width:1017.22px" %) 425 -|=(% colspan="3" style="width: 1014px;" %)AT+NWKSKEY 426 -|(% style="width:455px" %)**Command Example**|(% style="width:215px" %)**Function**|(% style="width:343px" %)**Response** 413 +(% border="1" style="background-color:#f2f2f2; width:1017.22px" %) 414 +|(% 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** 427 427 |(% 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((( 428 428 OK 429 429 ))) 430 430 |(% 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 431 431 420 +(% style="display:none" %) (%%) 432 432 433 433 = 6. Joining and sending date on LoRaWAN network = 434 434 ... ... @@ -442,9 +442,8 @@ 442 442 443 443 (% style="color:blue" %)**AT Command: AT+CFM** 444 444 445 -(% border="1" style="background-color:#ffffcc; color:green; width:710.222px" %) 446 -|=(% colspan="3" style="width: 707px;" %)AT+CFM 447 -|(% style="width:155px" %)**Command Example**|(% style="width:205px" %)**Function**|(% style="width:346px" %)**Response** 434 +(% border="1" style="background-color:#f2f2f2; width:710.222px" %) 435 +|(% 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** 448 448 |(% style="width:155px" %)AT+CFM=?|(% style="width:205px" %)Get the confirmation mode|(% style="width:346px" %)0((( 449 449 OK 450 450 ))) ... ... @@ -460,6 +460,7 @@ 460 460 * **Example 1:** Downlink Payload: 0501 ~/~/ Set AT+CFM=1 461 461 * **Example 2:** Downlink Payload: 0500 ~/~/ Set AT+CFM=0 462 462 451 +(% style="display:none" %) (%%) 463 463 464 464 === 6.1.2 AT+CFM command since DR-LWS007 software stack === 465 465 ... ... @@ -466,9 +466,8 @@ 466 466 467 467 (% style="color:blue" %)**AT Command: AT+CFM** 468 468 469 -(% border="1" style="background-color:#ffffcc; color:green; width:710.222px" %) 470 -|=(% colspan="3" style="width: 707px;" %)AT+CFM 471 -|(% style="width:160px" %)**Command Example**|(% style="width:198px" %)**Function**|(% style="width:349px" %)**Response** 458 +(% border="1" style="background-color:#f2f2f2; width:710.222px" %) 459 +|(% 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** 472 472 |(% style="width:160px" %)((( 473 473 AT+CFM=1,0,0 474 474 ... ... @@ -506,6 +506,7 @@ 506 506 * **Example 1:** Downlink Payload: 05010101 ~/~/ Set AT+CFM=1,1,1 507 507 * **Example 2:** Downlink Payload: 05000700 ~/~/ Set AT+CFM=0,7,0 508 508 497 +(% style="display:none" %) (%%) 509 509 510 510 == 6.2 Confirm Status == 511 511 ... ... @@ -515,13 +515,13 @@ 515 515 516 516 (% style="color:blue" %)**AT Command: AT+CFS** 517 517 518 -(% border="1" style="background-color:#ffffcc; color:green; width:463px" %) 519 -|=(% colspan="3" style="width: 460px;" %)AT+CFS 520 -|(% style="width:156px" %)**Command Example**|(% style="width:193px" %)**Function**|(% style="width:107px" %)**Response** 507 +(% border="1" style="background-color:#f2f2f2; width:463px" %) 508 +|(% 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** 521 521 |(% style="width:156px" %)AT+CFS=?|(% style="width:193px" %)Get confirmation status|(% style="width:107px" %)0((( 522 522 OK 523 523 ))) 524 524 513 +(% style="display:none" %) (%%) 525 525 526 526 == 6.3 Join LoRa® Network == 527 527 ... ... @@ -531,15 +531,14 @@ 531 531 532 532 (% style="color:blue" %)**AT Command: AT+JOIN** 533 533 534 -(% border="1" style="background-color:#ffffcc; color:green; width:647.222px" %) 535 -|=(% colspan="3" style="width: 644px;" %)AT+JOIN 536 -|(% style="width:163px" %)**Command Example**|(% style="width:147px" %)**Function**|(% style="width:334px" %)**Response** 523 +(% border="1" style="background-color:#f2f2f2; width:647.222px" %) 524 +|(% 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** 537 537 |(% style="width:163px" %)AT+JOIN ?|(% style="width:147px" %)Get imformation.|(% style="width:334px" %)AT+JOIN: Join network((( 538 538 OK 539 - 540 540 While Error in format, return AT_BUSY_ERROR 541 541 ))) 542 542 530 +(% style="display:none" %) (%%) 543 543 544 544 == 6.4 LoRa® Network Join Mode == 545 545 ... ... @@ -549,9 +549,8 @@ 549 549 550 550 (% style="color:blue" %)**AT Command: AT+NJM** 551 551 552 -(% border="1" style="background-color:#ffffcc; color:green; width:753.222px" %) 553 -|=(% colspan="3" style="width: 750px;" %)AT+NJM 554 -|(% style="width:162px" %)**Command Example**|(% style="width:227px" %)**Function**|(% style="width:361px" %)**Response** 540 +(% border="1" style="background-color:#f2f2f2; width:753.222px" %) 541 +|(% 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** 555 555 |(% style="width:162px" %)AT+NJM=?|(% style="width:227px" %)Get the Network Join Mode|(% style="width:361px" %)1((( 556 556 OK 557 557 ))) ... ... @@ -567,6 +567,7 @@ 567 567 * **Example 1: **Downlink Payload: **2000 ** ~/~/ Set AT+NJM=0 568 568 * **Example 2:** Downlink Payload: **2001** ~/~/ Set AT+NJM=1 569 569 557 +(% style="display:none" %) (%%) 570 570 571 571 == 6.5 LoRa® Network Join Status == 572 572 ... ... @@ -576,13 +576,13 @@ 576 576 577 577 (% style="color:blue" %)**AT Command: AT+NJS** 578 578 579 -(% border="1" style="background-color:#ffffcc; color:green; width:498.222px" %) 580 -|=(% colspan="3" style="width: 495px;" %)AT+NJS 581 -|(% style="width:169px" %)**Command Example**|(% style="width:164px" %)**Function**|(% style="width:161px" %)**Response** 567 +(% border="1" style="background-color:#f2f2f2; width:498.222px" %) 568 +|(% 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:161px" %)**Response** 582 582 |(% style="width:169px" %)AT+NJS=?|(% style="width:164px" %)Get the join status.|(% style="width:161px" %)0((( 583 583 OK 584 584 ))) 585 585 573 +(% style="display:none" %) (%%) 586 586 587 587 == 6.6 Print Last Received Data in Raw Format == 588 588 ... ... @@ -592,13 +592,13 @@ 592 592 593 593 (% style="color:blue" %)**AT Command: AT+RECV** 594 594 595 -(% border="1" style="background-color:#ffffcc; color:green; width:587.222px" %) 596 -|=(% colspan="3" style="width: 584px;" %)AT+RECV 597 -|(% style="width:161px" %)**Command Example**|(% style="width:272px" %)**Function**|(% style="width:150px" %)**Response** 583 +(% border="1" style="background-color:#f2f2f2; width:587.222px" %) 584 +|(% 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:150px" %)**Response** 598 598 |(% style="width:161px" %)AT+RECV=?|(% style="width:272px" %)print last received data in raw format.|(% style="width:150px" %)0:((( 599 599 OK 600 600 ))) 601 601 589 +(% style="display:none" %) (%%) 602 602 603 603 == 6.7 Print Last Received Data in Binary Format == 604 604 ... ... @@ -608,13 +608,13 @@ 608 608 609 609 (% style="color:blue" %)**AT Command: AT+RECVB** 610 610 611 -(% border="1" style="background-color:#ffffcc; color:green; width:793.222px" %) 612 -|=(% colspan="3" style="width: 790px;" %)AT+RECVB 613 -|(% style="width:173px" %)**Command Example**|(% style="width:497px" %)**Function**|(% style="width:120px" %)**Response** 599 +(% border="1" style="background-color:#f2f2f2; width:793.222px" %) 600 +|(% 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** 614 614 |(% style="width:173px" %)AT+RECVB=?|(% style="width:497px" %)print last received data in binary format (with hexadecimal values).|(% style="width:120px" %)2: 0010((( 615 615 OK 616 616 ))) 617 617 605 +(% style="display:none" %) (%%) 618 618 619 619 == 6.8 Send Text Data == 620 620 ... ... @@ -624,17 +624,14 @@ 624 624 625 625 (% style="color:blue" %)**AT Command: AT+SEND** 626 626 627 -(% border="1" style="background-color:#ffffcc; color:green; width:991.222px" %) 628 -|=(% colspan="3" style="width: 988px;" %)AT+SEND 629 -|(% style="width:201px" %)**Command Example**|(% style="width:340px" %)**Function**|(% style="width:446px" %)**Response** 615 +(% border="1" style="background-color:#f2f2f2; width:991.222px" %) 616 +|(% 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** 630 630 |(% style="width:201px" %)AT+SEND=12:hello world|(% style="width:340px" %)Send text data along with the application port.|(% style="width:446px" %)OK((( 631 631 While Error in format, return 632 - 633 633 AT_BUSY_ERROR/AT_BUSY_ERROR/AT_NO_NETWORK_JOINED 634 - 635 - 636 636 ))) 637 637 622 +(% style="display:none" %) (%%) 638 638 639 639 == 6.9 Send Hexadecimal Data == 640 640 ... ... @@ -644,16 +644,14 @@ 644 644 645 645 (% style="color:blue" %)**AT Command: AT+SENDB** 646 646 647 -(% border="1" style="background-color:#ffffcc; color:green; width:1101px" %) 648 -|=(% colspan="3" style="width: 1098px;" %)AT+SENDB 649 -|(% style="width:257px" %)**Command Example**|(% style="width:394px" %)**Function**|(% style="width:446px" %)**Response** 650 -|(% style="width:257px" %)AT+SENDB=12:abcdef0123456789|(% style="width:394px" %)Send hexadecimal data along with the application port.|(% style="width:446px" %)OK 651 -|(% style="width:257px" %)AT+SENDB=abcdef0123456789|(% style="width:394px" %)Send hexadecimal data along with the application port.|(% style="width:446px" %)While Error in format, return((( 652 -AT_PARAM_ERROR AT_BUSY_ERROR/AT_NO_NETWORK_JOINED 653 - 654 - 632 +(% border="1" style="width:974px" %) 633 +|(% 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** 634 +|(% style="width:257px" %)AT+SENDB=12:abcdef0123456789|(% style="width:394px" %)Send hexadecimal data along with the application port.|(% style="width:318px" %)OK 635 +|(% 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((( 636 +AT_PARAM_ERROR AT_BUSY_ERROR/AT_NO_NETWORK_JOINED 655 655 ))) 656 656 639 +(% style="display:none" %) (%%) 657 657 658 658 = 7. LoRaWAN network management = 659 659 ... ... @@ -665,14 +665,13 @@ 665 665 666 666 (% style="color:blue" %)**AT Command: AT+ADR** 667 667 668 -(% border="1" style="background-color:#ffffcc; color:green; width:683.222px" %) 669 -|=(% colspan="3" style="width: 680px;" %)AT+ADR 670 -|(% style="width:162px" %)**Command Example**|(% style="width:266px" %)**Function**|(% style="width:250px" %)**Response** 671 -|(% style="width:162px" %)AT+ADR=?|(% style="width:266px" %)Get the Adaptive Data Rate setting.|(% style="width:250px" %)1((( 651 +(% border="1" style="width:643px" %) 652 +|(% 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** 653 +|(% style="width:162px" %)AT+ADR=?|(% style="width:266px" %)Get the Adaptive Data Rate setting.|(% style="width:209px" %)1((( 672 672 OK 673 673 ))) 674 -|(% style="width:162px" %)AT+ADR=0|(% style="width:266px" %)Set the Adaptive Data Rate setting.|(% style="width:2 50px" %)OK675 -|(% style="width:162px" %)AT+ADR=2|(% style="width:266px" %)Set the Adaptive Data Rate setting.|(% style="width:2 50px" %)While Error in format, return(((656 +|(% style="width:162px" %)AT+ADR=0|(% style="width:266px" %)Set the Adaptive Data Rate setting.|(% style="width:209px" %)OK 657 +|(% style="width:162px" %)AT+ADR=2|(% style="width:266px" %)Set the Adaptive Data Rate setting.|(% style="width:209px" %)While Error in format, return((( 676 676 AT_PARAM_ERROR 677 677 ))) 678 678 ... ... @@ -683,6 +683,7 @@ 683 683 * **Example 1**: Downlink Payload: **2201** ~/~/ Set AT+ADR=1. 684 684 * **Example 2**: Downlink Payload: **2200FFFF** ~/~/ Set AT+ADR=0. 685 685 668 +(% style="display:none" %) (%%) 686 686 687 687 == 7.2 LoRa® Class == 688 688 ... ... @@ -692,9 +692,8 @@ 692 692 693 693 (% style="color:blue" %)**AT Command: AT+CLASS** 694 694 695 -(% border="1" style="background-color:#ffffcc; color:green; width:507.222px" %) 696 -|=(% colspan="3" style="width: 504px;" %)AT+CLASS 697 -|(% style="width:163px" %)**Command Example**|(% style="width:166px" %)**Function**|(% style="width:175px" %)**Response** 678 +(% border="1" style="background-color:#f2f2f2; width:507.222px" %) 679 +|(% 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:175px" %)**Response** 698 698 |(% style="width:163px" %)AT+CLASS=?|(% style="width:166px" %)Get the Device Class.|(% style="width:175px" %)A((( 699 699 OK 700 700 ))) ... ... @@ -702,18 +702,23 @@ 702 702 703 703 ))) 704 704 687 +(% style="display:none" %) 705 705 689 +(% style="color:red" %)**Notice:** 690 + 691 +* Run AT+FDR before running AT+CLASS=C 692 +* 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. 693 + 706 706 == 7.3 Duty Cycle Setting == 707 707 708 708 709 -Feature: Get or Set the ETSI Duty Cycle setting** -0**=disable, **1**=enable - Only for testing.697 +Feature: Get or Set the ETSI Duty Cycle setting** : 0**=disable, **1**=enable - Only for testing. 710 710 711 711 712 712 (% style="color:blue" %)**AT Command: AT+DCS** 713 713 714 -(% border="1" style="background-color:#ffffcc; color:green; width:515.222px" %) 715 -|=(% colspan="3" style="width: 512px;" %)AT+DCS 716 -|(% style="width:165px" %)**Command Example**|(% style="width:239px" %)**Function**|(% style="width:107px" %)**Response** 702 +(% border="1" style="background-color:#f2f2f2; width:515.222px" %) 703 +|(% 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** 717 717 |(% style="width:165px" %)AT+DCS=?|(% style="width:239px" %)Get the ETSI Duty Cycle setting.|(% style="width:107px" %)1((( 718 718 OK 719 719 ))) ... ... @@ -721,6 +721,7 @@ 721 721 722 722 ))) 723 723 711 +(% style="display:none" %) (%%) 724 724 725 725 == 7.4 Data Rate == 726 726 ... ... @@ -735,9 +735,8 @@ 735 735 736 736 (% style="color:blue" %)**AT Command: AT+DR** 737 737 738 -(% border="1" style="background-color:#ffffcc; color:green; width:466.222px" %) 739 -|=(% colspan="3" style="width: 463px;" %)AT+DR 740 -|(% style="width:156px" %)**Command Example**|(% style="width:167px" %)**Function**|(% style="width:140px" %)**Response** 726 +(% border="1" style="background-color:#f2f2f2; width:466.222px" %) 727 +|(% style="background-color:#4f81bd; color:white; width:156px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:167px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:140px" %)**Response** 741 741 |(% style="width:156px" %)AT+DR=?|(% style="width:167px" %)Get the Data Rate.|(% style="width:140px" %)5((( 742 742 OK 743 743 ))) ... ... @@ -752,6 +752,7 @@ 752 752 * **Example 1**: Downlink Payload: **220001FF** ~/~/ Set AT+DR=1. 753 753 * **Example 2**: Downlink Payload: **220000FF** ~/~/ Set AT+DR=0. 754 754 742 +(% style="display:none" %) (%%) 755 755 756 756 == 7.5 Frame Counter Downlink == 757 757 ... ... @@ -761,9 +761,8 @@ 761 761 762 762 (% style="color:blue" %)**AT Command: AT+FCD** 763 763 764 -(% border="1" style="background-color:#ffffcc; color:green; width:693.222px" %) 765 -|=(% colspan="3" style="width: 690px;" %)AT+FCD 766 -|(% style="width:162px" %)**Command Example**|(% style="width:258px" %)**Function**|(% style="width:269px" %)**Response** 752 +(% border="1" style="background-color:#f2f2f2; width:693.222px" %) 753 +|(% 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** 767 767 |(% style="width:162px" %)AT+FCD=?|(% style="width:258px" %)Get the Frame Counter Downlink.|(% style="width:269px" %)0((( 768 768 OK 769 769 ))) ... ... @@ -771,6 +771,7 @@ 771 771 OK 772 772 ))) 773 773 761 +(% style="display:none" %) (%%) 774 774 775 775 == 7.6 Frame Counter Uplink == 776 776 ... ... @@ -779,9 +779,8 @@ 779 779 780 780 (% style="color:blue" %)**AT Command: AT+FCU** 781 781 782 -(% border="1" style="background-color:#ffffcc; color:green; width:534.222px" %) 783 -|=(% colspan="3" style="width: 531px;" %)AT+FCU 784 -|(% style="width:177px" %)**Command Example**|(% style="width:239px" %)**Function**|(% style="width:113px" %)**Response** 770 +(% border="1" style="background-color:#f2f2f2; width:534.222px" %) 771 +|(% 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** 785 785 |(% style="width:177px" %)AT+FCU=?|(% style="width:239px" %)Get the Frame Counter Uplink.|(% style="width:113px" %)0((( 786 786 OK 787 787 ))) ... ... @@ -789,6 +789,7 @@ 789 789 790 790 ))) 791 791 779 +(% style="display:none" %) (%%) 792 792 793 793 == 7.7 Join Accept Delay1 == 794 794 ... ... @@ -798,9 +798,8 @@ 798 798 799 799 (% style="color:blue" %)**AT Command: AT+JN1DL** 800 800 801 -(% border="1" style="background-color:#ffffcc; color:green; width:537.222px" %) 802 -|=(% colspan="3" style="width: 534px;" %)AT+JN1DL 803 -|(% style="width:164px" %)**Command Example**|(% style="width:229px" %)**Function**|(% style="width:140px" %)**Response** 789 +(% border="1" style="background-color:#f2f2f2; width:537.222px" %) 790 +|(% 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** 804 804 |(% style="width:164px" %)AT+JN1DL=?|(% style="width:229px" %)Get the Join Accept Delay.|(% style="width:140px" %)5000((( 805 805 OK 806 806 ))) ... ... @@ -808,6 +808,7 @@ 808 808 809 809 ))) 810 810 798 +(% style="display:none" %) (%%) 811 811 812 812 == 7.8 Join Accept Delay2 == 813 813 ... ... @@ -817,9 +817,8 @@ 817 817 818 818 (% style="color:blue" %)**AT Command: AT+JN2DL** 819 819 820 -(% border="1" style="background-color:#ffffcc; color:green; width:538.222px" %) 821 -|=(% colspan="3" style="width: 535px;" %)AT+JN2DL 822 -|(% style="width:160px" %)**Command Example**|(% style="width:228px" %)**Function**|(% style="width:146px" %)**Response** 808 +(% border="1" style="background-color:#f2f2f2; width:538.222px" %) 809 +|(% 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** 823 823 |(% style="width:160px" %)AT+JN2DL=?|(% style="width:228px" %)Get the Join Accept Delay.|(% style="width:146px" %)6000((( 824 824 OK 825 825 ))) ... ... @@ -827,6 +827,7 @@ 827 827 828 828 ))) 829 829 817 +(% style="display:none" %) (%%) 830 830 831 831 == 7.9 Public Network Mode == 832 832 ... ... @@ -838,9 +838,8 @@ 838 838 839 839 (% style="color:blue" %)**AT Command: AT+PNM** 840 840 841 -(% border="1" style="background-color:#ffffcc; color:green; width:667.222px" %) 842 -|=(% colspan="3" style="width: 664px;" %)AT+PNM 843 -|(% style="width:166px" %)**Command Example**|(% style="width:225px" %)**Function**|(% style="width:272px" %)**Response** 829 +(% border="1" style="background-color:#f2f2f2; width:667.222px" %) 830 +|(% 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** 844 844 |(% style="width:166px" %)AT+PNM=?|(% style="width:225px" %)Get the public network mode.|(% style="width:272px" %)1((( 845 845 OK 846 846 ))) ... ... @@ -855,6 +855,7 @@ 855 855 ))) 856 856 |(% style="width:166px" %)AT+PNM=0|(% style="width:225px" %)Set to use private network autoset syncword=0x12|(% style="width:272px" %) 857 857 845 +(% style="display:none" %) (%%) 858 858 859 859 == 7.10 Receive Delay1 == 860 860 ... ... @@ -864,9 +864,8 @@ 864 864 865 865 (% style="color:blue" %)**AT Command: AT+RX1DL** 866 866 867 -(% border="1" style="background-color:#ffffcc; color:green; width:408.222px" %) 868 -|=(% colspan="3" style="width: 405px;" %)AT+RX1DL 869 -|(% style="width:155px" %)**Command Example**|(% style="width:128px" %)**Function**|(% style="width:122px" %)**Response** 855 +(% border="1" style="background-color:#f2f2f2; width:408.222px" %) 856 +|(% 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** 870 870 |(% style="width:155px" %)AT+RX1DL=?|(% style="width:128px" %)Get the delay.|(% style="width:122px" %)1000((( 871 871 OK 872 872 ))) ... ... @@ -874,6 +874,7 @@ 874 874 875 875 ))) 876 876 864 +(% style="display:none" %) (%%) 877 877 878 878 == 7.11 Receive Delay2 == 879 879 ... ... @@ -883,9 +883,8 @@ 883 883 884 884 (% style="color:blue" %)**AT Command: AT+RX2DL** 885 885 886 -(% border="1" style="background-color:#ffffcc; color:green; width:481.222px" %) 887 -|=(% colspan="3" style="width: 478px;" %)AT+RX2DL 888 -|(% style="width:175px" %)**Command Example**|(% style="width:152px" %)**Function**|(% style="width:150px" %)**Response** 874 +(% border="1" style="background-color:#f2f2f2; width:481.222px" %) 875 +|(% 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** 889 889 |(% style="width:175px" %)AT+RX2DL=?|(% style="width:152px" %)Get the delay.|(% style="width:150px" %)2000((( 890 890 OK 891 891 ))) ... ... @@ -893,6 +893,7 @@ 893 893 894 894 ))) 895 895 883 +(% style="display:none" %) (%%) 896 896 897 897 == 7.12 Rx2 Window Data Rate == 898 898 ... ... @@ -902,9 +902,8 @@ 902 902 903 903 (% style="color:blue" %)**AT Command: AT+RX2DR** 904 904 905 -(% border="1" style="background-color:#ffffcc; color:green; width:525.222px" %) 906 -|=(% colspan="3" style="width: 522px;" %)AT+RX2DR 907 -|(% style="width:160px" %)**Command Example**|(% style="width:232px" %)**Function**|(% style="width:130px" %)**Response** 893 +(% border="1" style="background-color:#f2f2f2; width:525.222px" %) 894 +|(% 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** 908 908 |(% style="width:160px" %)AT+RX2DR=?|(% style="width:232px" %)Get the Rx2 window data rate.|(% style="width:130px" %)2((( 909 909 OK 910 910 ))) ... ... @@ -912,6 +912,7 @@ 912 912 913 913 ))) 914 914 902 +(% style="display:none" %) (%%) 915 915 916 916 == 7.13 Rx2 Window Frequency == 917 917 ... ... @@ -921,9 +921,8 @@ 921 921 922 922 (% style="color:blue" %)**AT Command: AT+RX2FQ** 923 923 924 -(% border="1" style="background-color:#ffffcc; color:green; width:587.222px" %) 925 -|=(% colspan="3" style="width: 584px;" %)AT+RX2FQ 926 -|(% style="width:183px" %)**Command Example**|(% style="width:240px" %)**Function**|(% style="width:160px" %)**Response** 912 +(% border="1" style="background-color:#f2f2f2; width:587.222px" %) 913 +|(% 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** 927 927 |(% style="width:183px" %)AT+RX2FQ=?|(% style="width:240px" %)Get the Rx2 window frequency.|(% style="width:160px" %)434665000((( 928 928 OK 929 929 ))) ... ... @@ -931,6 +931,7 @@ 931 931 932 932 ))) 933 933 921 +(% style="display:none" %) (%%) 934 934 935 935 == 7.14 Transmit Power == 936 936 ... ... @@ -942,9 +942,8 @@ 942 942 943 943 (% style="color:blue" %)**AT Command: AT+TXP** 944 944 945 -(% border="1" style="background-color:#ffffcc; color:green; width:465.222px" %) 946 -|=(% colspan="3" style="width: 462px;" %)AT+TXP 947 -|(% style="width:161px" %)**Command Example**|(% style="width:189px" %)**Function**|(% style="width:112px" %)**Response** 933 +(% border="1" style="background-color:#f2f2f2; width:465.222px" %) 934 +|(% 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** 948 948 |(% style="width:161px" %)AT+TXP=?|(% style="width:189px" %)Get the Transmit Power.|(% style="width:112px" %)0((( 949 949 OK 950 950 ))) ... ... @@ -957,8 +957,9 @@ 957 957 If the downlink payload=22000100, it means setting the TXP to 0. 958 958 959 959 * **Example 1**: Downlink Payload: **22000102** ~/~/ Set AT+TXP=2. 960 -* **Example 2**: Downlink Payload: **220000 FF**947 +* **Example 2**: Downlink Payload: **22000000** ~/~/ Set AT+TXP=0. 961 961 949 +(% style="display:none" %) (%%) 962 962 963 963 == 7.15 RSSI of the Last Received Packet == 964 964 ... ... @@ -968,13 +968,13 @@ 968 968 969 969 (% style="color:blue" %)**AT Command:AT+RSSI** 970 970 971 -(% border="1" style="background-color:#ffffcc; color:green; width:557.222px" %) 972 -|=(% colspan="3" style="width: 554px;" %)AT+RSSI 973 -|(% style="width:164px" %)**Command Example**|(% style="width:289px" %)**Function**|(% style="width:100px" %)**Response** 959 +(% border="1" style="background-color:#f2f2f2; width:557.222px" %) 960 +|(% 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** 974 974 |(% style="width:164px" %)AT+RSSI=?|(% style="width:289px" %)Get the RSSI of the last received packet.|(% style="width:100px" %)0((( 975 975 OK 976 976 ))) 977 977 965 +(% style="display:none" %) (%%) 978 978 979 979 == 7.16 SNR of the Last Received Packet == 980 980 ... ... @@ -984,13 +984,13 @@ 984 984 985 985 (% style="color:blue" %)**AT Command: AT+SNR** 986 986 987 -(% border="1" style="background-color:#ffffcc; color:green; width:571.222px" %) 988 -|=(% colspan="3" style="width: 568px;" %)AT+SNR 989 -|(% style="width:164px" %)**Command Example**|(% style="width:290px" %)**Function**|(% style="width:113px" %)**Response** 975 +(% border="1" style="background-color:#f2f2f2; width:571.222px" %) 976 +|(% 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** 990 990 |(% style="width:164px" %)AT+SNR=?|(% style="width:290px" %)Get the RSSI of the last received packet.|(% style="width:113px" %)0((( 991 991 OK 992 992 ))) 993 993 981 +(% style="display:none" %) (%%) 994 994 995 995 == 7.17 Application Port == 996 996 ... ... @@ -1000,9 +1000,8 @@ 1000 1000 1001 1001 (% style="color:blue" %)**AT Command: AT+PORT** 1002 1002 1003 -(% border="1" style="background-color:#ffffcc; color:green; width:500.222px" %) 1004 -|=(% colspan="3" style="width: 497px;" %)AT+PORT 1005 -|(% style="width:157px" %)**Command Example**|(% style="width:204px" %)**Function**|(% style="width:135px" %)**Response** 991 +(% border="1" style="background-color:#f2f2f2; width:500.222px" %) 992 +|(% style="background-color:#4f81bd; color:white; width:157px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:204px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:135px" %)**Response** 1006 1006 |(% style="width:157px" %)AT+PORT=?|(% style="width:204px" %)Get the application port|(% style="width:135px" %)21((( 1007 1007 OK 1008 1008 ))) ... ... @@ -1017,6 +1017,7 @@ 1017 1017 * **Example 1**: Downlink Payload: **2301** ~/~/ set the application port to 1 1018 1018 * **Example 2**: Downlink Payload:** 2305** ~/~/ set the application port to 5 1019 1019 1007 +(% style="display:none" %) (%%) 1020 1020 1021 1021 == 7.18 Single Channel Mode == 1022 1022 ... ... @@ -1026,14 +1026,14 @@ 1026 1026 1027 1027 (% style="color:blue" %)**AT Command: AT+CHS** 1028 1028 1029 -(% border="1" style="background-color:#ffffcc; color:green; width:603.222px" %) 1030 -|=(% colspan="3" style="width: 600px;" %)AT+CHS 1031 -|(% style="width:182px" %)**Command Example**|(% style="width:295px" %)**Function**|(% style="width:122px" %)**Response** 1017 +(% border="1" style="background-color:#f2f2f2; width:603.222px" %) 1018 +|(% 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:122px" %)**Response** 1032 1032 |(% style="width:182px" %)AT+CHS=?|(% style="width:295px" %)Get Frequency for Single Channel Mode|(% style="width:122px" %)0((( 1033 1033 OK 1034 1034 ))) 1035 1035 |(% style="width:182px" %)AT+CHS=868100000|(% style="width:295px" %)Set Frequency for Single Channel Mode|(% style="width:122px" %)OK 1036 1036 1024 +(% style="display:none" %) (%%) 1037 1037 1038 1038 == 7.19 Eight Channel Mode == 1039 1039 ... ... @@ -1043,9 +1043,8 @@ 1043 1043 1044 1044 (% style="color:blue" %)**AT Command: AT+CHE** 1045 1045 1046 -(% border="1" style="background-color:#ffffcc; color:green; width:710.222px" %) 1047 -|=(% colspan="3" style="width: 707px;" %)AT+CHE 1048 -|(% style="width:160px" %)**Command Example**|(% style="width:198px" %)**Function**|(% style="width:349px" %)**Response** 1034 +(% border="1" style="background-color:#f2f2f2; width:710.222px" %) 1035 +|(% 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** 1049 1049 |(% style="width:160px" %)AT+CHE=?|(% style="width:198px" %)Get eight channels mode|(% style="width:349px" %)1((( 1050 1050 902.3 902.5 902.7 902.9 903.1 903.3 903.5 903.7 1051 1051 ... ... @@ -1062,6 +1062,7 @@ 1062 1062 * **Example 1**: Downlink Payload: 2401 ~/~/ set channel mode to 1 1063 1063 * **Example 2**: Downlink Payload: 2405 ~/~/ set channel mode to 5 1064 1064 1052 +(% style="display:none" %) (%%) 1065 1065 1066 1066 == 7.20 Get or Set RXwindows1 timeout == 1067 1067 ... ... @@ -1071,32 +1071,26 @@ 1071 1071 1072 1072 (% style="color:blue" %)**AT Command: AT+RX1WTO** 1073 1073 1074 -(% border="1" style="background-color:#ffffcc; color:green; width:460.222px" %) 1075 -|=(% colspan="3" style="width: 457px;" %)AT+ RX1WTO 1076 -|(% style="width:163px" %)**Command Example**|(% style="width:201px" %)**Function**|(% style="width:93px" %)**Response** 1062 +(% border="1" style="background-color:#f2f2f2; width:460.222px" %) 1063 +|(% 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** 1077 1077 |(% style="width:163px" %)AT+RX1WTO=?|(% style="width:201px" %)Get RXwindows1 timeout|(% style="width:93px" %)14((( 1078 1078 OK 1079 1079 ))) 1080 1080 |(% style="width:163px" %)AT+RX1WTO=60|(% style="width:201px" %)Set RXwindows1 timeout|(% style="width:93px" %)OK 1081 1081 1082 -((( 1083 - 1069 +(% style="display:none" %) (%%) 1084 1084 1085 - 1071 +((( 1086 1086 (% 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. 1087 - 1088 - 1089 1089 ))) 1090 1090 1091 1091 [[image:image-20220526162535-1.png]] 1092 1092 1093 - 1094 1094 ((( 1095 1095 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. 1096 - 1097 - 1098 1098 ))) 1099 1099 1081 + 1100 1100 == 7.21 Get or Set RXwindows2 timeout == 1101 1101 1102 1102 ... ... @@ -1105,14 +1105,14 @@ 1105 1105 1106 1106 (% style="color:blue" %)**AT Command: AT+RX2WTO** 1107 1107 1108 -(% border="1" style="background-color:#ffffcc; color:green; width:497.222px" %) 1109 -|=(% colspan="3" style="width: 494px;" %)AT+ RX2WTO 1110 -|(% style="width:190px" %)**Command Example**|(% style="width:199px" %)**Function**|(% style="width:104px" %)**Response** 1090 +(% border="1" style="background-color:#f2f2f2; width:497.222px" %) 1091 +|(% style="background-color:#4f81bd; color:white; width:190px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:199px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:104px" %)**Response** 1111 1111 |(% style="width:190px" %)AT+RX2WTO=?|(% style="width:199px" %)Get RXwindows2 timeout|(% style="width:104px" %)7((( 1112 1112 OK 1113 1113 ))) 1114 1114 |(% style="width:190px" %)AT+RX2WTO=20|(% style="width:199px" %)Set RXwindows2 timeout|(% style="width:104px" %)OK 1115 1115 1097 +(% style="display:none" %) (%%) 1116 1116 1117 1117 == 7.22 Setting up uplinkdwelltime (as923, au915) == 1118 1118 ... ... @@ -1122,9 +1122,8 @@ 1122 1122 1123 1123 (% style="color:blue" %)**AT Command: AT+DWELLT** 1124 1124 1125 -(% border="1" style="background-color:#ffffcc; color:green; width:497.222px" %) 1126 -|=(% colspan="3" style="width: 494px;" %)AT+DWELLT 1127 -|(% style="width:183px" %)**Command Example**|(% style="width:179px" %)**Function**|(% style="width:131px" %)**Response** 1107 +(% border="1" style="background-color:#f2f2f2; width:497.222px" %) 1108 +|(% style="background-color:#4f81bd; color:white; width:183px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:179px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:131px" %)**Response** 1128 1128 |(% style="width:183px" %)AT+DWELLT=?|(% style="width:179px" %)Get uplinkdwelltime|(% style="width:131px" %)1((( 1129 1129 OK 1130 1130 ))) ... ... @@ -1139,6 +1139,7 @@ 1139 1139 * **Example 1**: Downlink Payload: **2501** ~/~/ set uplinkdwelltime to 1 1140 1140 * **Example 2**: Downlink Payload: **2500** ~/~/ set uplinkdwelltime to 0 1141 1141 1123 +(% style="display:none" %) (%%) 1142 1142 1143 1143 == 7.23 Set Packet Receiving Response Level == 1144 1144 ... ... @@ -1146,7 +1146,7 @@ 1146 1146 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. 1147 1147 1148 1148 1149 -**RPL value:** 1131 +(% style="color:blue" %)**RPL value:** 1150 1150 1151 1151 * **AT+RPL=0:** Device won't immediately reply any downlink commands from platform. 1152 1152 * **AT+RPL=1:** Device will immediately reply message to Unconfirmed Data Down. Payload is 0x00. ... ... @@ -1154,7 +1154,7 @@ 1154 1154 * **AT+RPL=3:** Device will immediately reply message to MAC Command. Payload is 0x00 and requied response header for this command. 1155 1155 * **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. 1156 1156 1157 -**Case Analyes:** 1139 +(% style="color:blue" %)**Case Analyes:** 1158 1158 1159 1159 * For Class A devices, AT+RPL=0 is ok. that is defaut settings in software. 1160 1160 * For Class C devices used in ChirpStack, need to set AT+RPL=4 because Chirpstack require immedietely reply message to MAC Command. ... ... @@ -1162,9 +1162,8 @@ 1162 1162 1163 1163 (% style="color:blue" %)**AT Command: AT+RPL** 1164 1164 1165 -(% border="1" style="background-color:#ffffcc; color:green; width:536.222px" %) 1166 -|=(% colspan="3" style="width: 533px;" %)AT+RPL 1167 -|(% style="width:160px" %)**Command Example**|(% style="width:263px" %)**Function**|(% style="width:109px" %)**Response** 1147 +(% border="1" style="background-color:#f2f2f2; width:536.222px" %) 1148 +|(% 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** 1168 1168 |(% style="width:160px" %)AT+RPL=?|(% style="width:263px" %)Get packet receiving response level|(% style="width:109px" %)1((( 1169 1169 OK 1170 1170 ))) ... ... @@ -1179,6 +1179,7 @@ 1179 1179 * **Example 1**: Downlink Payload: **2101** ~/~/ set packet receiving response level to 1 1180 1180 * **Example 2**: Downlink Payload: **2102** ~/~/ set packet receiving response level to 2 1181 1181 1163 +(% style="display:none" %) (%%) 1182 1182 1183 1183 == 7.24 Controls NBTrans in unconfirmed uplink mode(LWS007 NBTrans:Set retransmission packets) == 1184 1184 ... ... @@ -1185,13 +1185,12 @@ 1185 1185 1186 1186 (% style="color:blue" %)**AT Command: AT+SETMAXNBTRANS ** 1187 1187 1188 -(% border="1" style="background-color:#ffffcc; color:green; width:589px" %) 1189 -|=(% colspan="3" style="width: 586px;" %)AT+**SETMAXNBTRANS** 1190 -|(% style="width:227px" %)**Command Example**|(% style="width:300px" %)**Function**|(% style="width:87px" %)**Response** 1191 -|(% style="width:227px" %)**AT+SETMAXNBTRANS=1,0**|(% style="width:300px" %)Value1: set the maximum NBTrans.|(% style="width:87px" %)1((( 1170 +(% border="1" style="background-color:#f2f2f2; width:589px" %) 1171 +|(% 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** 1172 +|(% style="width:227px" %)AT+SETMAXNBTRANS=1,0|(% style="width:300px" %)Value1: set the maximum NBTrans.|(% style="width:87px" %)1((( 1192 1192 OK 1193 1193 ))) 1194 -|(% style="width:227px" %) **AT+SETMAXNBTRANS=?,1**|(% style="width:300px" %)(((1175 +|(% style="width:227px" %)AT+SETMAXNBTRANS=?,1|(% style="width:300px" %)((( 1195 1195 value2: 0: uplink fcnt doesn't change for each NBTrans; 1196 1196 1197 1197 1: uplink fcnt increase by 1 for each NBTrans. ... ... @@ -1210,6 +1210,7 @@ 1210 1210 * Example 1: Downlink Payload: 330100 ~/~/ Set AT+SETMAXNBTRANS=1,0 1211 1211 * Example 2: Downlink Payload: 330201 ~/~/ Set AT+SETMAXNBTRANS=2,1 1212 1212 1194 +(% style="display:none" %) (%%) 1213 1213 1214 1214 == 7.25 Device offline rejoining (LWS007) == 1215 1215 ... ... @@ -1221,9 +1221,8 @@ 1221 1221 * ACK_Timout_1: Unit: min 1222 1222 * ACK_Timout_2: Unit: min 1223 1223 1224 -(% border="1" style="background-color:#ffffcc; color:green; width:710.222px" %) 1225 -|=(% colspan="3" style="width: 707px;" %)AT+**DDETECT** 1226 -|(% style="width:160px" %)**Command Example**|(% style="width:198px" %)**Function**|(% style="width:349px" %)**Response** 1206 +(% border="1" style="background-color:#f2f2f2; width:710.222px" %) 1207 +|(% 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** 1227 1227 |(% style="width:160px" %)((( 1228 1228 AT+DDETECT=1,1440,2880 1229 1229 ... ... @@ -1264,6 +1264,7 @@ 1264 1264 ** 0x0B40: ACK_Timout_2 : 2880minutes (48 hours) 1265 1265 ** **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. 1266 1266 1248 +(% style="display:none" %) (%%) 1267 1267 1268 1268 == 7.26 Request the server to send an ACK == 1269 1269 ... ... @@ -1270,18 +1270,17 @@ 1270 1270 1271 1271 (% style="color:blue" %)**AT Command: AT+PNACKMD** 1272 1272 1273 -(% border="1" style="background-color:#ffffcc; color:green; width:536.222px" %) 1274 -|=(% colspan="3" style="width: 533px;" %)**AT+PNACKMD** 1275 -|(% style="width:160px" %)**Command Example**|(% style="width:263px" %)**Function**|(% style="width:109px" %)**Response** 1276 -|(% 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((( 1255 +(% border="1" style="background-color:#f2f2f2; width:536.222px" %) 1256 +|(% 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** 1257 +|(% 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((( 1277 1277 OK 1278 1278 ))) 1279 -|(% style="width:160px" %) **AT+PNACKMD=0**|(% style="width:263px" %)off request the server to send an ACK|(% style="width:109px" %)(((1260 +|(% style="width:160px" %)AT+PNACKMD=0|(% style="width:263px" %)off request the server to send an ACK|(% style="width:109px" %)((( 1280 1280 0 1281 - 1282 1282 OK 1283 1283 ))) 1284 1284 1265 +(% style="display:none" %) (%%) 1285 1285 1286 1286 == 7.27 Adjust network rejoining interval == 1287 1287 ... ... @@ -1288,9 +1288,8 @@ 1288 1288 1289 1289 (% style="color:blue" %)**AT Command: AT+RJTDC** 1290 1290 1291 -(% border="1" style="background-color:#ffffcc; color:green; width:727.222px" %) 1292 -|=(% colspan="3" style="width: 724px;" %)AT+RJTDC 1293 -|(% style="width:165px" %)**Command Example**|(% style="width:227px" %)**Function**|(% style="width:329px" %)**Response** 1272 +(% border="1" style="background-color:#f2f2f2; width:727.222px" %) 1273 +|(% 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** 1294 1294 |(% style="width:165px" %)AT+RJTDC=?|(% style="width:227px" %)Show the ReJoin data transmission interval in min|(% style="width:329px" %)30((( 1295 1295 OK 1296 1296 ... ... @@ -1306,9 +1306,10 @@ 1306 1306 1307 1307 If the downlink payload=26000A, it means set end node to use confirm mode, while type code is 26. 1308 1308 1309 -* **Example 1:** Downlink Payload: 26000A ~/~/ Set AT+RJTDC=10 1310 -* **Example 2: **Downlink Payload: 260002 ~/~/ Set AT+RJTDC=2 1289 +* **Example 1:** Downlink Payload: 26000A ~/~/ Set AT+RJTDC=10 1290 +* **Example 2: **Downlink Payload: 260002 ~/~/ Set AT+RJTDC=2 1311 1311 1292 +(% style="display:none" %) (%%) 1312 1312 1313 1313 = 8. AT Commands Combination = 1314 1314 ... ... @@ -1315,10 +1315,12 @@ 1315 1315 == 8.1 Set a fix RX2DR for downlink window == 1316 1316 1317 1317 1318 -* (% style="color:blue" %)**AT+ADR=0 **(%%) **~-~->** Disable ADR first 1319 -* (% style="color:blue" %)**AT+RX2DR=xxxx** (%%) **~-~->** Set xxxx to your wanted DataRate 1299 +* (% style="color:blue" %)**AT+ADR=0 **(%%) **~/~/** Disable ADR first 1320 1320 1301 +* (% style="color:blue" %)**AT+RX2DR=xxxx** (%%) **~/~/** Set xxxx to your wanted DataRate 1321 1321 1303 +(% style="display:none" %) (%%) 1304 + 1322 1322 == 8.2 Use Downlink Command to set a fix uplink DR == 1323 1323 1324 1324 ... ... @@ -1327,7 +1327,9 @@ 1327 1327 **Same as:** 1328 1328 1329 1329 * AT+ADR=0 [[Reference>>||anchor="H7.1AdaptiveDataRate"]] 1313 + 1330 1330 * AT+DR=5 [[Reference>>||anchor="H7.4DataRate"]] 1315 + 1331 1331 * AT+TXP=0 [[Reference>>||anchor="H7.14TransmitPower"]] 1332 1332 1333 1333