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. Bei1 +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,21 +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 30 = 3. Support End Node and firmware version = 31 31 32 32 33 -(% border="1" style="background-color:#ffffcc; color:green; width:966px" %) 34 -|=(% colspan="3" style="width: 963px;" %)((( 35 35 Dragino STM32 base hardware Firmware / LoRaWAN stack list 36 -))) 35 + 36 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:966px" %) 37 +|(% style="background-color:#4f81bd; color:white; width:187px" %)((( 38 +**Model**)))|(% style="background-color:#4f81bd; color:white; width:330px" %)((( 39 +**Description**)))|(% style="background-color:#4f81bd; color:white; width:445px" %)((( 40 +**Firmware Version <~-~-> Stack Version**))) 37 37 |(% style="width:187px" %)((( 38 -**Model** 39 -)))|(% style="width:330px" %)((( 40 -**Description** 41 -)))|(% style="width:445px" %)((( 42 -**Firmware Version <~-~-> Stack Version** 43 -))) 44 -|(% style="width:187px" %)((( 45 45 [[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]], 46 46 )))|(% style="width:330px" %)((( 47 47 Open Source Generic LoRaWAN Sensor Node ... ... @@ -101,6 +101,7 @@ 101 101 ))) 102 102 ))) 103 103 101 +(% style="display:none" %) (%%) 104 104 105 105 = 4. System Management Commands = 106 106 ... ... @@ -112,9 +112,8 @@ 112 112 113 113 (% style="color:blue" %)**AT Command: AT+TDC** 114 114 115 -(% border="1" style="background-color:#ffffcc; color:green; width:727.222px" %) 116 -|=(% colspan="3" style="width: 724px;" %)AT+TDC 117 -|(% style="width:165px" %)**Command Example**|(% style="width:227px" %)**Function**|(% style="width:329px" %)**Response** 113 +(% border="1" style="background-color:#f2f2f2; width:727.222px" %) 114 +|(% 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** 118 118 |(% style="width:165px" %)AT+TDC=?|(% style="width:227px" %)Show current transmit Interval|(% style="width:329px" %)30000((( 119 119 OK 120 120 ... ... @@ -139,6 +139,7 @@ 139 139 * **Example 1**: Downlink Payload:** 0100001E** ~/~/ Set Transmit Interval (TDC) = 30 seconds 140 140 * **Example 2**: Downlink Payload:** 0100003C** ~/~/ Set Transmit Interval (TDC) = 60 seconds 141 141 139 +(% style="display:none" %) (%%) 142 142 143 143 == 4.2 Reboot End Node == 144 144 ... ... @@ -148,9 +148,9 @@ 148 148 149 149 (% style="color:blue" %)**AT Command: ATZ** 150 150 151 -(% border="1" style="background-color:#fff fcc;color:green;width:546px" %)152 -|=(% colspan="3" style="width: 543px;" %)ATZ: Trig a reset of the MCU 153 -|(% style="width:157px" %)**Command Example**|(% style="width:92px" %)**Function**|(% style="width:294px" %)**Response** 149 +(% border="1" style="background-color:#f2f2f2; width:546px" %) 150 +|=(% colspan="3" style="width: 543px;background-color:#D9E2F3;color:#0070C0" %)ATZ: Trig a reset of the MCU 151 +|(% style="color:#0070c0; width:157px" %)**Command Example**|(% style="color:#0070c0; width:92px" %)**Function**|(% style="color:#0070c0; width:294px" %)**Response** 154 154 |(% style="width:157px" %)ATZ|(% style="width:92px" %)Reset MCU|(% style="width:294px" %)((( 155 155 Device reset and show booting info 156 156 ... ... @@ -172,11 +172,10 @@ 172 172 ))) 173 173 174 174 ((( 175 -If the downlink payload=**04FF**, the end node will reboot. 176 - 177 - 173 +If the downlink payload=**04FF**, the end node will reboot. 178 178 ))) 179 179 176 + 180 180 == 4.3 Reset to factory Default == 181 181 182 182 ... ... @@ -185,9 +185,9 @@ 185 185 186 186 (% style="color:blue" %)**AT Command: AT+FDR** 187 187 188 -(% border="1" style="background-color:#fff fcc;color:green;width:789px" %)189 -|=(% colspan="3" style="width: 786px;" %)Reset to factory default 190 -|(% style="width:154px" %)**Command Example**|(% style="width:175px" %)**Function**|(% style="width:456px" %)**Response** 185 +(% border="1" style="background-color:#f2f2f2; width:789px" %) 186 +|=(% colspan="3" style="width: 786px;background-color:#D9E2F3;color:#0070C0" %)Reset to factory default 187 +|(% style="color:#0070c0; width:154px" %)**Command Example**|(% style="color:#0070c0; width:175px" %)**Function**|(% style="color:#0070c0; width:456px" %)**Response** 191 191 |(% style="width:154px" %)AT+FDR|(% style="width:175px" %)Reset to factory default|(% style="width:456px" %)((( 192 192 Device reset to factory default parameters and show booting info 193 193 ... ... @@ -221,9 +221,9 @@ 221 221 222 222 (% style="color:blue" %)**AT Command: AT+VER** 223 223 224 -(% border="1" style="background-color:#fff fcc;color:green;width:542px" %)225 -|=(% colspan="3" style="width: 539px;" %)AT+VER: Image Version and Frequency Band 226 -|(% style="width:157px" %)**Command Example**|(% style="width:295px" %)**Function**|(% style="width:86px" %)**Response** 221 +(% border="1" style="background-color:#f2f2f2; width:542px" %) 222 +|=(% colspan="3" style="width: 539px;background-color:#D9E2F3;color:#0070C0" %)AT+VER: Image Version and Frequency Band 223 +|(% style="color:#0070c0; width:157px" %)**Command Example**|(% style="color:#0070c0; width:295px" %)**Function**|(% style="color:#0070c0; width:86px" %)**Response** 227 227 |(% style="width:157px" %)AT+VER=?|(% style="width:295px" %)Show Image version and Frequency Band|(% style="width:86px" %)((( 228 228 1.3 EU868 229 229 ... ... @@ -284,23 +284,19 @@ 284 284 285 285 (% style="color:blue" %)**AT Command: AT+CFG** 286 286 287 -(% border="1" style="background-color:#fff fcc;color:green;width:599.222px" %)288 -|=(% colspan="3" style="width: 596px;" %)AT+CFG: Print all configurations 289 -|(% style="width:160px" %)**Command Example**|(% style="width:154px" %)**Function**|(% style="width:280px" %)**Response** 284 +(% border="1" style="background-color:#f2f2f2; width:599.222px" %) 285 +|=(% colspan="3" style="width: 596px;background-color:#D9E2F3;color:#0070C0" %)AT+CFG: Print all configurations 286 +|(% style="color:#0070c0; width:160px" %)**Command Example**|(% style="color:#0070c0; width:154px" %)**Function**|(% style="color:#0070c0; width:280px" %)**Response** 290 290 |(% style="width:160px" %)AT+CFG|(% style="width:154px" %)Show all configures|(% style="width:280px" %)((( 291 291 AT+DEUI = XX XX XX XX XX XX XX XX 292 - 293 293 AT+DADDR=XXXXXXXX 294 - 295 295 ………. 296 - 297 297 AT+RX2WTO=X 298 - 299 299 AT+CHS=868100000 300 - 301 301 OK 302 302 ))) 303 303 296 +(% style="display:none" %) (%%) 304 304 305 305 = 5. Keys, IDs and EUIs management = 306 306 ... ... @@ -312,14 +312,15 @@ 312 312 313 313 (% style="color:blue" %)**AT Command: AT+APPEUI** 314 314 315 -(% border="1" style="background-color:#fff fcc;color:green;width:686.222px" %)316 -|=(% colspan="3" style="width: 683px;" %)AT+APPEUI 317 -|(% style="width:305px" %)**Command Example**|(% style="width:186px" %)**Function**|(% style="width:191px" %)**Response** 308 +(% border="1" style="background-color:#f2f2f2; width:686.222px" %) 309 +|=(% colspan="3" style="width: 683px;background-color:#D9E2F3;color:#0070C0" %)AT+APPEUI 310 +|(% style="color:#0070c0; width:305px" %)**Command Example**|(% style="color:#0070c0; width:186px" %)**Function**|(% style="color:#0070c0; width:191px" %)**Response** 318 318 |(% style="width:305px" %)AT+APPEUI=?|(% style="width:186px" %)Get the Application EUI|(% style="width:191px" %)00 b3 d5 00 00 00 00 00((( 319 319 OK 320 320 ))) 321 321 |(% style="width:305px" %)AT+APPEUI=00 b3 d5 7e f0 00 4d 34|(% style="width:186px" %)Set the Application EUI|(% style="width:191px" %)OK 322 322 316 +(% style="display:none" %) (%%) 323 323 324 324 == 5.2 Application Key == 325 325 ... ... @@ -329,14 +329,15 @@ 329 329 330 330 (% style="color:blue" %)**AT Command: AT+APPKEY** 331 331 332 -(% border="1" style="background-color:#fff fcc;color:green;width:976.222px" %)333 -|=(% colspan="3" style="width: 973px;" %)AT+APPKEY 334 -|(% style="width:441px" %)**Command Example**|(% style="width:180px" %)**Function**|(% style="width:350px" %)**Response** 326 +(% border="1" style="background-color:#f2f2f2; width:976.222px" %) 327 +|=(% colspan="3" style="width: 973px;background-color:#D9E2F3;color:#0070C0" %)AT+APPKEY 328 +|(% style="color:#0070c0; width:441px" %)**Command Example**|(% style="color:#0070c0; width:180px" %)**Function**|(% style="color:#0070c0; width:350px" %)**Response** 335 335 |(% 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((( 336 336 OK 337 337 ))) 338 338 |(% 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 339 339 334 +(% style="display:none" %) (%%) 340 340 341 341 == 5.3 Application Session Key == 342 342 ... ... @@ -346,9 +346,9 @@ 346 346 347 347 (% style="color:blue" %)**AT Command: AT+APPSKEY** 348 348 349 -(% border="1" style="background-color:#fff fcc;color:green;width:1040.22px" %)350 -|=(% colspan="3" style="width: 1037px;" %)AT+APPSKEY 351 -|(% style="width:451px" %)**Command Example**|(% style="width:231px" %)**Function**|(% style="width:354px" %)**Response** 344 +(% border="1" style="background-color:#f2f2f2; width:1040.22px" %) 345 +|=(% colspan="3" style="width: 1037px;background-color:#D9E2F3;color:#0070C0" %)AT+APPSKEY 346 +|(% style="color:#0070c0; width:451px" %)**Command Example**|(% style="color:#0070c0; width:231px" %)**Function**|(% style="color:#0070c0; width:354px" %)**Response** 352 352 |(% 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((( 353 353 OK 354 354 ))) ... ... @@ -356,6 +356,7 @@ 356 356 OK 357 357 ))) 358 358 354 +(% style="display:none" %) (%%) 359 359 360 360 == 5.4 Device Address == 361 361 ... ... @@ -365,9 +365,9 @@ 365 365 366 366 (% style="color:blue" %)**AT Command: AT+DADDR** 367 367 368 -(% border="1" style="background-color:#fff fcc;color:green;width:795.222px" %)369 -|=(% colspan="3" style="width: 792px;" %)AT+DADDR 370 -|(% style="width:192px" %)**Command Example**|(% style="width:241px" %)**Function**|(% style="width:359px" %)**Response** 364 +(% border="1" style="background-color:#f2f2f2; width:795.222px" %) 365 +|=(% colspan="3" style="width: 792px;background-color:#D9E2F3;color:#0070C0" %)AT+DADDR 366 +|(% style="color:#0070c0; width:192px" %)**Command Example**|(% style="color:#0070c0; width:241px" %)**Function**|(% style="color:#0070c0; width:359px" %)**Response** 371 371 |(% style="width:192px" %)AT+DADDR=?|(% style="width:241px" %)Get the Application Session Key.|(% style="width:359px" %)(While Error in format, return AT_PARAM_ERROR)((( 372 372 A8 40 41 FF 373 373 ... ... @@ -375,6 +375,7 @@ 375 375 ))) 376 376 |(% style="width:192px" %)AT+DADDR=A8 40 41 FF|(% style="width:241px" %)Set the Application Session Key.|(% style="width:359px" %)OK 377 377 374 +(% style="display:none" %) (%%) 378 378 379 379 == 5.5 Device EUI == 380 380 ... ... @@ -384,9 +384,9 @@ 384 384 385 385 (% style="color:blue" %)**AT Command: AT+DEUI** 386 386 387 -(% border="1" style="background-color:#fff fcc;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** 384 +(% border="1" style="background-color:#f2f2f2; width:1035.22px" %) 385 +|=(% colspan="3" style="width: 1032px;background-color:#D9E2F3;color:#0070C0" %)AT+DEUI 386 +|(% style="color:#0070c0; width:250px" %)**Command Example**|(% style="color:#0070c0; width:147px" %)**Function**|(% style="color:#0070c0; width:634px" %)**Response** 390 390 |(% style="width:250px" %)AT+DEUI=?|(% style="width:147px" %)Get the Device EUI.|(% style="width:634px" %)00 44 34 22 33 45 55 55((( 391 391 OK 392 392 ))) ... ... @@ -394,6 +394,7 @@ 394 394 OK 395 395 ))) 396 396 394 +(% style="display:none" %) (%%) 397 397 398 398 == 5.6 Network ID == 399 399 ... ... @@ -403,14 +403,15 @@ 403 403 404 404 (% style="color:blue" %)**AT Command: AT+NWKID** 405 405 406 -(% border="1" style="background-color:#fff fcc;color:green;width:448.222px" %)407 -|=(% colspan="3" style="width: 445px;" %)AT+NWKID 408 -|(% style="width:191px" %)**Command Example**|(% style="width:153px" %)**Function**|(% style="width:101px" %)**Response** 404 +(% border="1" style="background-color:#f2f2f2; width:448.222px" %) 405 +|=(% colspan="3" style="width: 445px;background-color:#D9E2F3;color:#0070C0" %)AT+NWKID 406 +|(% style="color:#0070c0; width:191px" %)**Command Example**|(% style="color:#0070c0; width:153px" %)**Function**|(% style="color:#0070c0; width:101px" %)**Response** 409 409 |(% style="width:191px" %)AT+NWKID=?|(% style="width:153px" %)Get the Network ID.|(% style="width:101px" %)a8 40 41 ff((( 410 410 OK 411 411 ))) 412 412 |(% style="width:191px" %)AT+NWKID=A8 40 41 FF|(% style="width:153px" %)Set the Network ID.|(% style="width:101px" %)OK 413 413 412 +(% style="display:none" %) (%%) 414 414 415 415 == 5.7 Network Session Key == 416 416 ... ... @@ -420,14 +420,15 @@ 420 420 421 421 (% style="color:blue" %)**AT Command: AT+NWKSKEY** 422 422 423 -(% border="1" style="background-color:#fff fcc;color:green;width:1017.22px" %)424 -|=(% colspan="3" style="width: 1014px;" %)AT+NWKSKEY 425 -|(% style="width:455px" %)**Command Example**|(% style="width:215px" %)**Function**|(% style="width:343px" %)**Response** 422 +(% border="1" style="background-color:#f2f2f2; width:1017.22px" %) 423 +|=(% colspan="3" style="width: 1014px;background-color:#D9E2F3;;color:#0070C0" %)AT+NWKSKEY 424 +|(% style="color:#0070c0; width:455px" %)**Command Example**|(% style="color:#0070c0; width:215px" %)**Function**|(% style="color:#0070c0; width:343px" %)**Response** 426 426 |(% 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((( 427 427 OK 428 428 ))) 429 429 |(% 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 430 430 430 +(% style="display:none" %) (%%) 431 431 432 432 = 6. Joining and sending date on LoRaWAN network = 433 433 ... ... @@ -441,9 +441,9 @@ 441 441 442 442 (% style="color:blue" %)**AT Command: AT+CFM** 443 443 444 -(% border="1" style="background-color:#fff fcc;color:green;width:710.222px" %)445 -|=(% colspan="3" style="width: 707px;" %)AT+CFM 446 -|(% style="width:155px" %)**Command Example**|(% style="width:205px" %)**Function**|(% style="width:346px" %)**Response** 444 +(% border="1" style="background-color:#f2f2f2; width:710.222px" %) 445 +|=(% colspan="3" style="width: 707px;background-color:#D9E2F3;color:#0070C0" %)AT+CFM 446 +|(% style="color:#0070c0; width:155px" %)**Command Example**|(% style="color:#0070c0; width:205px" %)**Function**|(% style="color:#0070c0; width:346px" %)**Response** 447 447 |(% style="width:155px" %)AT+CFM=?|(% style="width:205px" %)Get the confirmation mode|(% style="width:346px" %)0((( 448 448 OK 449 449 ))) ... ... @@ -459,6 +459,7 @@ 459 459 * **Example 1:** Downlink Payload: 0501 ~/~/ Set AT+CFM=1 460 460 * **Example 2:** Downlink Payload: 0500 ~/~/ Set AT+CFM=0 461 461 462 +(% style="display:none" %) (%%) 462 462 463 463 === 6.1.2 AT+CFM command since DR-LWS007 software stack === 464 464 ... ... @@ -465,9 +465,9 @@ 465 465 466 466 (% style="color:blue" %)**AT Command: AT+CFM** 467 467 468 -(% border="1" style="background-color:#fff fcc;color:green;width:710.222px" %)469 -|=(% colspan="3" style="width: 707px;" %)AT+CFM 470 -|(% style="width:160px" %)**Command Example**|(% style="width:198px" %)**Function**|(% style="width:349px" %)**Response** 469 +(% border="1" style="background-color:#f2f2f2; width:710.222px" %) 470 +|=(% colspan="3" style="width: 707px;background-color:#D9E2F3;color:#0070C0" %)AT+CFM 471 +|(% style="color:#0070c0; width:160px" %)**Command Example**|(% style="color:#0070c0; width:198px" %)**Function**|(% style="color:#0070c0; width:349px" %)**Response** 471 471 |(% style="width:160px" %)((( 472 472 AT+CFM=1,0,0 473 473 ... ... @@ -505,6 +505,7 @@ 505 505 * **Example 1:** Downlink Payload: 05010101 ~/~/ Set AT+CFM=1,1,1 506 506 * **Example 2:** Downlink Payload: 05000700 ~/~/ Set AT+CFM=0,7,0 507 507 509 +(% style="display:none" %) (%%) 508 508 509 509 == 6.2 Confirm Status == 510 510 ... ... @@ -514,13 +514,14 @@ 514 514 515 515 (% style="color:blue" %)**AT Command: AT+CFS** 516 516 517 -(% border="1" style="background-color:#fff fcc;color:green;width:534.222px" %)518 -|=(% colspan="3" style="width: 531px;" %)AT+CFS519 -|(% style="width:156px" %)**Command Example**|(% style="width:193px" %)**Function**|(% style="width:17 8px" %)**Response**520 -|(% style="width:156px" %)AT+CFS=?|(% style="width:193px" %)Get confirmation status|(% style="width:17 8px" %)0(((519 +(% border="1" style="background-color:#f2f2f2; width:463px" %) 520 +|=(% colspan="3" style="width: 460px;background-color:#D9E2F3;color:#0070C0" %)AT+CFS 521 +|(% style="color:#0070c0; width:156px" %)**Command Example**|(% style="color:#0070c0; width:193px" %)**Function**|(% style="color:#0070c0; width:107px" %)**Response** 522 +|(% style="width:156px" %)AT+CFS=?|(% style="width:193px" %)Get confirmation status|(% style="width:107px" %)0((( 521 521 OK 522 522 ))) 523 523 526 +(% style="display:none" %) (%%) 524 524 525 525 == 6.3 Join LoRa® Network == 526 526 ... ... @@ -530,15 +530,15 @@ 530 530 531 531 (% style="color:blue" %)**AT Command: AT+JOIN** 532 532 533 -(% border="1" style="background-color:#fff fcc;color:green;width:647.222px" %)534 -|=(% colspan="3" style="width: 644px;" %)AT+JOIN 535 -|(% style="width:163px" %)**Command Example**|(% style="width:147px" %)**Function**|(% style="width:334px" %)**Response** 536 +(% border="1" style="background-color:#f2f2f2; width:647.222px" %) 537 +|=(% colspan="3" style="width: 644px;background-color:#D9E2F3;color:#0070C0" %)AT+JOIN 538 +|(% style="color:#0070c0; width:163px" %)**Command Example**|(% style="color:#0070c0; width:147px" %)**Function**|(% style="color:#0070c0; width:334px" %)**Response** 536 536 |(% style="width:163px" %)AT+JOIN ?|(% style="width:147px" %)Get imformation.|(% style="width:334px" %)AT+JOIN: Join network((( 537 537 OK 538 - 539 539 While Error in format, return AT_BUSY_ERROR 540 540 ))) 541 541 544 +(% style="display:none" %) (%%) 542 542 543 543 == 6.4 LoRa® Network Join Mode == 544 544 ... ... @@ -548,9 +548,9 @@ 548 548 549 549 (% style="color:blue" %)**AT Command: AT+NJM** 550 550 551 -(% border="1" style="background-color:#fff fcc;color:green;width:753.222px" %)552 -|=(% colspan="3" style="width: 750px;" %)AT+NJM 553 -|(% style="width:162px" %)**Command Example**|(% style="width:227px" %)**Function**|(% style="width:361px" %)**Response** 554 +(% border="1" style="background-color:#f2f2f2; width:753.222px" %) 555 +|=(% colspan="3" style="width: 750px;background-color:#D9E2F3;color:#0070C0" %)AT+NJM 556 +|(% style="color:#0070c0; width:162px" %)**Command Example**|(% style="color:#0070c0; width:227px" %)**Function**|(% style="color:#0070c0; width:361px" %)**Response** 554 554 |(% style="width:162px" %)AT+NJM=?|(% style="width:227px" %)Get the Network Join Mode|(% style="width:361px" %)1((( 555 555 OK 556 556 ))) ... ... @@ -566,6 +566,7 @@ 566 566 * **Example 1: **Downlink Payload: **2000 ** ~/~/ Set AT+NJM=0 567 567 * **Example 2:** Downlink Payload: **2001** ~/~/ Set AT+NJM=1 568 568 572 +(% style="display:none" %) (%%) 569 569 570 570 == 6.5 LoRa® Network Join Status == 571 571 ... ... @@ -575,13 +575,14 @@ 575 575 576 576 (% style="color:blue" %)**AT Command: AT+NJS** 577 577 578 -(% border="1" style="background-color:#fff fcc;color:green;width:498.222px" %)579 -|=(% colspan="3" style="width: 495px;" %)AT+NJS 580 -|(% style="width:169px" %)**Command Example**|(% style="width:164px" %)**Function**|(% style="width:161px" %)**Response** 582 +(% border="1" style="background-color:#f2f2f2; width:498.222px" %) 583 +|=(% colspan="3" style="width: 495px;background-color:#D9E2F3;color:#0070C0" %)AT+NJS 584 +|(% style="color:#0070c0; width:169px" %)**Command Example**|(% style="color:#0070c0; width:164px" %)**Function**|(% style="color:#0070c0; width:161px" %)**Response** 581 581 |(% style="width:169px" %)AT+NJS=?|(% style="width:164px" %)Get the join status.|(% style="width:161px" %)0((( 582 582 OK 583 583 ))) 584 584 589 +(% style="display:none" %) (%%) 585 585 586 586 == 6.6 Print Last Received Data in Raw Format == 587 587 ... ... @@ -591,13 +591,14 @@ 591 591 592 592 (% style="color:blue" %)**AT Command: AT+RECV** 593 593 594 -(% border="1" style="background-color:#fff fcc;color:green;width:587.222px" %)595 -|=(% colspan="3" style="width: 584px;" %)AT+RECV 596 -|(% style="width:161px" %)**Command Example**|(% style="width:272px" %)**Function**|(% style="width:150px" %)**Response** 599 +(% border="1" style="background-color:#f2f2f2; width:587.222px" %) 600 +|=(% colspan="3" style="width: 584px;background-color:#D9E2F3;color:#0070C0" %)AT+RECV 601 +|(% style="color:#0070c0; width:161px" %)**Command Example**|(% style="color:#0070c0; width:272px" %)**Function**|(% style="color:#0070c0; width:150px" %)**Response** 597 597 |(% style="width:161px" %)AT+RECV=?|(% style="width:272px" %)print last received data in raw format.|(% style="width:150px" %)0:((( 598 598 OK 599 599 ))) 600 600 606 +(% style="display:none" %) (%%) 601 601 602 602 == 6.7 Print Last Received Data in Binary Format == 603 603 ... ... @@ -607,13 +607,14 @@ 607 607 608 608 (% style="color:blue" %)**AT Command: AT+RECVB** 609 609 610 -(% border="1" style="background-color:#fff fcc;color:green;width:793.222px" %)611 -|=(% colspan="3" style="width: 790px;" %)AT+RECVB 612 -|(% style="width:173px" %)**Command Example**|(% style="width:497px" %)**Function**|(% style="width:120px" %)**Response** 616 +(% border="1" style="background-color:#f2f2f2; width:793.222px" %) 617 +|=(% colspan="3" style="width: 790px;background-color:#D9E2F3;color:#0070C0" %)AT+RECVB 618 +|(% style="color:#0070c0; width:173px" %)**Command Example**|(% style="color:#0070c0; width:497px" %)**Function**|(% style="color:#0070c0; width:120px" %)**Response** 613 613 |(% style="width:173px" %)AT+RECVB=?|(% style="width:497px" %)print last received data in binary format (with hexadecimal values).|(% style="width:120px" %)2: 0010((( 614 614 OK 615 615 ))) 616 616 623 +(% style="display:none" %) (%%) 617 617 618 618 == 6.8 Send Text Data == 619 619 ... ... @@ -623,17 +623,15 @@ 623 623 624 624 (% style="color:blue" %)**AT Command: AT+SEND** 625 625 626 -(% border="1" style="background-color:#fff fcc;color:green;width:991.222px" %)627 -|=(% colspan="3" style="width: 988px;" %)AT+SEND 628 -|(% style="width:201px" %)**Command Example**|(% style="width:340px" %)**Function**|(% style="width:446px" %)**Response** 633 +(% border="1" style="background-color:#f2f2f2; width:991.222px" %) 634 +|=(% colspan="3" style="width: 988px;background-color:#D9E2F3;color:#0070C0" %)AT+SEND 635 +|(% style="color:#0070c0; width:201px" %)**Command Example**|(% style="color:#0070c0; width:340px" %)**Function**|(% style="color:#0070c0; width:446px" %)**Response** 629 629 |(% style="width:201px" %)AT+SEND=12:hello world|(% style="width:340px" %)Send text data along with the application port.|(% style="width:446px" %)OK((( 630 630 While Error in format, return 631 - 632 632 AT_BUSY_ERROR/AT_BUSY_ERROR/AT_NO_NETWORK_JOINED 633 - 634 - 635 635 ))) 636 636 641 +(% style="display:none" %) (%%) 637 637 638 638 == 6.9 Send Hexadecimal Data == 639 639 ... ... @@ -643,16 +643,15 @@ 643 643 644 644 (% style="color:blue" %)**AT Command: AT+SENDB** 645 645 646 -(% border="1" style="background-color: #ffffcc;color:green;width:1101px" %)647 -|=(% colspan="3" style="width: 1098px;" %)AT+SENDB 648 -|(% style="width:257px" %)**Command Example**|(% style="width:394px" %)**Function**|(% style="width:446px" %)**Response** 651 +(% border="1" style="background-color:f2f2f2; width:1101px" %) 652 +|=(% colspan="3" style="width: 1098px;background-color:#D9E2F3;color:#0070C0" %)AT+SENDB 653 +|(% style="color:#0070c0; width:257px" %)**Command Example**|(% style="color:#0070c0; width:394px" %)**Function**|(% style="color:#0070c0; width:446px" %)**Response** 649 649 |(% style="width:257px" %)AT+SENDB=12:abcdef0123456789|(% style="width:394px" %)Send hexadecimal data along with the application port.|(% style="width:446px" %)OK 650 650 |(% 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((( 651 -AT_PARAM_ERROR AT_BUSY_ERROR/AT_NO_NETWORK_JOINED 652 - 653 - 656 +AT_PARAM_ERROR AT_BUSY_ERROR/AT_NO_NETWORK_JOINED 654 654 ))) 655 655 659 +(% style="display:none" %) (%%) 656 656 657 657 = 7. LoRaWAN network management = 658 658 ... ... @@ -664,9 +664,9 @@ 664 664 665 665 (% style="color:blue" %)**AT Command: AT+ADR** 666 666 667 -(% border="1" style="background-color: #ffffcc;color:green;width:683.222px" %)668 -|=(% colspan="3" style="width: 680px;" %)AT+ADR 669 -|(% style="width:162px" %)**Command Example**|(% style="width:266px" %)**Function**|(% style="width:250px" %)**Response** 671 +(% border="1" style="background-color:f2f2f2; width:683.222px" %) 672 +|=(% colspan="3" style="width: 680px;background-color:#D9E2F3;color:#0070C0" %)AT+ADR 673 +|(% style="color:#0070c0; width:162px" %)**Command Example**|(% style="color:#0070c0; width:266px" %)**Function**|(% style="color:#0070c0; width:250px" %)**Response** 670 670 |(% style="width:162px" %)AT+ADR=?|(% style="width:266px" %)Get the Adaptive Data Rate setting.|(% style="width:250px" %)1((( 671 671 OK 672 672 ))) ... ... @@ -682,6 +682,7 @@ 682 682 * **Example 1**: Downlink Payload: **2201** ~/~/ Set AT+ADR=1. 683 683 * **Example 2**: Downlink Payload: **2200FFFF** ~/~/ Set AT+ADR=0. 684 684 689 +(% style="display:none" %) (%%) 685 685 686 686 == 7.2 LoRa® Class == 687 687 ... ... @@ -691,9 +691,9 @@ 691 691 692 692 (% style="color:blue" %)**AT Command: AT+CLASS** 693 693 694 -(% border="1" style="background-color:#fff fcc;color:green;width:507.222px" %)695 -|=(% colspan="3" style="width: 504px;" %)AT+CLASS 696 -|(% style="width:163px" %)**Command Example**|(% style="width:166px" %)**Function**|(% style="width:175px" %)**Response** 699 +(% border="1" style="background-color:#f2f2f2; width:507.222px" %) 700 +|=(% colspan="3" style="width: 504px;background-color:#D9E2F3;color:#0070C0" %)AT+CLASS 701 +|(% style="color:#0070c0; width:163px" %)**Command Example**|(% style="color:#0070c0; width:166px" %)**Function**|(% style="color:#0070c0; width:175px" %)**Response** 697 697 |(% style="width:163px" %)AT+CLASS=?|(% style="width:166px" %)Get the Device Class.|(% style="width:175px" %)A((( 698 698 OK 699 699 ))) ... ... @@ -701,7 +701,13 @@ 701 701 702 702 ))) 703 703 709 +(% style="display:none" %) 704 704 711 +(% style="color:red" %)**Notice:** 712 + 713 +* Run AT+FDR before running AT+CLASS=C 714 +* 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. 715 + 705 705 == 7.3 Duty Cycle Setting == 706 706 707 707 ... ... @@ -710,9 +710,9 @@ 710 710 711 711 (% style="color:blue" %)**AT Command: AT+DCS** 712 712 713 -(% border="1" style="background-color:#fff fcc;color:green;width:515.222px" %)714 -|=(% colspan="3" style="width: 512px;" %)AT+DCS 715 -|(% style="width:165px" %)**Command Example**|(% style="width:239px" %)**Function**|(% style="width:107px" %)**Response** 724 +(% border="1" style="background-color:#f2f2f2; width:515.222px" %) 725 +|=(% colspan="3" style="width: 512px;background-color:#D9E2F3;color:#0070C0" %)AT+DCS 726 +|(% style="color:#0070c0; width:165px" %)**Command Example**|(% style="color:#0070c0; width:239px" %)**Function**|(% style="color:#0070c0; width:107px" %)**Response** 716 716 |(% style="width:165px" %)AT+DCS=?|(% style="width:239px" %)Get the ETSI Duty Cycle setting.|(% style="width:107px" %)1((( 717 717 OK 718 718 ))) ... ... @@ -720,6 +720,7 @@ 720 720 721 721 ))) 722 722 734 +(% style="display:none" %) (%%) 723 723 724 724 == 7.4 Data Rate == 725 725 ... ... @@ -734,9 +734,9 @@ 734 734 735 735 (% style="color:blue" %)**AT Command: AT+DR** 736 736 737 -(% border="1" style="background-color:#fff fcc;color:green;width:466.222px" %)738 -|=(% colspan="3" style="width: 463px;" %)AT+DR 739 -|(% style="width:156px" %)**Command Example**|(% style="width:167px" %)**Function**|(% style="width:140px" %)**Response** 749 +(% border="1" style="background-color:#f2f2f2; width:466.222px" %) 750 +|=(% colspan="3" style="width: 463px;background-color:#D9E2F3;color:#0070C0" %)AT+DR 751 +|(% style="color:#0070c0; width:156px" %)**Command Example**|(% style="color:#0070c0; width:167px" %)**Function**|(% style="color:#0070c0; width:140px" %)**Response** 740 740 |(% style="width:156px" %)AT+DR=?|(% style="width:167px" %)Get the Data Rate.|(% style="width:140px" %)5((( 741 741 OK 742 742 ))) ... ... @@ -751,6 +751,7 @@ 751 751 * **Example 1**: Downlink Payload: **220001FF** ~/~/ Set AT+DR=1. 752 752 * **Example 2**: Downlink Payload: **220000FF** ~/~/ Set AT+DR=0. 753 753 766 +(% style="display:none" %) (%%) 754 754 755 755 == 7.5 Frame Counter Downlink == 756 756 ... ... @@ -760,9 +760,9 @@ 760 760 761 761 (% style="color:blue" %)**AT Command: AT+FCD** 762 762 763 -(% border="1" style="background-color:#fff fcc;color:green;width:693.222px" %)764 -|=(% colspan="3" style="width: 690px;" %)AT+FCD 765 -|(% style="width:162px" %)**Command Example**|(% style="width:258px" %)**Function**|(% style="width:269px" %)**Response** 776 +(% border="1" style="background-color:#f2f2f2; width:693.222px" %) 777 +|=(% colspan="3" style="width: 690px;background-color:#D9E2F3;color:#0070C0" %)AT+FCD 778 +|(% style="color:#0070c0; width:162px" %)**Command Example**|(% style="color:#0070c0; width:258px" %)**Function**|(% style="color:#0070c0; width:269px" %)**Response** 766 766 |(% style="width:162px" %)AT+FCD=?|(% style="width:258px" %)Get the Frame Counter Downlink.|(% style="width:269px" %)0((( 767 767 OK 768 768 ))) ... ... @@ -770,6 +770,7 @@ 770 770 OK 771 771 ))) 772 772 786 +(% style="display:none" %) (%%) 773 773 774 774 == 7.6 Frame Counter Uplink == 775 775 ... ... @@ -778,9 +778,9 @@ 778 778 779 779 (% style="color:blue" %)**AT Command: AT+FCU** 780 780 781 -(% border="1" style="background-color:#fff fcc;color:green;width:534.222px" %)782 -|=(% colspan="3" style="width: 531px;" %)AT+FCU 783 -|(% style="width:177px" %)**Command Example**|(% style="width:239px" %)**Function**|(% style="width:113px" %)**Response** 795 +(% border="1" style="background-color:#f2f2f2; width:534.222px" %) 796 +|=(% colspan="3" style="width: 531px;background-color:#D9E2F3;color:#0070C0" %)AT+FCU 797 +|(% style="color:#0070c0; width:177px" %)**Command Example**|(% style="color:#0070c0; width:239px" %)**Function**|(% style="color:#0070c0; width:113px" %)**Response** 784 784 |(% style="width:177px" %)AT+FCU=?|(% style="width:239px" %)Get the Frame Counter Uplink.|(% style="width:113px" %)0((( 785 785 OK 786 786 ))) ... ... @@ -788,6 +788,7 @@ 788 788 789 789 ))) 790 790 805 +(% style="display:none" %) (%%) 791 791 792 792 == 7.7 Join Accept Delay1 == 793 793 ... ... @@ -797,9 +797,9 @@ 797 797 798 798 (% style="color:blue" %)**AT Command: AT+JN1DL** 799 799 800 -(% border="1" style="background-color:#fff fcc;color:green;width:537.222px" %)801 -|=(% colspan="3" style="width: 534px;" %)AT+JN1DL 802 -|(% style="width:164px" %)**Command Example**|(% style="width:229px" %)**Function**|(% style="width:140px" %)**Response** 815 +(% border="1" style="background-color:#f2f2f2; width:537.222px" %) 816 +|=(% colspan="3" style="width: 534px;background-color:#D9E2F3;color:#0070C0" %)AT+JN1DL 817 +|(% style="color:#0070c0; width:164px" %)**Command Example**|(% style="color:#0070c0; width:229px" %)**Function**|(% style="color:#0070c0; width:140px" %)**Response** 803 803 |(% style="width:164px" %)AT+JN1DL=?|(% style="width:229px" %)Get the Join Accept Delay.|(% style="width:140px" %)5000((( 804 804 OK 805 805 ))) ... ... @@ -807,6 +807,7 @@ 807 807 808 808 ))) 809 809 825 +(% style="display:none" %) (%%) 810 810 811 811 == 7.8 Join Accept Delay2 == 812 812 ... ... @@ -816,9 +816,9 @@ 816 816 817 817 (% style="color:blue" %)**AT Command: AT+JN2DL** 818 818 819 -(% border="1" style="background-color:#fff fcc;color:green;width:538.222px" %)820 -|=(% colspan="3" style="width: 535px;" %)AT+JN2DL 821 -|(% style="width:160px" %)**Command Example**|(% style="width:228px" %)**Function**|(% style="width:146px" %)**Response** 835 +(% border="1" style="background-color:#f2f2f2; width:538.222px" %) 836 +|=(% colspan="3" style="width: 535px;background-color:#D9E2F3;color:#0070C0" %)AT+JN2DL 837 +|(% style="color:#0070c0; width:160px" %)**Command Example**|(% style="color:#0070c0; width:228px" %)**Function**|(% style="color:#0070c0; width:146px" %)**Response** 822 822 |(% style="width:160px" %)AT+JN2DL=?|(% style="width:228px" %)Get the Join Accept Delay.|(% style="width:146px" %)6000((( 823 823 OK 824 824 ))) ... ... @@ -826,6 +826,7 @@ 826 826 827 827 ))) 828 828 845 +(% style="display:none" %) (%%) 829 829 830 830 == 7.9 Public Network Mode == 831 831 ... ... @@ -837,9 +837,9 @@ 837 837 838 838 (% style="color:blue" %)**AT Command: AT+PNM** 839 839 840 -(% border="1" style="background-color:#fff fcc;color:green;width:667.222px" %)841 -|=(% colspan="3" style="width: 664px;" %)AT+PNM 842 -|(% style="width:166px" %)**Command Example**|(% style="width:225px" %)**Function**|(% style="width:272px" %)**Response** 857 +(% border="1" style="background-color:#f2f2f2; width:667.222px" %) 858 +|=(% colspan="3" style="width: 664px;background-color:#D9E2F3;color:#0070C0" %)AT+PNM 859 +|(% style="color:#0070c0; width:166px" %)**Command Example**|(% style="color:#0070c0; width:225px" %)**Function**|(% style="color:#0070c0; width:272px" %)**Response** 843 843 |(% style="width:166px" %)AT+PNM=?|(% style="width:225px" %)Get the public network mode.|(% style="width:272px" %)1((( 844 844 OK 845 845 ))) ... ... @@ -854,6 +854,7 @@ 854 854 ))) 855 855 |(% style="width:166px" %)AT+PNM=0|(% style="width:225px" %)Set to use private network autoset syncword=0x12|(% style="width:272px" %) 856 856 874 +(% style="display:none" %) (%%) 857 857 858 858 == 7.10 Receive Delay1 == 859 859 ... ... @@ -863,9 +863,9 @@ 863 863 864 864 (% style="color:blue" %)**AT Command: AT+RX1DL** 865 865 866 -(% border="1" style="background-color:#fff fcc;color:green;width:408.222px" %)867 -|=(% colspan="3" style="width: 405px;" %)AT+RX1DL 868 -|(% style="width:155px" %)**Command Example**|(% style="width:128px" %)**Function**|(% style="width:122px" %)**Response** 884 +(% border="1" style="background-color:#f2f2f2; width:408.222px" %) 885 +|=(% colspan="3" style="width: 405px;background-color:#D9E2F3;color:#0070C0" %)AT+RX1DL 886 +|(% style="color:#0070c0; width:155px" %)**Command Example**|(% style="color:#0070c0; width:128px" %)**Function**|(% style="color:#0070c0; width:122px" %)**Response** 869 869 |(% style="width:155px" %)AT+RX1DL=?|(% style="width:128px" %)Get the delay.|(% style="width:122px" %)1000((( 870 870 OK 871 871 ))) ... ... @@ -873,6 +873,7 @@ 873 873 874 874 ))) 875 875 894 +(% style="display:none" %) (%%) 876 876 877 877 == 7.11 Receive Delay2 == 878 878 ... ... @@ -882,9 +882,9 @@ 882 882 883 883 (% style="color:blue" %)**AT Command: AT+RX2DL** 884 884 885 -(% border="1" style="background-color:#fff fcc;color:green;width:481.222px" %)886 -|=(% colspan="3" style="width: 478px;" %)AT+RX2DL 887 -|(% style="width:175px" %)**Command Example**|(% style="width:152px" %)**Function**|(% style="width:150px" %)**Response** 904 +(% border="1" style="background-color:#f2f2f2; width:481.222px" %) 905 +|=(% colspan="3" style="width: 478px;background-color:#D9E2F3;color:#0070C0" %)AT+RX2DL 906 +|(% style="color:#0070c0; width:175px" %)**Command Example**|(% style="color:#0070c0; width:152px" %)**Function**|(% style="color:#0070c0; width:150px" %)**Response** 888 888 |(% style="width:175px" %)AT+RX2DL=?|(% style="width:152px" %)Get the delay.|(% style="width:150px" %)2000((( 889 889 OK 890 890 ))) ... ... @@ -892,6 +892,7 @@ 892 892 893 893 ))) 894 894 914 +(% style="display:none" %) (%%) 895 895 896 896 == 7.12 Rx2 Window Data Rate == 897 897 ... ... @@ -901,9 +901,9 @@ 901 901 902 902 (% style="color:blue" %)**AT Command: AT+RX2DR** 903 903 904 -(% border="1" style="background-color:#fff fcc;color:green;width:525.222px" %)905 -|=(% colspan="3" style="width: 522px;" %)AT+RX2DR 906 -|(% style="width:160px" %)**Command Example**|(% style="width:232px" %)**Function**|(% style="width:130px" %)**Response** 924 +(% border="1" style="background-color:#f2f2f2; width:525.222px" %) 925 +|=(% colspan="3" style="width: 522px;background-color:#D9E2F3;color:#0070C0" %)AT+RX2DR 926 +|(% style="color:#0070c0; width:160px" %)**Command Example**|(% style="color:#0070c0; width:232px" %)**Function**|(% style="color:#0070c0; width:130px" %)**Response** 907 907 |(% style="width:160px" %)AT+RX2DR=?|(% style="width:232px" %)Get the Rx2 window data rate.|(% style="width:130px" %)2((( 908 908 OK 909 909 ))) ... ... @@ -911,6 +911,7 @@ 911 911 912 912 ))) 913 913 934 +(% style="display:none" %) (%%) 914 914 915 915 == 7.13 Rx2 Window Frequency == 916 916 ... ... @@ -920,9 +920,9 @@ 920 920 921 921 (% style="color:blue" %)**AT Command: AT+RX2FQ** 922 922 923 -(% border="1" style="background-color:#fff fcc;color:green;width:587.222px" %)924 -|=(% colspan="3" style="width: 584px;" %)AT+RX2FQ 925 -|(% style="width:183px" %)**Command Example**|(% style="width:240px" %)**Function**|(% style="width:160px" %)**Response** 944 +(% border="1" style="background-color:#f2f2f2; width:587.222px" %) 945 +|=(% colspan="3" style="width: 584px;background-color:#D9E2F3;color:#0070C0" %)AT+RX2FQ 946 +|(% style="color:#0070c0; width:183px" %)**Command Example**|(% style="color:#0070c0; width:240px" %)**Function**|(% style="color:#0070c0; width:160px" %)**Response** 926 926 |(% style="width:183px" %)AT+RX2FQ=?|(% style="width:240px" %)Get the Rx2 window frequency.|(% style="width:160px" %)434665000((( 927 927 OK 928 928 ))) ... ... @@ -930,6 +930,7 @@ 930 930 931 931 ))) 932 932 954 +(% style="display:none" %) (%%) 933 933 934 934 == 7.14 Transmit Power == 935 935 ... ... @@ -941,9 +941,9 @@ 941 941 942 942 (% style="color:blue" %)**AT Command: AT+TXP** 943 943 944 -(% border="1" style="background-color:#fff fcc;color:green;width:465.222px" %)945 -|=(% colspan="3" style="width: 462px;" %)AT+TXP 946 -|(% style="width:161px" %)**Command Example**|(% style="width:189px" %)**Function**|(% style="width:112px" %)**Response** 966 +(% border="1" style="background-color:#f2f2f2; width:465.222px" %) 967 +|=(% colspan="3" style="width: 462px;background-color:#D9E2F3;color:#0070C0" %)AT+TXP 968 +|(% style="color:#0070c0; width:161px" %)**Command Example**|(% style="color:#0070c0; width:189px" %)**Function**|(% style="color:#0070c0; width:112px" %)**Response** 947 947 |(% style="width:161px" %)AT+TXP=?|(% style="width:189px" %)Get the Transmit Power.|(% style="width:112px" %)0((( 948 948 OK 949 949 ))) ... ... @@ -956,8 +956,9 @@ 956 956 If the downlink payload=22000100, it means setting the TXP to 0. 957 957 958 958 * **Example 1**: Downlink Payload: **22000102** ~/~/ Set AT+TXP=2. 959 -* **Example 2**: Downlink Payload: **220000 FF**981 +* **Example 2**: Downlink Payload: **22000000** ~/~/ Set AT+TXP=0. 960 960 983 +(% style="display:none" %) (%%) 961 961 962 962 == 7.15 RSSI of the Last Received Packet == 963 963 ... ... @@ -967,13 +967,14 @@ 967 967 968 968 (% style="color:blue" %)**AT Command:AT+RSSI** 969 969 970 -(% border="1" style="background-color:#fff fcc;color:green;width:557.222px" %)971 -|=(% colspan="3" style="width: 554px;" %)AT+RSSI 972 -|(% style="width:164px" %)**Command Example**|(% style="width:289px" %)**Function**|(% style="width:100px" %)**Response** 993 +(% border="1" style="background-color:#f2f2f2; width:557.222px" %) 994 +|=(% colspan="3" style="width: 554px;background-color:#D9E2F3;color:#0070C0" %)AT+RSSI 995 +|(% style="color:#0070c0; width:164px" %)**Command Example**|(% style="color:#0070c0; width:289px" %)**Function**|(% style="color:#0070c0; width:100px" %)**Response** 973 973 |(% style="width:164px" %)AT+RSSI=?|(% style="width:289px" %)Get the RSSI of the last received packet.|(% style="width:100px" %)0((( 974 974 OK 975 975 ))) 976 976 1000 +(% style="display:none" %) (%%) 977 977 978 978 == 7.16 SNR of the Last Received Packet == 979 979 ... ... @@ -983,13 +983,14 @@ 983 983 984 984 (% style="color:blue" %)**AT Command: AT+SNR** 985 985 986 -(% border="1" style="background-color:#fff fcc;color:green;width:571.222px" %)987 -|=(% colspan="3" style="width: 568px;" %)AT+SNR 988 -|(% style="width:164px" %)**Command Example**|(% style="width:290px" %)**Function**|(% style="width:113px" %)**Response** 1010 +(% border="1" style="background-color:#f2f2f2; width:571.222px" %) 1011 +|=(% colspan="3" style="width: 568px;background-color:#D9E2F3;color:#0070C0" %)AT+SNR 1012 +|(% style="color:#0070c0; width:164px" %)**Command Example**|(% style="color:#0070c0; width:290px" %)**Function**|(% style="color:#0070c0; width:113px" %)**Response** 989 989 |(% style="width:164px" %)AT+SNR=?|(% style="width:290px" %)Get the RSSI of the last received packet.|(% style="width:113px" %)0((( 990 990 OK 991 991 ))) 992 992 1017 +(% style="display:none" %) (%%) 993 993 994 994 == 7.17 Application Port == 995 995 ... ... @@ -999,9 +999,9 @@ 999 999 1000 1000 (% style="color:blue" %)**AT Command: AT+PORT** 1001 1001 1002 -(% border="1" style="background-color:#fff fcc;color:green;width:500.222px" %)1003 -|=(% colspan="3" style="width: 497px;" %)AT+PORT 1004 -|(% style="width:157px" %)**Command Example**|(% style="width:204px" %)**Function**|(% style="width:135px" %)**Response** 1027 +(% border="1" style="background-color:#f2f2f2; width:500.222px" %) 1028 +|=(% colspan="3" style="width: 497px;background-color:#D9E2F3;color:#0070C0" %)AT+PORT 1029 +|(% style="color:#0070c0; width:157px" %)**Command Example**|(% style="color:#0070c0; width:204px" %)**Function**|(% style="color:#0070c0; width:135px" %)**Response** 1005 1005 |(% style="width:157px" %)AT+PORT=?|(% style="width:204px" %)Get the application port|(% style="width:135px" %)21((( 1006 1006 OK 1007 1007 ))) ... ... @@ -1016,6 +1016,7 @@ 1016 1016 * **Example 1**: Downlink Payload: **2301** ~/~/ set the application port to 1 1017 1017 * **Example 2**: Downlink Payload:** 2305** ~/~/ set the application port to 5 1018 1018 1044 +(% style="display:none" %) (%%) 1019 1019 1020 1020 == 7.18 Single Channel Mode == 1021 1021 ... ... @@ -1025,14 +1025,15 @@ 1025 1025 1026 1026 (% style="color:blue" %)**AT Command: AT+CHS** 1027 1027 1028 -(% border="1" style="background-color:#fff fcc;color:green;width:603.222px" %)1029 -|=(% colspan="3" style="width: 600px;" %)AT+CHS 1030 -|(% style="width:182px" %)**Command Example**|(% style="width:295px" %)**Function**|(% style="width:122px" %)**Response** 1054 +(% border="1" style="background-color:#f2f2f2; width:603.222px" %) 1055 +|=(% colspan="3" style="width: 600px;background-color:#D9E2F3;color:#0070C0" %)AT+CHS 1056 +|(% style="color:#0070c0; width:182px" %)**Command Example**|(% style="color:#0070c0; width:295px" %)**Function**|(% style="color:#0070c0; width:122px" %)**Response** 1031 1031 |(% style="width:182px" %)AT+CHS=?|(% style="width:295px" %)Get Frequency for Single Channel Mode|(% style="width:122px" %)0((( 1032 1032 OK 1033 1033 ))) 1034 1034 |(% style="width:182px" %)AT+CHS=868100000|(% style="width:295px" %)Set Frequency for Single Channel Mode|(% style="width:122px" %)OK 1035 1035 1062 +(% style="display:none" %) (%%) 1036 1036 1037 1037 == 7.19 Eight Channel Mode == 1038 1038 ... ... @@ -1042,9 +1042,9 @@ 1042 1042 1043 1043 (% style="color:blue" %)**AT Command: AT+CHE** 1044 1044 1045 -(% border="1" style="background-color:#fff fcc;color:green;width:710.222px" %)1046 -|=(% colspan="3" style="width: 707px;" %)AT+CHE 1047 -|(% style="width:160px" %)**Command Example**|(% style="width:198px" %)**Function**|(% style="width:349px" %)**Response** 1072 +(% border="1" style="background-color:#f2f2f2; width:710.222px" %) 1073 +|=(% colspan="3" style="width: 707px;background-color:#D9E2F3;color:#0070C0" %)AT+CHE 1074 +|(% style="color:#0070c0; width:160px" %)**Command Example**|(% style="color:#0070c0; width:198px" %)**Function**|(% style="color:#0070c0; width:349px" %)**Response** 1048 1048 |(% style="width:160px" %)AT+CHE=?|(% style="width:198px" %)Get eight channels mode|(% style="width:349px" %)1((( 1049 1049 902.3 902.5 902.7 902.9 903.1 903.3 903.5 903.7 1050 1050 ... ... @@ -1061,6 +1061,7 @@ 1061 1061 * **Example 1**: Downlink Payload: 2401 ~/~/ set channel mode to 1 1062 1062 * **Example 2**: Downlink Payload: 2405 ~/~/ set channel mode to 5 1063 1063 1091 +(% style="display:none" %) (%%) 1064 1064 1065 1065 == 7.20 Get or Set RXwindows1 timeout == 1066 1066 ... ... @@ -1070,32 +1070,27 @@ 1070 1070 1071 1071 (% style="color:blue" %)**AT Command: AT+RX1WTO** 1072 1072 1073 -(% border="1" style="background-color:#fff fcc;color:green;width:460.222px" %)1074 -|=(% colspan="3" style="width: 457px;" %)AT+ RX1WTO 1075 -|(% style="width:163px" %)**Command Example**|(% style="width:201px" %)**Function**|(% style="width:93px" %)**Response** 1101 +(% border="1" style="background-color:#f2f2f2; width:460.222px" %) 1102 +|=(% colspan="3" style="width: 457px;background-color:#D9E2F3;color:#0070C0" %)AT+ RX1WTO 1103 +|(% style="color:#0070c0; width:163px" %)**Command Example**|(% style="color:#0070c0; width:201px" %)**Function**|(% style="color:#0070c0; width:93px" %)**Response** 1076 1076 |(% style="width:163px" %)AT+RX1WTO=?|(% style="width:201px" %)Get RXwindows1 timeout|(% style="width:93px" %)14((( 1077 1077 OK 1078 1078 ))) 1079 1079 |(% style="width:163px" %)AT+RX1WTO=60|(% style="width:201px" %)Set RXwindows1 timeout|(% style="width:93px" %)OK 1080 1080 1081 -((( 1082 - 1109 +(% style="display:none" %) (%%) 1083 1083 1084 - 1111 +((( 1085 1085 (% 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. 1086 - 1087 - 1088 1088 ))) 1089 1089 1090 1090 [[image:image-20220526162535-1.png]] 1091 1091 1092 - 1093 1093 ((( 1094 1094 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. 1095 - 1096 - 1097 1097 ))) 1098 1098 1121 + 1099 1099 == 7.21 Get or Set RXwindows2 timeout == 1100 1100 1101 1101 ... ... @@ -1104,14 +1104,15 @@ 1104 1104 1105 1105 (% style="color:blue" %)**AT Command: AT+RX2WTO** 1106 1106 1107 -(% border="1" style="background-color:#fff fcc;color:green;width:497.222px" %)1108 -|=(% colspan="3" style="width: 494px;" %)AT+ RX2WTO 1109 -|(% style="width:190px" %)**Command Example**|(% style="width:199px" %)**Function**|(% style="width:104px" %)**Response** 1130 +(% border="1" style="background-color:#f2f2f2; width:497.222px" %) 1131 +|=(% colspan="3" style="width: 494px;background-color:#D9E2F3;color:#0070C0" %)AT+ RX2WTO 1132 +|(% style="color:#0070c0; width:190px" %)**Command Example**|(% style="color:#0070c0; width:199px" %)**Function**|(% style="color:#0070c0; width:104px" %)**Response** 1110 1110 |(% style="width:190px" %)AT+RX2WTO=?|(% style="width:199px" %)Get RXwindows2 timeout|(% style="width:104px" %)7((( 1111 1111 OK 1112 1112 ))) 1113 1113 |(% style="width:190px" %)AT+RX2WTO=20|(% style="width:199px" %)Set RXwindows2 timeout|(% style="width:104px" %)OK 1114 1114 1138 +(% style="display:none" %) (%%) 1115 1115 1116 1116 == 7.22 Setting up uplinkdwelltime (as923, au915) == 1117 1117 ... ... @@ -1121,9 +1121,9 @@ 1121 1121 1122 1122 (% style="color:blue" %)**AT Command: AT+DWELLT** 1123 1123 1124 -(% border="1" style="background-color:#fff fcc;color:green;width:497.222px" %)1125 -|=(% colspan="3" style="width: 494px;" %)AT+DWELLT 1126 -|(% style="width:183px" %)**Command Example**|(% style="width:179px" %)**Function**|(% style="width:131px" %)**Response** 1148 +(% border="1" style="background-color:#f2f2f2; width:497.222px" %) 1149 +|=(% colspan="3" style="width: 494px;background-color:#D9E2F3;color:#0070C0" %)AT+DWELLT 1150 +|(% style="color:#0070c0; width:183px" %)**Command Example**|(% style="color:#0070c0; width:179px" %)**Function**|(% style="color:#0070c0; width:131px" %)**Response** 1127 1127 |(% style="width:183px" %)AT+DWELLT=?|(% style="width:179px" %)Get uplinkdwelltime|(% style="width:131px" %)1((( 1128 1128 OK 1129 1129 ))) ... ... @@ -1138,6 +1138,7 @@ 1138 1138 * **Example 1**: Downlink Payload: **2501** ~/~/ set uplinkdwelltime to 1 1139 1139 * **Example 2**: Downlink Payload: **2500** ~/~/ set uplinkdwelltime to 0 1140 1140 1165 +(% style="display:none" %) (%%) 1141 1141 1142 1142 == 7.23 Set Packet Receiving Response Level == 1143 1143 ... ... @@ -1145,7 +1145,7 @@ 1145 1145 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. 1146 1146 1147 1147 1148 -**RPL value:** 1173 +(% style="color:blue" %)**RPL value:** 1149 1149 1150 1150 * **AT+RPL=0:** Device won't immediately reply any downlink commands from platform. 1151 1151 * **AT+RPL=1:** Device will immediately reply message to Unconfirmed Data Down. Payload is 0x00. ... ... @@ -1153,7 +1153,7 @@ 1153 1153 * **AT+RPL=3:** Device will immediately reply message to MAC Command. Payload is 0x00 and requied response header for this command. 1154 1154 * **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. 1155 1155 1156 -**Case Analyes:** 1181 +(% style="color:blue" %)**Case Analyes:** 1157 1157 1158 1158 * For Class A devices, AT+RPL=0 is ok. that is defaut settings in software. 1159 1159 * For Class C devices used in ChirpStack, need to set AT+RPL=4 because Chirpstack require immedietely reply message to MAC Command. ... ... @@ -1161,9 +1161,9 @@ 1161 1161 1162 1162 (% style="color:blue" %)**AT Command: AT+RPL** 1163 1163 1164 -(% border="1" style="background-color:#fff fcc;color:green;width:536.222px" %)1165 -|=(% colspan="3" style="width: 533px;" %)AT+RPL 1166 -|(% style="width:160px" %)**Command Example**|(% style="width:263px" %)**Function**|(% style="width:109px" %)**Response** 1189 +(% border="1" style="background-color:#f2f2f2; width:536.222px" %) 1190 +|=(% colspan="3" style="width: 533px;background-color:#D9E2F3;color:#0070C0" %)AT+RPL 1191 +|(% style="color:#0070c0; width:160px" %)**Command Example**|(% style="color:#0070c0; width:263px" %)**Function**|(% style="color:#0070c0; width:109px" %)**Response** 1167 1167 |(% style="width:160px" %)AT+RPL=?|(% style="width:263px" %)Get packet receiving response level|(% style="width:109px" %)1((( 1168 1168 OK 1169 1169 ))) ... ... @@ -1178,6 +1178,7 @@ 1178 1178 * **Example 1**: Downlink Payload: **2101** ~/~/ set packet receiving response level to 1 1179 1179 * **Example 2**: Downlink Payload: **2102** ~/~/ set packet receiving response level to 2 1180 1180 1206 +(% style="display:none" %) (%%) 1181 1181 1182 1182 == 7.24 Controls NBTrans in unconfirmed uplink mode(LWS007 NBTrans:Set retransmission packets) == 1183 1183 ... ... @@ -1184,9 +1184,9 @@ 1184 1184 1185 1185 (% style="color:blue" %)**AT Command: AT+SETMAXNBTRANS ** 1186 1186 1187 -(% border="1" style="background-color:#fff fcc;color:green;width:589px" %)1188 -|=(% colspan="3" style="width: 586px;" %)AT+**SETMAXNBTRANS** 1189 -|(% style="width:227px" %)**Command Example**|(% style="width:300px" %)**Function**|(% style="width:87px" %)**Response** 1213 +(% border="1" style="background-color:#f2f2f2; width:589px" %) 1214 +|=(% colspan="3" style="width: 586px;background-color:#D9E2F3;color:#0070C0" %)AT+**SETMAXNBTRANS** 1215 +|(% style="color:#0070c0; width:227px" %)**Command Example**|(% style="color:#0070c0; width:300px" %)**Function**|(% style="color:#0070c0; width:87px" %)**Response** 1190 1190 |(% style="width:227px" %)**AT+SETMAXNBTRANS=1,0**|(% style="width:300px" %)Value1: set the maximum NBTrans.|(% style="width:87px" %)1((( 1191 1191 OK 1192 1192 ))) ... ... @@ -1209,6 +1209,7 @@ 1209 1209 * Example 1: Downlink Payload: 330100 ~/~/ Set AT+SETMAXNBTRANS=1,0 1210 1210 * Example 2: Downlink Payload: 330201 ~/~/ Set AT+SETMAXNBTRANS=2,1 1211 1211 1238 +(% style="display:none" %) (%%) 1212 1212 1213 1213 == 7.25 Device offline rejoining (LWS007) == 1214 1214 ... ... @@ -1215,9 +1215,14 @@ 1215 1215 1216 1216 (% style="color:blue" %)**AT Command: AT+DDETECT** 1217 1217 1218 -(% border="1" style="background-color:#ffffcc; color:green; width:710.222px" %) 1219 -|=(% colspan="3" style="width: 707px;" %)AT+**DDETECT** 1220 -|(% style="width:160px" %)**Command Example**|(% style="width:198px" %)**Function**|(% style="width:349px" %)**Response** 1245 +AT+DDETECT=<Flag>,<ACK_Timout_1>,<ACK_Timout_2> (Default Value: AT+DDETECT=1,1440,2880) 1246 + 1247 +* ACK_Timout_1: Unit: min 1248 +* ACK_Timout_2: Unit: min 1249 + 1250 +(% border="1" style="background-color:#f2f2f2; width:710.222px" %) 1251 +|=(% colspan="3" style="width: 707px;background-color:#D9E2F3;color:#0070C0" %)AT+**DDETECT** 1252 +|(% style="color:#0070c0; width:160px" %)**Command Example**|(% style="color:#0070c0; width:198px" %)**Function**|(% style="color:#0070c0; width:349px" %)**Response** 1221 1221 |(% style="width:160px" %)((( 1222 1222 AT+DDETECT=1,1440,2880 1223 1223 ... ... @@ -1246,14 +1246,19 @@ 1246 1246 OK 1247 1247 ))) 1248 1248 1249 -(% style="color:blue" %)**Downlink Command: 0x3 3**1281 +(% style="color:blue" %)**Downlink Command: 0x32** 1250 1250 1251 1251 Format: Command Code (0x32) followed by 2 bytes mode value. 1252 1252 1253 -If the downlink payload=320105A00B40, it means set end node to use confirm mode, while type code is 3 3.1285 +If the downlink payload=320105A00B40, it means set end node to use confirm mode, while type code is 32. 1254 1254 1255 -* **Example 1:** Downlink Payload: 320105A00B40 ~/~/ Set AT+DDETECT=1,1440,2880 1287 +* **Example 1:** Downlink Payload: 320105A00B40 ~/~/ Set AT+DDETECT=1,1440,2880 1288 +** 0x01 : Flag 1289 +** 0x05A0: ACK_Timout_1 : 1440minutes (24 hours) 1290 +** 0x0B40: ACK_Timout_2 : 2880minutes (48 hours) 1291 +** **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. 1256 1256 1293 +(% style="display:none" %) (%%) 1257 1257 1258 1258 == 7.26 Request the server to send an ACK == 1259 1259 ... ... @@ -1260,18 +1260,18 @@ 1260 1260 1261 1261 (% style="color:blue" %)**AT Command: AT+PNACKMD** 1262 1262 1263 -(% border="1" style="background-color:#fff fcc;color:green;width:536.222px" %)1264 -|=(% colspan="3" style="width: 533px;" %)**AT+PNACKMD** 1265 -|(% style="width:160px" %)**Command Example**|(% style="width:263px" %)**Function**|(% style="width:109px" %)**Response** 1300 +(% border="1" style="background-color:#f2f2f2; width:536.222px" %) 1301 +|=(% colspan="3" style="width: 533px;background-color:#D9E2F3;color:#0070C0" %)**AT+PNACKMD** 1302 +|(% style="color:#0070c0; width:160px" %)**Command Example**|(% style="color:#0070c0; width:263px" %)**Function**|(% style="color:#0070c0; width:109px" %)**Response** 1266 1266 |(% 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((( 1267 1267 OK 1268 1268 ))) 1269 1269 |(% style="width:160px" %)**AT+PNACKMD=0**|(% style="width:263px" %)off request the server to send an ACK|(% style="width:109px" %)((( 1270 1270 0 1271 - 1272 1272 OK 1273 1273 ))) 1274 1274 1311 +(% style="display:none" %) (%%) 1275 1275 1276 1276 == 7.27 Adjust network rejoining interval == 1277 1277 ... ... @@ -1278,9 +1278,9 @@ 1278 1278 1279 1279 (% style="color:blue" %)**AT Command: AT+RJTDC** 1280 1280 1281 -(% border="1" style="background-color:#fff fcc;color:green;width:727.222px" %)1282 -|=(% colspan="3" style="width: 724px;" %)AT+RJTDC 1283 -|(% style="width:165px" %)**Command Example**|(% style="width:227px" %)**Function**|(% style="width:329px" %)**Response** 1318 +(% border="1" style="background-color:#f2f2f2; width:727.222px" %) 1319 +|=(% colspan="3" style="width: 724px;background-color:#D9E2F3;color:#0070C0" %)AT+RJTDC 1320 +|(% style="color:#0070c0; width:165px" %)**Command Example**|(% style="color:#0070c0; width:227px" %)**Function**|(% style="color:#0070c0; width:329px" %)**Response** 1284 1284 |(% style="width:165px" %)AT+RJTDC=?|(% style="width:227px" %)Show the ReJoin data transmission interval in min|(% style="width:329px" %)30((( 1285 1285 OK 1286 1286 ... ... @@ -1299,6 +1299,7 @@ 1299 1299 * **Example 1:** Downlink Payload: 26000A ~/~/ Set AT+RJTDC=10 1300 1300 * **Example 2: **Downlink Payload: 260002 ~/~/ Set AT+RJTDC=2 1301 1301 1339 +(% style="display:none" %) (%%) 1302 1302 1303 1303 = 8. AT Commands Combination = 1304 1304 ... ... @@ -1306,8 +1306,10 @@ 1306 1306 1307 1307 1308 1308 * (% style="color:blue" %)**AT+ADR=0 **(%%) **~-~->** Disable ADR first 1347 + 1309 1309 * (% style="color:blue" %)**AT+RX2DR=xxxx** (%%) **~-~->** Set xxxx to your wanted DataRate 1310 1310 1350 +(% style="display:none" %) (%%) 1311 1311 1312 1312 == 8.2 Use Downlink Command to set a fix uplink DR == 1313 1313 ... ... @@ -1317,7 +1317,9 @@ 1317 1317 **Same as:** 1318 1318 1319 1319 * AT+ADR=0 [[Reference>>||anchor="H7.1AdaptiveDataRate"]] 1360 + 1320 1320 * AT+DR=5 [[Reference>>||anchor="H7.4DataRate"]] 1362 + 1321 1321 * AT+TXP=0 [[Reference>>||anchor="H7.14TransmitPower"]] 1322 1322 1323 1323