Changes for page End Device AT Commands and Downlink Command
Last modified by kai on 2024/09/06 10:00
Summary
-
Page properties (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -1,4 +1,4 @@ 1 - ** Table of** **Contents:**1 + **Contents:** 2 2 3 3 {{toc/}} 4 4 ... ... @@ -6,33 +6,27 @@ 6 6 7 7 = 1. Introduction = 8 8 9 - 10 10 Dragino LoRaWAN End Node support two types of AT Commands and Downlink Commands: 11 11 12 -* (% style="color:blue" %)**Common Commands:**(%%)They should be available for each sensor, such as: change uplink interval, reset device.13 -* (% style="color:blue" %)**Sensor Related Commands:**(%%)Only for special sensor, such as control relay, poll RS485 device.11 +* **Common Commands:** They should be available for each sensor, such as: change uplink interval, reset device. 12 +* **Sensor Related Commands:** Only for special sensor, such as control relay, poll RS485 device. 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 18 19 19 ))) 20 20 21 21 = 2. How to use AT Commands or Downlink command = 22 22 23 - 24 -* **AT Command** : See Devices User Manual for how to connect to device via USB TTL adapter and use. The user manual can be found in each product page of [[Dragino Official Website>>url:http://www.dragino.com/]] 25 -* **LoRaWAN Downlink Command**: The gateway transfer downlink command in HEX format. This page shows the Downlink Command In HEX format. Please note some LoRaWAN servers use base64 as downlink code so user need to convert HEX to Base64 and use. Below are references for how to use downlink command: 21 +* For AT Command , See Devices User Manual for Device. The user manual can be found in each product page of [[Dragino Official Website>>url:http://www.dragino.com/]] 22 +* For LoRaWAN Downlink: The gateway transfer downlink command in HEX format. This page shows the HEX format downlink code for each command. but some servers use base64 as downlink code. Below are reference for how to use downlink command: 26 26 ** Use HEX format to send a downlink: [[TTN v3>>Notes for TTN]] 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]]?24 +** Use Base64 format to send a downlink: [[Chirpstack>>Notes for ChirpStack]] 28 28 ** See use note for more serves [[Servers Note>>doc:Main.WebHome]](IoT LoRaWAN Server) 29 29 30 -(% style="display:none" %) (%%) 31 31 32 - 33 33 = 3. Support End Node and firmware version = 34 34 35 - 36 36 (% border="1" style="background-color:#ffffcc; color:green; width:966px" %) 37 37 |=(% colspan="3" style="width: 963px;" %)((( 38 38 Dragino STM32 base hardware Firmware / LoRaWAN stack list ... ... @@ -104,16 +104,19 @@ 104 104 ))) 105 105 ))) 106 106 101 + 102 + 107 107 = 4. System Management Commands = 108 108 109 109 == 4.1 Change Uplink Interval == 110 110 111 - 112 112 Feature: Change LoRaWAN End Node Transmit Interval. 113 113 109 +(% class="box infomessage" %) 110 +((( 111 +**AT Command: AT+TDC** 112 +))) 114 114 115 -(% style="color:blue" %)**AT Command: AT+TDC** 116 - 117 117 (% border="1" style="background-color:#ffffcc; color:green; width:727.222px" %) 118 118 |=(% colspan="3" style="width: 724px;" %)AT+TDC 119 119 |(% style="width:165px" %)**Command Example**|(% style="width:227px" %)**Function**|(% style="width:329px" %)**Response** ... ... @@ -126,33 +126,35 @@ 126 126 Set transmit interval to 60000ms = 60 seconds 127 127 ))) 128 128 129 -((( 130 - 126 +{{info}} 127 +**Downlink Command: 0x01** 128 +{{/info}} 131 131 132 -(% style="color:blue" %)**Downlink Command: 0x01** 133 - 130 +((( 134 134 Format: Command Code (0x01) followed by 3 bytes time value. 135 135 ))) 136 136 137 137 ((( 138 -If the downlink payload=0100003C, it means set the END Node 's Transmit Interval to 0x00003C=60(S), while type code is 01.135 +If the downlink payload=0100003C, it means set the END Node’s Transmit Interval to 0x00003C=60(S), while type code is 01. 139 139 ))) 140 140 141 -* **Example 1**: Downlink Payload:** 0100001E** 142 -* **Example 2**: Downlink Payload:** 0100003C** 138 +* **Example 1**: Downlink Payload:** 0100001E** ~/~/ Set Transmit Interval (TDC) = 30 seconds 139 +* **Example 2**: Downlink Payload:** 0100003C** ~/~/ Set Transmit Interval (TDC) = 60 seconds 143 143 144 -== 4.2 Reboot End Node == 145 145 146 146 143 +== 4.2 Reboot End Node == 144 + 147 147 Feature: Reboot End Node to perform a new OTAA or ABP Join. 148 148 147 +{{info}} 148 +**AT Command: ATZ** 149 +{{/info}} 149 149 150 -(% style="color:blue" %)**AT Command: ATZ** 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** 155 -|(% style="width:157px" %)ATZ|(% style="width:92px" %)Reset MCU|(% style="width:294px" %)((( 151 +(% border="1" style="background-color:#ffffcc; color:green; width:727.222px" %) 152 +|=(% colspan="3" %)ATZ: Trig a reset of the MCU 153 +|**Command Example**|**Function**|**Response** 154 +|ATZ|Reset MCU|((( 156 156 Device reset and show booting info 157 157 158 158 LSN50 Device/LoRa ST Module ... ... @@ -166,7 +166,9 @@ 166 166 <followed by the Tx and Rx information> 167 167 ))) 168 168 169 -(% style="color:blue" %)**Downlink Command: 0x04** 168 +{{info}} 169 +**Downlink Command: 0x04** 170 +{{/info}} 170 170 171 171 ((( 172 172 Format: Command Code (0x04) followed by FF. ... ... @@ -180,16 +180,16 @@ 180 180 181 181 == 4.3 Reset to factory Default == 182 182 183 - 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 +{{info}} 187 +**AT Command: AT+FDR** 188 +{{/info}} 186 186 187 -(% style="color:blue" %)**AT Command: AT+FDR** 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** 192 -|(% style="width:154px" %)AT+FDR|(% style="width:175px" %)Reset to factory default|(% style="width:456px" %)((( 190 +(% border="1" style="background-color:#ffffcc; color:green; width:831.222px" %) 191 +|=(% colspan="3" style="width: 828px;" %)Reset to factory default 192 +|(% style="width:181px" %)**Command Example**|(% style="width:181px" %)**Function**|(% style="width:465px" %)**Response** 193 +|(% style="width:181px" %)AT+FDR|(% style="width:181px" %)Reset to factory default|(% style="width:465px" %)((( 193 193 Device reset to factory default parameters and show booting info 194 194 195 195 LSN50 Device/LoRa ST Module ... ... @@ -203,7 +203,9 @@ 203 203 Please set the parameters or reset Device to apply change 204 204 ))) 205 205 206 -(% style="color:blue" %)**Downlink Command: 0x04** 207 +{{info}} 208 +**Downlink Command: 0x04** 209 +{{/info}} 207 207 208 208 ((( 209 209 Format: Command Code (0x04) followed by FE. ... ... @@ -216,22 +216,24 @@ 216 216 217 217 == 4.4 Show Firmware Version == 218 218 219 - 220 220 Feature: Show firmware version. No downlink command yet. 221 221 224 +{{info}} 225 +**AT Command: AT+VER** 226 +{{/info}} 222 222 223 -(% style="color:blue" %)**AT Command: AT+VER** 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** 228 -|(% style="width:157px" %)AT+VER=?|(% style="width:295px" %)Show Image version and Frequency Band|(% style="width:86px" %)((( 228 +(% border="1" style="background-color:#ffffcc; color:green; width:586px" %) 229 +|=(% colspan="3" style="width: 583px;" %)AT+VER: Image Version and Frequency Band 230 +|(% style="width:170px" %)**Command Example**|(% style="width:300px" %)**Function**|(% style="width:113px" %)**Response** 231 +|(% style="width:170px" %)AT+VER=?|(% style="width:300px" %)Show Image version and Frequency Band|(% style="width:113px" %)((( 229 229 1.3 EU868 230 230 231 231 OK 232 232 ))) 233 233 234 -(% style="color:blue" %)**Downlink Command: 0x26 (Valid in 006 stack)** 237 +{{info}} 238 +**Downlink Command: 0x26 (Valid in 006 stack)** 239 +{{/info}} 235 235 236 236 ((( 237 237 Downlink Format: 0x26 ... ... @@ -242,8 +242,6 @@ 242 242 ))) 243 243 244 244 ((( 245 - 246 - 247 247 **xx: Software Type:** 248 248 ))) 249 249 ... ... @@ -252,8 +252,6 @@ 252 252 * 0x00 03: LSE01/LDDS75/LDDS20/LSPH01/LLMS01/LSNPK01 253 253 254 254 ((( 255 - 256 - 257 257 **yy: Frequency Band:** 258 258 ))) 259 259 ... ... @@ -269,8 +269,6 @@ 269 269 * 0xa0: AS923-3 270 270 271 271 ((( 272 - 273 - 274 274 **zz: Subband** 275 275 ))) 276 276 ... ... @@ -279,12 +279,12 @@ 279 279 280 280 == 4.5 Show System Configure == 281 281 282 - 283 283 Feature: Show All configure. No downlink command yet. 284 284 283 +{{info}} 284 +**AT Command: AT+CFG** 285 +{{/info}} 285 285 286 -(% style="color:blue" %)**AT Command: AT+CFG** 287 - 288 288 (% border="1" style="background-color:#ffffcc; color:green; width:599.222px" %) 289 289 |=(% colspan="3" style="width: 596px;" %)AT+CFG: Print all configurations 290 290 |(% style="width:160px" %)**Command Example**|(% style="width:154px" %)**Function**|(% style="width:280px" %)**Response** ... ... @@ -302,16 +302,18 @@ 302 302 OK 303 303 ))) 304 304 304 + 305 + 305 305 = 5. Keys, IDs and EUIs management = 306 306 307 307 == 5.1 Application EUI == 308 308 309 - 310 310 Feature: Get or Set the Application EUI. 311 311 312 +{{info}} 313 +**AT Command: AT+APPEUI** 314 +{{/info}} 312 312 313 -(% style="color:blue" %)**AT Command: AT+APPEUI** 314 - 315 315 (% border="1" style="background-color:#ffffcc; color:green; width:686.222px" %) 316 316 |=(% colspan="3" style="width: 683px;" %)AT+APPEUI 317 317 |(% style="width:305px" %)**Command Example**|(% style="width:186px" %)**Function**|(% style="width:191px" %)**Response** ... ... @@ -320,14 +320,16 @@ 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 323 -== 5.2 Application Key == 324 324 325 325 326 +== 5.2 Application Key == 327 + 326 326 Feature: Get or Set the Application Key. 327 327 330 +{{info}} 331 +**AT Command: AT+APPKEY** 332 +{{/info}} 328 328 329 -(% style="color:blue" %)**AT Command: AT+APPKEY** 330 - 331 331 (% border="1" style="background-color:#ffffcc; color:green; width:976.222px" %) 332 332 |=(% colspan="3" style="width: 973px;" %)AT+APPKEY 333 333 |(% style="width:441px" %)**Command Example**|(% style="width:180px" %)**Function**|(% style="width:350px" %)**Response** ... ... @@ -336,14 +336,15 @@ 336 336 ))) 337 337 |(% 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 338 338 342 + 339 339 == 5.3 Application Session Key == 340 340 341 - 342 342 Feature: Get or Set the Application Session Key. 343 343 347 +{{info}} 348 +**AT Command: AT+APPSKEY** 349 +{{/info}} 344 344 345 -(% style="color:blue" %)**AT Command: AT+APPSKEY** 346 - 347 347 (% border="1" style="background-color:#ffffcc; color:green; width:1040.22px" %) 348 348 |=(% colspan="3" style="width: 1037px;" %)AT+APPSKEY 349 349 |(% style="width:451px" %)**Command Example**|(% style="width:231px" %)**Function**|(% style="width:354px" %)**Response** ... ... @@ -354,14 +354,15 @@ 354 354 OK 355 355 ))) 356 356 361 + 357 357 == 5.4 Device Address == 358 358 359 - 360 360 Feature: Get or Set the Device Address. 361 361 366 +{{info}} 367 +**AT Command: AT+DADDR** 368 +{{/info}} 362 362 363 -(% style="color:blue" %)**AT Command: AT+DADDR** 364 - 365 365 (% border="1" style="background-color:#ffffcc; color:green; width:795.222px" %) 366 366 |=(% colspan="3" style="width: 792px;" %)AT+DADDR 367 367 |(% style="width:192px" %)**Command Example**|(% style="width:241px" %)**Function**|(% style="width:359px" %)**Response** ... ... @@ -372,14 +372,15 @@ 372 372 ))) 373 373 |(% style="width:192px" %)AT+DADDR=A8 40 41 FF|(% style="width:241px" %)Set the Application Session Key.|(% style="width:359px" %)OK 374 374 380 + 375 375 == 5.5 Device EUI == 376 376 377 - 378 378 Feature: Get or Set the Device EUI. 379 379 385 +{{info}} 386 +**AT Command: AT+DEUI** 387 +{{/info}} 380 380 381 -(% style="color:blue" %)**AT Command: AT+DEUI** 382 - 383 383 (% border="1" style="background-color:#ffffcc; color:green; width:1035.22px" %) 384 384 |=(% colspan="3" style="width: 1032px;" %)AT+DEUI 385 385 |(% style="width:250px" %)**Command Example**|(% style="width:147px" %)**Function**|(% style="width:634px" %)**Response** ... ... @@ -390,14 +390,15 @@ 390 390 OK 391 391 ))) 392 392 399 + 393 393 == 5.6 Network ID == 394 394 395 - 396 396 Feature: Get or Set the Network ID.(You can enter this command change only after successful network connection) 397 397 404 +{{info}} 405 +**AT Command: AT+NWKID** 406 +{{/info}} 398 398 399 -(% style="color:blue" %)**AT Command: AT+NWKID** 400 - 401 401 (% border="1" style="background-color:#ffffcc; color:green; width:448.222px" %) 402 402 |=(% colspan="3" style="width: 445px;" %)AT+NWKID 403 403 |(% style="width:191px" %)**Command Example**|(% style="width:153px" %)**Function**|(% style="width:101px" %)**Response** ... ... @@ -406,14 +406,15 @@ 406 406 ))) 407 407 |(% style="width:191px" %)AT+NWKID=A8 40 41 FF|(% style="width:153px" %)Set the Network ID.|(% style="width:101px" %)OK 408 408 416 + 409 409 == 5.7 Network Session Key == 410 410 411 - 412 412 Feature: Get or Set the Network Session Key 413 413 421 +{{info}} 422 +**AT Command: AT+NWKSKEY** 423 +{{/info}} 414 414 415 -(% style="color:blue" %)**AT Command: AT+NWKSKEY** 416 - 417 417 (% border="1" style="background-color:#ffffcc; color:green; width:1017.22px" %) 418 418 |=(% colspan="3" style="width: 1014px;" %)AT+NWKSKEY 419 419 |(% style="width:455px" %)**Command Example**|(% style="width:215px" %)**Function**|(% style="width:343px" %)**Response** ... ... @@ -422,18 +422,17 @@ 422 422 ))) 423 423 |(% 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 424 424 433 + 425 425 = 6. Joining and sending date on LoRaWAN network = 426 426 427 427 == 6.1 Confirm Mode == 428 428 429 -=== 6.1.1 AT+CFM command before DR-LWS007 software stack === 430 - 431 - 432 432 Feature: Get or Set the confirmation mode (0-1). 433 433 440 +{{info}} 441 +**AT Command: AT+CFM** 442 +{{/info}} 434 434 435 -(% style="color:blue" %)**AT Command: AT+CFM** 436 - 437 437 (% border="1" style="background-color:#ffffcc; color:green; width:710.222px" %) 438 438 |=(% colspan="3" style="width: 707px;" %)AT+CFM 439 439 |(% style="width:155px" %)**Command Example**|(% style="width:205px" %)**Function**|(% style="width:346px" %)**Response** ... ... @@ -443,83 +443,40 @@ 443 443 |(% style="width:155px" %)AT+CFM=1|(% style="width:205px" %)Set the confirmation mode|(% style="width:346px" %)OK 444 444 |(% style="width:155px" %)AT+CFM=2|(% style="width:205px" %)Set the confirmation mode|(% style="width:346px" %)While Error in format, return AT_PARAM_ERROR 445 445 446 - (% style="color:blue" %)**Downlink Command: 0x05**453 +Downlink Command: 0x05 447 447 448 448 Format: Command Code (0x05) followed by 2 bytes mode value. 449 449 450 450 If the downlink payload=0501, it means set end node to use confirm mode, while type code is 05. 451 451 452 -* **Example 1:**Downlink Payload: 0501453 -* **Example 2:**Downlink Payload: 0500459 +* Example 1: Downlink Payload: 0501 ~/~/ Set AT+CFM=1 460 +* Example 2: Downlink Payload: 0500 ~/~/ Set AT+CFM=0 454 454 455 -=== 6.1.2 AT+CFM command since DR-LWS007 software stack === 456 456 457 - 458 -(% style="color:blue" %)**AT Command: AT+CFM** 459 - 460 -(% border="1" style="background-color:#ffffcc; color:green; width:710.222px" %) 461 -|=(% colspan="3" style="width: 707px;" %)AT+CFM 462 -|(% style="width:160px" %)**Command Example**|(% style="width:198px" %)**Function**|(% style="width:349px" %)**Response** 463 -|(% style="width:160px" %)((( 464 -AT+CFM=1,0,0 465 - 466 -value1 467 -)))|(% style="width:198px" %)confirmed uplink|(% style="width:349px" %)((( 468 -1 469 - 470 -OK 471 -))) 472 -|(% style="width:160px" %)((( 473 -AT+CFM=0,?,0 474 - 475 -value2 476 -)))|(% style="width:198px" %)set max retry , range: 0 ~~ 7|(% style="width:349px" %)((( 477 -0~~7 478 - 479 -OK 480 -))) 481 -|(% style="width:160px" %)((( 482 -AT+CFM=0,0,1 483 - 484 -value3 485 -)))|(% style="width:198px" %)uplink fcnt increase by 1 for each retry|(% style="width:349px" %)((( 486 -1 487 - 488 -OK 489 -))) 490 - 491 -(% style="color:blue" %)**Downlink Command: 0x05** 492 - 493 -Format: Command Code (0x05) followed by 2 bytes mode value. 494 - 495 -If the downlink payload=05010101, it means set end node to use confirm mode, while type code is 05. 496 - 497 -* **Example 1:** Downlink Payload: 05010101 ~/~/ Set AT+CFM=1,1,1 498 -* **Example 2:** Downlink Payload: 05000700 ~/~/ Set AT+CFM=0,7,0 499 - 500 500 == 6.2 Confirm Status == 501 501 502 - 503 503 Feature: Get confirmation status of the last AT+SEND (0-1). 504 504 467 +{{info}} 468 +**AT Command: AT+CFS** 469 +{{/info}} 505 505 506 -(% style="color:blue" %)**AT Command: AT+CFS** 507 - 508 -(% border="1" style="background-color:#ffffcc; color:green; width:463px" %) 509 -|=(% colspan="3" style="width: 460px;" %)AT+CFS 510 -|(% style="width:156px" %)**Command Example**|(% style="width:193px" %)**Function**|(% style="width:107px" %)**Response** 511 -|(% style="width:156px" %)AT+CFS=?|(% style="width:193px" %)Get confirmation status|(% style="width:107px" %)0((( 471 +(% border="1" style="background-color:#ffffcc; color:green; width:534.222px" %) 472 +|=(% colspan="3" style="width: 531px;" %)AT+CFS 473 +|(% style="width:156px" %)**Command Example**|(% style="width:193px" %)**Function**|(% style="width:178px" %)**Response** 474 +|(% style="width:156px" %)AT+CFS=?|(% style="width:193px" %)Get confirmation status|(% style="width:178px" %)0((( 512 512 OK 513 513 ))) 514 514 478 + 515 515 == 6.3 Join LoRa® Network == 516 516 517 - 518 518 Feature: Join network. 519 519 483 +{{info}} 484 +**AT Command: AT+JOIN** 485 +{{/info}} 520 520 521 -(% style="color:blue" %)**AT Command: AT+JOIN** 522 - 523 523 (% border="1" style="background-color:#ffffcc; color:green; width:647.222px" %) 524 524 |=(% colspan="3" style="width: 644px;" %)AT+JOIN 525 525 |(% style="width:163px" %)**Command Example**|(% style="width:147px" %)**Function**|(% style="width:334px" %)**Response** ... ... @@ -529,14 +529,16 @@ 529 529 While Error in format, return AT_BUSY_ERROR 530 530 ))) 531 531 532 -== 6.4 LoRa® Network Join Mode == 533 533 534 534 498 +== 6.4 LoRa® Network Join Mode == 499 + 535 535 Feature: Get or Set the Network Join Mode. (0: ABP, 1: OTAA). 536 536 502 +{{info}} 503 +**AT Command: AT+NJM** 504 +{{/info}} 537 537 538 -(% style="color:blue" %)**AT Command: AT+NJM** 539 - 540 540 (% border="1" style="background-color:#ffffcc; color:green; width:753.222px" %) 541 541 |=(% colspan="3" style="width: 750px;" %)AT+NJM 542 542 |(% style="width:162px" %)**Command Example**|(% style="width:227px" %)**Function**|(% style="width:361px" %)**Response** ... ... @@ -546,23 +546,27 @@ 546 546 |(% style="width:162px" %)AT+NJM=0|(% style="width:227px" %)Set the Network Join Mode|(% style="width:361px" %)OK 547 547 |(% style="width:162px" %)AT+NJM=2|(% style="width:227px" %)Set the Network Join Mode|(% style="width:361px" %)While Error in format, return AT_PARAM_ERROR 548 548 549 -(% style="color:blue" %)**Downlink Command: 0x20** 515 +{{info}} 516 +**Downlink Command: 0x20** 517 +{{/info}} 550 550 551 551 Format: Command Code (0x20) followed by 1 bytes mode value. 552 552 553 553 If the downlink payload=2000, it means set the Network Join Mode, while type code is 20. 554 554 555 -* **Example 1: **Downlink Payload: **2000 0556 -* **Example 2:** Downlink Payload: **2001** 523 +* **Example 1: **Downlink Payload: **2000** ~/~/ Set AT+NJM=O 524 +* **Example 2:** Downlink Payload: **2001** ~/~/ Set AT+NJM=1 557 557 558 -== 6.5 LoRa® Network Join Status == 559 559 560 560 528 +== 6.5 LoRa® Network Join Status == 529 + 561 561 Feature: LoRa® Network Join Status. 562 562 532 +{{info}} 533 +**AT Command: AT+NJS** 534 +{{/info}} 563 563 564 -(% style="color:blue" %)**AT Command: AT+NJS** 565 - 566 566 (% border="1" style="background-color:#ffffcc; color:green; width:498.222px" %) 567 567 |=(% colspan="3" style="width: 495px;" %)AT+NJS 568 568 |(% style="width:169px" %)**Command Example**|(% style="width:164px" %)**Function**|(% style="width:161px" %)**Response** ... ... @@ -570,14 +570,16 @@ 570 570 OK 571 571 ))) 572 572 573 -== 6.6 Print Last Received Data in Raw Format == 574 574 575 575 545 +== 6.6 Print Last Received Data in Raw Format == 546 + 576 576 Feature: Print Last Received Data in Raw Format<port:data>. 577 577 549 +{{info}} 550 +**AT Command: AT+RECV** 551 +{{/info}} 578 578 579 -(% style="color:blue" %)**AT Command: AT+RECV** 580 - 581 581 (% border="1" style="background-color:#ffffcc; color:green; width:587.222px" %) 582 582 |=(% colspan="3" style="width: 584px;" %)AT+RECV 583 583 |(% style="width:161px" %)**Command Example**|(% style="width:272px" %)**Function**|(% style="width:150px" %)**Response** ... ... @@ -585,14 +585,16 @@ 585 585 OK 586 586 ))) 587 587 588 -== 6.7 Print Last Received Data in Binary Format == 589 589 590 590 562 +== 6.7 Print Last Received Data in Binary Format == 563 + 591 591 Feature: Print Last Received Data in Binary Format<port:data>. 592 592 566 +{{info}} 567 +**AT Command: AT+RECVB** 568 +{{/info}} 593 593 594 -(% style="color:blue" %)**AT Command: AT+RECVB** 595 - 596 596 (% border="1" style="background-color:#ffffcc; color:green; width:793.222px" %) 597 597 |=(% colspan="3" style="width: 790px;" %)AT+RECVB 598 598 |(% style="width:173px" %)**Command Example**|(% style="width:497px" %)**Function**|(% style="width:120px" %)**Response** ... ... @@ -600,14 +600,16 @@ 600 600 OK 601 601 ))) 602 602 603 -== 6.8 Send Text Data == 604 604 605 605 579 +== 6.8 Send Text Data == 580 + 606 606 Feature: Send Text Data<port:data>. 607 607 583 +{{info}} 584 +**AT Command: AT+SEND** 585 +{{/info}} 608 608 609 -(% style="color:blue" %)**AT Command: AT+SEND** 610 - 611 611 (% border="1" style="background-color:#ffffcc; color:green; width:991.222px" %) 612 612 |=(% colspan="3" style="width: 988px;" %)AT+SEND 613 613 |(% style="width:201px" %)**Command Example**|(% style="width:340px" %)**Function**|(% style="width:446px" %)**Response** ... ... @@ -619,34 +619,38 @@ 619 619 620 620 ))) 621 621 622 -== 6.9 Send Hexadecimal Data == 623 623 624 624 600 +== 6.9 Send Hexadecimal Data == 601 + 625 625 Feature: Send hexadecimal data along with the application port. 626 626 604 +{{info}} 605 +**AT Command: AT+SENDB** 606 +{{/info}} 627 627 628 -(% style="color:blue" %)**AT Command: AT+SENDB** 629 - 630 -(% border="1" style="background-color:#ffffcc; color:green; width:1101px" %) 631 -|=(% colspan="3" style="width: 1098px;" %)AT+SENDB 632 -|(% style="width:257px" %)**Command Example**|(% style="width:394px" %)**Function**|(% style="width:446px" %)**Response** 633 -|(% style="width:257px" %)AT+SENDB=12:abcdef0123456789|(% style="width:394px" %)Send hexadecimal data along with the application port.|(% style="width:446px" %)OK 634 -|(% 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((( 608 +(% border="1" style="background-color:#ffffcc; color:green; width:1120.22px" %) 609 +|=(% colspan="3" style="width: 1117px;" %)AT+SENDB 610 +|(% style="width:257px" %)**Command Example**|(% style="width:406px" %)**Function**|(% style="width:453px" %)**Response** 611 +|(% style="width:257px" %)AT+SENDB=12:abcdef0123456789|(% style="width:406px" %)Send hexadecimal data along with the application port.|(% style="width:453px" %)OK 612 +|(% style="width:257px" %)AT+SENDB=abcdef0123456789|(% style="width:406px" %)Send hexadecimal data along with the application port.|(% style="width:453px" %)While Error in format, return((( 635 635 AT_PARAM_ERROR AT_BUSY_ERROR/AT_NO_NETWORK_JOINED 636 636 637 637 638 638 ))) 639 639 618 + 619 + 640 640 = 7. LoRaWAN network management = 641 641 642 642 == 7.1 Adaptive Data Rate == 643 643 644 - 645 645 Feature: Get or Set the Adaptive Data Rate setting. (0: off, 1: on). 646 646 626 +{{info}} 627 +**AT Command: AT+ADR** 628 +{{/info}} 647 647 648 -(% style="color:blue" %)**AT Command: AT+ADR** 649 - 650 650 (% border="1" style="background-color:#ffffcc; color:green; width:683.222px" %) 651 651 |=(% colspan="3" style="width: 680px;" %)AT+ADR 652 652 |(% style="width:162px" %)**Command Example**|(% style="width:266px" %)**Function**|(% style="width:250px" %)**Response** ... ... @@ -658,21 +658,26 @@ 658 658 AT_PARAM_ERROR 659 659 ))) 660 660 661 -(% style="color:blue" %)**Downlink Command: 0x22** 641 +{{info}} 642 +**Downlink Command: 0x22** 643 +{{/info}} 662 662 645 + 663 663 If the downlink payload=2201, it means setting the adaptive data rate to 1, while type code is 22. 664 664 665 -* **Example 1**: Downlink Payload: **2201** 666 -* **Example 2**: Downlink Payload: **2200FFFF** 648 +* **Example 1**: Downlink Payload: **2201** ~/~/ Set AT+ADR=1. 649 +* **Example 2**: Downlink Payload: **2200FFFF** ~/~/ Set AT+ADR=0. 667 667 668 -== 7.2 LoRa® Class == 669 669 670 670 653 +== 7.2 LoRa® Class == 654 + 671 671 Feature: Get or Set the Device Class(Currently only support class A, class C). 672 672 657 +{{info}} 658 +**AT Command:AT+CLASS** 659 +{{/info}} 673 673 674 -(% style="color:blue" %)**AT Command: AT+CLASS** 675 - 676 676 (% border="1" style="background-color:#ffffcc; color:green; width:507.222px" %) 677 677 |=(% colspan="3" style="width: 504px;" %)AT+CLASS 678 678 |(% style="width:163px" %)**Command Example**|(% style="width:166px" %)**Function**|(% style="width:175px" %)**Response** ... ... @@ -683,13 +683,15 @@ 683 683 684 684 ))) 685 685 686 -== 7.3 Duty Cycle Setting == 687 687 688 688 689 - Feature:Getor Set the ETSIDuty Cyclesetting** -0**=disable, **1**=enable - Only for testing.673 +== 7.3 Duty Cycle Setting == 690 690 675 +Feature: Get or Set the ETSI Duty Cycle setting - 0=disable, 1=enable - Only for testing. 691 691 692 -(% style="color:blue" %)**AT Command: AT+DCS** 677 +{{info}} 678 +**AT Command:AT+DCS** 679 +{{/info}} 693 693 694 694 (% border="1" style="background-color:#ffffcc; color:green; width:515.222px" %) 695 695 |=(% colspan="3" style="width: 512px;" %)AT+DCS ... ... @@ -703,17 +703,12 @@ 703 703 704 704 == 7.4 Data Rate == 705 705 693 +Feature: Get or Set the Data Rate. (0-7 corresponding to DR_X) . Note: while set Data Rate, please use set Adptive Data Rate, ADR=0 first. otherwise device will response to server's ADR command and change the DR to the setting from server 706 706 707 -Feature: Get or Set the Data Rate. (0-7 corresponding to DR_X) . 695 +{{info}} 696 +**AT Command: AT+DR** 697 +{{/info}} 708 708 709 -(% style="color:red" %) 710 -**Notice:** 711 - 712 -* User need to set Adaptive Data Rate(ADR)=0 first. otherwise device will respond to server's ADR command and change the DR according to server auto-adjustment. 713 -* Data Rate specifies Spreading Factor. The mapping varies in different frequency bands. User can check this link for detail. [[rp2-1.0.3-lorawan-regional-parameters.pdf>>https://lora-alliance.org/resource_hub/rp2-1-0-3-lorawan-regional-parameters/]] 714 - 715 -(% style="color:blue" %)**AT Command: AT+DR** 716 - 717 717 (% border="1" style="background-color:#ffffcc; color:green; width:466.222px" %) 718 718 |=(% colspan="3" style="width: 463px;" %)AT+DR 719 719 |(% style="width:156px" %)**Command Example**|(% style="width:167px" %)**Function**|(% style="width:140px" %)**Response** ... ... @@ -724,21 +724,24 @@ 724 724 725 725 ))) 726 726 727 -(% style="color:blue" %)**Downlink Command: 0x2200aaFF** 709 +{{info}} 710 +**Downlink Command: 0x2200aaFF** 711 +{{/info}} 728 728 713 + 729 729 If the downlink payload=220001FF, it means setting the data rate to 1, while type code is 22 00 aa FF. 730 730 731 -* **Example 1**: Downlink Payload: **220001FF** 732 -* **Example 2**: Downlink Payload: **220000FF** 716 +* **Example 1**: Downlink Payload: **220001FF** ~/~/ Set AT+DR=1. 717 +* **Example 2**: Downlink Payload: **220000FF** ~/~/ Set AT+DR=0. 733 733 734 734 == 7.5 Frame Counter Downlink == 735 735 736 - 737 737 Feature: Get or Set the Frame Counter Downlink. 738 738 723 +{{info}} 724 +**AT Command:AT+FCD** 725 +{{/info}} 739 739 740 -(% style="color:blue" %)**AT Command: AT+FCD** 741 - 742 742 (% border="1" style="background-color:#ffffcc; color:green; width:693.222px" %) 743 743 |=(% colspan="3" style="width: 690px;" %)AT+FCD 744 744 |(% style="width:162px" %)**Command Example**|(% style="width:258px" %)**Function**|(% style="width:269px" %)**Response** ... ... @@ -747,6 +747,8 @@ 747 747 ))) 748 748 |(% style="width:162px" %)AT+FCD=10|(% style="width:258px" %)Set the Frame Counter Downlink.|(% style="width:269px" %)(System will write new value to FCD)((( 749 749 OK 735 + 736 + 750 750 ))) 751 751 752 752 == 7.6 Frame Counter Uplink == ... ... @@ -753,9 +753,10 @@ 753 753 754 754 Feature: Get or Set the Frame Counter Uplink. 755 755 743 +{{info}} 744 +**AT Command:AT+FCU** 745 +{{/info}} 756 756 757 -(% style="color:blue" %)**AT Command: AT+FCU** 758 - 759 759 (% border="1" style="background-color:#ffffcc; color:green; width:534.222px" %) 760 760 |=(% colspan="3" style="width: 531px;" %)AT+FCU 761 761 |(% style="width:177px" %)**Command Example**|(% style="width:239px" %)**Function**|(% style="width:113px" %)**Response** ... ... @@ -768,12 +768,12 @@ 768 768 769 769 == 7.7 Join Accept Delay1 == 770 770 771 - 772 772 Feature: Get or Set the Join Accept Delay between the end of the Tx and the Join Rx Window 1 in ms. 773 773 761 +{{info}} 762 +**AT Command:AT+JN1DL** 763 +{{/info}} 774 774 775 -(% style="color:blue" %)**AT Command: AT+JN1DL** 776 - 777 777 (% border="1" style="background-color:#ffffcc; color:green; width:537.222px" %) 778 778 |=(% colspan="3" style="width: 534px;" %)AT+JN1DL 779 779 |(% style="width:164px" %)**Command Example**|(% style="width:229px" %)**Function**|(% style="width:140px" %)**Response** ... ... @@ -786,12 +786,12 @@ 786 786 787 787 == 7.8 Join Accept Delay2 == 788 788 789 - 790 790 Feature: Get or Set the Join Accept Delay between the end of the Tx and the Join Rx Window 2 in ms. 791 791 779 +{{info}} 780 +**AT Command:AT+JN2DL** 781 +{{/info}} 792 792 793 -(% style="color:blue" %)**AT Command: AT+JN2DL** 794 - 795 795 (% border="1" style="background-color:#ffffcc; color:green; width:538.222px" %) 796 796 |=(% colspan="3" style="width: 535px;" %)AT+JN2DL 797 797 |(% style="width:160px" %)**Command Example**|(% style="width:228px" %)**Function**|(% style="width:146px" %)**Response** ... ... @@ -804,14 +804,12 @@ 804 804 805 805 == 7.9 Public Network Mode == 806 806 795 +Feature: Get or Set the public network mode. (0: off, 1: on) 807 807 808 -Feature: Get or Set the public network mode. (0: off, 1: on). A Public LoRaWAN network use 0x34 as syncword. Default Settings; PNM=1 797 +{{info}} 798 +**AT Command:AT+PNM** 799 +{{/info}} 809 809 810 -(% style="color:red" %)**Notice: If user build their own LoRaWAN server but still use syncword=0x34, this is still considered a public LoRaWAN network.** 811 - 812 - 813 -(% style="color:blue" %)**AT Command: AT+PNM** 814 - 815 815 (% border="1" style="background-color:#ffffcc; color:green; width:667.222px" %) 816 816 |=(% colspan="3" style="width: 664px;" %)AT+PNM 817 817 |(% style="width:166px" %)**Command Example**|(% style="width:225px" %)**Function**|(% style="width:272px" %)**Response** ... ... @@ -818,25 +818,20 @@ 818 818 |(% style="width:166px" %)AT+PNM=?|(% style="width:225px" %)Get the public network mode.|(% style="width:272px" %)1((( 819 819 OK 820 820 ))) 821 -|(% style="width:166px" %)AT+PNM=1|(% style="width:225px" %)((( 822 -Set the public network mode. 823 - 824 -Set syncword=0x34 825 -)))|(% style="width:272px" %)(System will write new value to PNM)((( 807 +|(% style="width:166px" %)AT+PNM=1|(% style="width:225px" %)Set the public network mode.|(% style="width:272px" %)(System will write new value to PNM)((( 826 826 OK 827 827 828 828 829 829 ))) 830 -|(% style="width:166px" %)AT+PNM=0|(% style="width:225px" %)Set to use private network autoset syncword=0x12|(% style="width:272px" %) 831 831 832 832 == 7.10 Receive Delay1 == 833 833 834 - 835 835 Feature: Get or Set the delay between the end of the Tx and the Rx Window 1 in ms 836 836 817 +{{info}} 818 +**AT Command:AT+RX1DL** 819 +{{/info}} 837 837 838 -(% style="color:blue" %)**AT Command: AT+RX1DL** 839 - 840 840 (% border="1" style="background-color:#ffffcc; color:green; width:408.222px" %) 841 841 |=(% colspan="3" style="width: 405px;" %)AT+RX1DL 842 842 |(% style="width:155px" %)**Command Example**|(% style="width:128px" %)**Function**|(% style="width:122px" %)**Response** ... ... @@ -849,12 +849,12 @@ 849 849 850 850 == 7.11 Receive Delay2 == 851 851 852 - 853 853 Feature: Get or Set the delay between the end of the Tx and the Rx Window 2 in ms 854 854 835 +{{info}} 836 +**AT Command:AT+RX2DL** 837 +{{/info}} 855 855 856 -(% style="color:blue" %)**AT Command: AT+RX2DL** 857 - 858 858 (% border="1" style="background-color:#ffffcc; color:green; width:481.222px" %) 859 859 |=(% colspan="3" style="width: 478px;" %)AT+RX2DL 860 860 |(% style="width:175px" %)**Command Example**|(% style="width:152px" %)**Function**|(% style="width:150px" %)**Response** ... ... @@ -867,12 +867,12 @@ 867 867 868 868 == 7.12 Rx2 Window Data Rate == 869 869 870 - 871 871 Feature: Get or Set the Rx2 window data rate (0-7 corresponding to DR_X) 872 872 853 +{{info}} 854 +**AT Command:AT+RX2DR** 855 +{{/info}} 873 873 874 -(% style="color:blue" %)**AT Command: AT+RX2DR** 875 - 876 876 (% border="1" style="background-color:#ffffcc; color:green; width:525.222px" %) 877 877 |=(% colspan="3" style="width: 522px;" %)AT+RX2DR 878 878 |(% style="width:160px" %)**Command Example**|(% style="width:232px" %)**Function**|(% style="width:130px" %)**Response** ... ... @@ -885,12 +885,12 @@ 885 885 886 886 == 7.13 Rx2 Window Frequency == 887 887 888 - 889 889 Feature: Get or Set the Rx2 window frequency 890 890 871 +{{info}} 872 +**AT Command:AT+RX2FQ** 873 +{{/info}} 891 891 892 -(% style="color:blue" %)**AT Command: AT+RX2FQ** 893 - 894 894 (% border="1" style="background-color:#ffffcc; color:green; width:587.222px" %) 895 895 |=(% colspan="3" style="width: 584px;" %)AT+RX2FQ 896 896 |(% style="width:183px" %)**Command Example**|(% style="width:240px" %)**Function**|(% style="width:160px" %)**Response** ... ... @@ -903,14 +903,12 @@ 903 903 904 904 == 7.14 Transmit Power == 905 905 906 - 907 907 Feature: Get or Set the Transmit Power(0-5, MAX:0, MIN:5, according to LoRaWAN Spec, or 40=10dB, 41 = 11dB, …, 50 = 20dB which is out of LoRaWAN spec. ) 908 908 909 -(% style="color:red" %)**Notice: Transmit Power might be changed by ADR from LoRaWAN server. So manually change TXP also remember to set AT+ADR=0 in sensor** 889 +{{info}} 890 +**AT Command:AT+TXP** 891 +{{/info}} 910 910 911 - 912 -(% style="color:blue" %)**AT Command: AT+TXP** 913 - 914 914 (% border="1" style="background-color:#ffffcc; color:green; width:465.222px" %) 915 915 |=(% colspan="3" style="width: 462px;" %)AT+TXP 916 916 |(% style="width:161px" %)**Command Example**|(% style="width:189px" %)**Function**|(% style="width:112px" %)**Response** ... ... @@ -925,17 +925,17 @@ 925 925 926 926 If the downlink payload=22000100, it means setting the TXP to 0. 927 927 928 -* **Example 1**: Downlink Payload: **22000102** 929 -* **Example 2**: Downlink Payload: **220000FF** 907 +* **Example 1**: Downlink Payload: **22000102** ~/~/ Set AT+TXP=2. 908 +* **Example 2**: Downlink Payload: **220000FF** ~/~/ Set AT+TXP=0. 930 930 931 931 == 7.15 RSSI of the Last Received Packet == 932 932 933 - 934 934 Feature: Get or Set the Rx2 window frequency 935 935 914 +{{info}} 915 +**AT Command:AT+RSSI** 916 +{{/info}} 936 936 937 -(% style="color:blue" %)**AT Command:AT+RSSI** 938 - 939 939 (% border="1" style="background-color:#ffffcc; color:green; width:557.222px" %) 940 940 |=(% colspan="3" style="width: 554px;" %)AT+RSSI 941 941 |(% style="width:164px" %)**Command Example**|(% style="width:289px" %)**Function**|(% style="width:100px" %)**Response** ... ... @@ -945,12 +945,12 @@ 945 945 946 946 == 7.16 SNR of the Last Received Packet == 947 947 948 - 949 949 Feature: Get the SNR of the last received packet 950 950 929 +{{info}} 930 +**AT Command:AT+SNR** 931 +{{/info}} 951 951 952 -(% style="color:blue" %)**AT Command: AT+SNR** 953 - 954 954 (% border="1" style="background-color:#ffffcc; color:green; width:571.222px" %) 955 955 |=(% colspan="3" style="width: 568px;" %)AT+SNR 956 956 |(% style="width:164px" %)**Command Example**|(% style="width:290px" %)**Function**|(% style="width:113px" %)**Response** ... ... @@ -960,12 +960,12 @@ 960 960 961 961 == 7.17 Application Port == 962 962 963 - 964 964 Feature: Get or set the application port. 965 965 944 +{{info}} 945 +**AT Command: AT+PORT** 946 +{{/info}} 966 966 967 -(% style="color:blue" %)**AT Command: AT+PORT** 968 - 969 969 (% border="1" style="background-color:#ffffcc; color:green; width:500.222px" %) 970 970 |=(% colspan="3" style="width: 497px;" %)AT+PORT 971 971 |(% style="width:157px" %)**Command Example**|(% style="width:204px" %)**Function**|(% style="width:135px" %)**Response** ... ... @@ -974,23 +974,25 @@ 974 974 ))) 975 975 |(% style="width:157px" %)AT+PORT=21|(% style="width:204px" %)Set the application port|(% style="width:135px" %)OK 976 976 977 -(% style="color:blue" %)**Downlink Command: 0x23** 956 +{{info}} 957 +**Downlink Command: 0x23** 958 +{{/info}} 978 978 979 979 Format: Command Code (0x23) followed by 1 bytes port value. 980 980 981 981 If the downlink payload=2301, it means set the application port to 1, while type code is 23. 982 982 983 -* **Example 1**: Downlink Payload: **2301** 984 -* **Example 2**: Downlink Payload:** 2305** 964 +* **Example 1**: Downlink Payload: **2301** ~/~/ set the application port to 1 965 +* **Example 2**: Downlink Payload:** 2305** ~/~/ set the application port to 5 985 985 986 986 == 7.18 Single Channel Mode == 987 987 988 - 989 989 Feature:Get or Set Frequency (Unit: Hz) for Single Channel Mode. 990 990 971 +{{info}} 972 +**AT Command: AT+CHS** 973 +{{/info}} 991 991 992 -(% style="color:blue" %)**AT Command: AT+CHS** 993 - 994 994 (% border="1" style="background-color:#ffffcc; color:green; width:603.222px" %) 995 995 |=(% colspan="3" style="width: 600px;" %)AT+CHS 996 996 |(% style="width:182px" %)**Command Example**|(% style="width:295px" %)**Function**|(% style="width:122px" %)**Response** ... ... @@ -1001,12 +1001,12 @@ 1001 1001 1002 1002 == 7.19 Eight Channel Mode == 1003 1003 1004 - 1005 1005 Feature: Get or Set eight channels mode,Only for US915,AU915,CN470. 1006 1006 987 +{{info}} 988 +**AT Command: AT+CHE** 989 +{{/info}} 1007 1007 1008 -(% style="color:blue" %)**AT Command: AT+CHE** 1009 - 1010 1010 (% border="1" style="background-color:#ffffcc; color:green; width:710.222px" %) 1011 1011 |=(% colspan="3" style="width: 707px;" %)AT+CHE 1012 1012 |(% style="width:160px" %)**Command Example**|(% style="width:198px" %)**Function**|(% style="width:349px" %)**Response** ... ... @@ -1017,23 +1017,25 @@ 1017 1017 ))) 1018 1018 |(% style="width:160px" %)AT+CHE=1|(% style="width:198px" %)Set eight channels mode|(% style="width:349px" %)OK 1019 1019 1020 -(% style="color:blue" %)**Downlink Command: 0x24 (LHT65,LHT65N Downlink Command:0x07)** 1001 +{{info}} 1002 +**Downlink Command: 0x24** 1003 +{{/info}} 1021 1021 1022 1022 Format: Command Code (0x24) followed by 1 bytes channel value. 1023 1023 1024 1024 If the downlink payload=2401, it means set channel mode to 1, while type code is 24. 1025 1025 1026 -* **Example 1**: Downlink Payload: 2401 1027 -* **Example 2**: Downlink Payload: 2405 1009 +* **Example 1**: Downlink Payload: 2401 ~/~/ set channel mode to 1 1010 +* **Example 2**: Downlink Payload: 2405 ~/~/ set channel mode to 5 1028 1028 1029 1029 == 7.20 Get or Set RXwindows1 timeout == 1030 1030 1014 +Feature:Get or Set the number of symbols to detect and timeout from RXwindow1(0 to 255). 1031 1031 1032 -Feature: Get or Set the number of symbols to detect and timeout from RXwindow1(0 to 255). 1016 +{{info}} 1017 +**AT Command: AT+RX1WTO** 1018 +{{/info}} 1033 1033 1034 - 1035 -(% style="color:blue" %)**AT Command: AT+RX1WTO** 1036 - 1037 1037 (% border="1" style="background-color:#ffffcc; color:green; width:460.222px" %) 1038 1038 |=(% colspan="3" style="width: 457px;" %)AT+ RX1WTO 1039 1039 |(% style="width:163px" %)**Command Example**|(% style="width:201px" %)**Function**|(% style="width:93px" %)**Response** ... ... @@ -1043,17 +1043,11 @@ 1043 1043 |(% style="width:163px" %)AT+RX1WTO=60|(% style="width:201px" %)Set RXwindows1 timeout|(% style="width:93px" %)OK 1044 1044 1045 1045 ((( 1046 - 1047 - 1048 - 1049 -(% 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. 1050 - 1051 - 1029 +**AT+RX1TWO** is theRxSingle timeout value of receive window 1. If it is not set, then the queriedvalue is the default value. If it is set, then the queried value is the setvalue. AT+RX2TWO is thesame as above. The definitionof RxSingle timeout is as described in the following paragraph. 1052 1052 ))) 1053 1053 1054 1054 [[image:image-20220526162535-1.png]] 1055 1055 1056 - 1057 1057 ((( 1058 1058 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. 1059 1059 ... ... @@ -1062,12 +1062,12 @@ 1062 1062 1063 1063 == 7.21 Get or Set RXwindows2 timeout == 1064 1064 1042 +Feature:Get or Set the number of symbols to detect and timeout from RXwindow2(0 to 255). 1065 1065 1066 -Feature: Get or Set the number of symbols to detect and timeout from RXwindow2(0 to 255). 1044 +{{info}} 1045 +**AT Command: AT+RX2WTO** 1046 +{{/info}} 1067 1067 1068 - 1069 -(% style="color:blue" %)**AT Command: AT+RX2WTO** 1070 - 1071 1071 (% border="1" style="background-color:#ffffcc; color:green; width:497.222px" %) 1072 1072 |=(% colspan="3" style="width: 494px;" %)AT+ RX2WTO 1073 1073 |(% style="width:190px" %)**Command Example**|(% style="width:199px" %)**Function**|(% style="width:104px" %)**Response** ... ... @@ -1078,12 +1078,12 @@ 1078 1078 1079 1079 == 7.22 Setting up uplinkdwelltime (as923, au915) == 1080 1080 1081 - 1082 1082 Feature: Get or Set uplinkdwelltime 1083 1083 1060 +{{info}} 1061 +**AT Command: AT+DWELLT** 1062 +{{/info}} 1084 1084 1085 -(% style="color:blue" %)**AT Command: AT+DWELLT** 1086 - 1087 1087 (% border="1" style="background-color:#ffffcc; color:green; width:497.222px" %) 1088 1088 |=(% colspan="3" style="width: 494px;" %)AT+DWELLT 1089 1089 |(% style="width:183px" %)**Command Example**|(% style="width:179px" %)**Function**|(% style="width:131px" %)**Response** ... ... @@ -1092,23 +1092,23 @@ 1092 1092 ))) 1093 1093 |(% style="width:183px" %)AT+DWELLT=0|(% style="width:179px" %)Set uplinkdwelltime|(% style="width:131px" %)OK 1094 1094 1095 -(% style="color:blue" %)**Downlink Command: 0x25** 1072 +{{info}} 1073 +**Downlink Command: 0x25** 1074 +{{/info}} 1096 1096 1097 1097 Format: Command Code (0x25) followed by 1 bytes state value. 1098 1098 1099 1099 If the downlink payload=2501, it means set uplinkdwelltime to 1, while type code is 25. 1100 1100 1101 -* **Example 1**: Downlink Payload: **2501** 1102 -* **Example 2**: Downlink Payload: **2500** 1080 +* **Example 1**: Downlink Payload: **2501** ~/~/ set uplinkdwelltime to 1 1081 +* **Example 2**: Downlink Payload: **2500** ~/~/ set uplinkdwelltime to 0 1103 1103 1104 1104 == 7.23 Set Packet Receiving Response Level == 1105 1105 1106 - 1107 1107 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. 1108 1108 1087 +RPL value: 1109 1109 1110 -**RPL value:** 1111 - 1112 1112 * **AT+RPL=0:** Device won't immediately reply any downlink commands from platform. 1113 1113 * **AT+RPL=1:** Device will immediately reply message to Unconfirmed Data Down. Payload is 0x00. 1114 1114 * **AT+RPL=2:** Device will immediately reply message to Confirmed Data Down. Payload is 0x00 and requied response header for this command. ... ... @@ -1115,13 +1115,15 @@ 1115 1115 * **AT+RPL=3:** Device will immediately reply message to MAC Command. Payload is 0x00 and requied response header for this command. 1116 1116 * **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. 1117 1117 1118 - **Case Analyes:**1095 +Case Analyes: 1119 1119 1120 1120 * For Class A devices, AT+RPL=0 is ok. that is defaut settings in software. 1121 1121 * For Class C devices used in ChirpStack, need to set AT+RPL=4 because Chirpstack require immedietely reply message to MAC Command. 1122 1122 * For Class C devices used in TTI, need to set AT+RPL=4 because TTI require immediately reply message to Confirmed Data Down & MAC Command. 1123 1123 1124 -(% style="color:blue" %)**AT Command: AT+RPL** 1101 +{{info}} 1102 +**AT Command: AT+RPL** 1103 +{{/info}} 1125 1125 1126 1126 (% border="1" style="background-color:#ffffcc; color:green; width:536.222px" %) 1127 1127 |=(% colspan="3" style="width: 533px;" %)AT+RPL ... ... @@ -1131,158 +1131,32 @@ 1131 1131 ))) 1132 1132 |(% style="width:160px" %)AT+RPL=0|(% style="width:263px" %)Set packet receiving response level|(% style="width:109px" %)OK 1133 1133 1134 -(% style="color:blue" %)**Downlink Command: 0x21** 1113 +{{info}} 1114 +**Downlink Command: 0x21** 1115 +{{/info}} 1135 1135 1136 1136 Format: Command Code (0x21) followed by 1 bytes level value. 1137 1137 1138 1138 If the downlink payload=2101, it means set packet receiving response level to 1, while type code is 21. 1139 1139 1140 -* **Example 1**: Downlink Payload: **2101** 1141 -* **Example 2**: Downlink Payload: **2102** 1121 +* **Example 1**: Downlink Payload: **2101** ~/~/ set packet receiving response level to 1 1122 +* **Example 2**: Downlink Payload: **2102** ~/~/ set packet receiving response level to 2 1142 1142 1143 -== 7.24 Controls NBTrans in unconfirmed uplink mode(LWS007 NBTrans:Set retransmission packets) == 1144 - 1145 - 1146 -(% style="color:blue" %)**AT Command: AT+SETMAXNBTRANS ** 1147 - 1148 -(% border="1" style="background-color:#ffffcc; color:green; width:589px" %) 1149 -|=(% colspan="3" style="width: 586px;" %)AT+**SETMAXNBTRANS** 1150 -|(% style="width:227px" %)**Command Example**|(% style="width:300px" %)**Function**|(% style="width:87px" %)**Response** 1151 -|(% style="width:227px" %)**AT+SETMAXNBTRANS=1,0**|(% style="width:300px" %)Value1: set the maximum NBTrans.|(% style="width:87px" %)1((( 1152 -OK 1153 -))) 1154 -|(% style="width:227px" %)**AT+SETMAXNBTRANS=?,1**|(% style="width:300px" %)((( 1155 -value2: 0: uplink fcnt doesn't change for each NBTrans; 1156 - 1157 -1: uplink fcnt increase by 1 for each NBTrans. 1158 -)))|(% style="width:87px" %)((( 1159 -1 1160 - 1161 -OK 1162 -))) 1163 - 1164 -(% style="color:blue" %)**Downlink Command: 0x33** 1165 - 1166 -Format: Command Code (0x33) followed by 2 bytes mode value. 1167 - 1168 -If the downlink payload=330100, it means set end node to use confirm mode, while type code is 33. 1169 - 1170 -* Example 1: Downlink Payload: 330100 ~/~/ Set AT+SETMAXNBTRANS=1,0 1171 -* Example 2: Downlink Payload: 330201 ~/~/ Set AT+SETMAXNBTRANS=2,1 1172 - 1173 -== 7.25 Device offline rejoining (LWS007) == 1174 - 1175 - 1176 -(% style="color:blue" %)**AT Command: AT+DDETECT** 1177 - 1178 -AT+DDETECT=<Flag>,<ACK_Timout_1>,<ACK_Timout_2> (Default Value: AT+DDETECT=1,1440,2880) 1179 - 1180 -* ACK_Timout_1: Unit: min 1181 -* ACK_Timout_2: Unit: min 1182 - 1183 -(% border="1" style="background-color:#ffffcc; color:green; width:710.222px" %) 1184 -|=(% colspan="3" style="width: 707px;" %)AT+**DDETECT** 1185 -|(% style="width:160px" %)**Command Example**|(% style="width:198px" %)**Function**|(% style="width:349px" %)**Response** 1186 -|(% style="width:160px" %)((( 1187 -AT+DDETECT=1,1440,2880 1188 - 1189 -value1 1190 -)))|(% style="width:198px" %)Enable online detect|(% style="width:349px" %)((( 1191 -1 1192 - 1193 -OK 1194 -))) 1195 -|(% style="width:160px" %)((( 1196 -AT+DDETECT=1,?,2880 1197 - 1198 -value2 1199 -)))|(% style="width:198px" %)Online detection packet sending time|(% style="width:349px" %)((( 1200 - 1201 - 1202 -OK 1203 -))) 1204 -|(% style="width:160px" %)((( 1205 -AT+DDETECT=1,1440,? 1206 - 1207 -value3 1208 -)))|(% style="width:198px" %)Process rejoin|(% style="width:349px" %)((( 1209 - 1210 - 1211 -OK 1212 -))) 1213 - 1214 -(% style="color:blue" %)**Downlink Command: 0x32** 1215 - 1216 -Format: Command Code (0x32) followed by 2 bytes mode value. 1217 - 1218 -If the downlink payload=320105A00B40, it means set end node to use confirm mode, while type code is 32. 1219 - 1220 -* **Example 1:** Downlink Payload: 320105A00B40 ~/~/ Set AT+DDETECT=1,1440,2880 1221 -** 0x01 : Flag 1222 -** 0x05A0: ACK_Timout_1 : 1440minutes (24 hours) 1223 -** 0x0B40: ACK_Timout_2 : 2880minutes (48 hours) 1224 -** **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. 1225 - 1226 -== 7.26 Request the server to send an ACK == 1227 - 1228 - 1229 -(% style="color:blue" %)**AT Command: AT+PNACKMD** 1230 - 1231 -(% border="1" style="background-color:#ffffcc; color:green; width:536.222px" %) 1232 -|=(% colspan="3" style="width: 533px;" %)**AT+PNACKMD** 1233 -|(% style="width:160px" %)**Command Example**|(% style="width:263px" %)**Function**|(% style="width:109px" %)**Response** 1234 -|(% 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((( 1235 -OK 1236 -))) 1237 -|(% style="width:160px" %)**AT+PNACKMD=0**|(% style="width:263px" %)off request the server to send an ACK|(% style="width:109px" %)((( 1238 -0 1239 - 1240 -OK 1241 -))) 1242 - 1243 -== 7.27 Adjust network rejoining interval == 1244 - 1245 - 1246 -(% style="color:blue" %)**AT Command: AT+RJTDC** 1247 - 1248 -(% border="1" style="background-color:#ffffcc; color:green; width:727.222px" %) 1249 -|=(% colspan="3" style="width: 724px;" %)AT+RJTDC 1250 -|(% style="width:165px" %)**Command Example**|(% style="width:227px" %)**Function**|(% style="width:329px" %)**Response** 1251 -|(% style="width:165px" %)AT+RJTDC=?|(% style="width:227px" %)Show the ReJoin data transmission interval in min|(% style="width:329px" %)30((( 1252 -OK 1253 - 1254 -the interval is 30 min 1255 -))) 1256 -|(% style="width:165px" %)AT+RJTDC=60|(% style="width:227px" %)Set the ReJoin data transmission interval in min|(% style="width:329px" %)OK((( 1257 -Set the ReJoin data transmission interval to 60 min 1258 -))) 1259 - 1260 -(% style="color:blue" %)**Downlink Command: 0x26** 1261 - 1262 -Format: Command Code (0x26) followed by 2 bytes mode value. 1263 - 1264 -If the downlink payload=26000A, it means set end node to use confirm mode, while type code is 26. 1265 - 1266 -* **Example 1:** Downlink Payload: 26000A ~/~/ Set AT+RJTDC=10 1267 -* **Example 2: **Downlink Payload: 260002 ~/~/ Set AT+RJTDC=2 1268 - 1269 1269 = 8. AT Commands Combination = 1270 1270 1271 1271 == 8.1 Set a fix RX2DR for downlink window == 1272 1272 1128 +* **AT+ADR=0 **~-~-> Disable ADR first 1129 +* **AT+RX2DR=xxxx** ~-~-> Set xxxx to your wanted DataRate 1273 1273 1274 -* (% style="color:blue" %)**AT+ADR=0 **(%%) **~-~->** Disable ADR first 1275 -* (% style="color:blue" %)**AT+RX2DR=xxxx** (%%) **~-~->** Set xxxx to your wanted DataRate 1276 - 1277 1277 == 8.2 Use Downlink Command to set a fix uplink DR == 1278 1278 1133 +{{info}} 1134 +**Downlink Command: 0x22000500** 1135 +{{/info}} 1279 1279 1280 - (% style="color:blue"%)**Downlink Command:0x22000500**1137 +Same as: 1281 1281 1282 -**Same as:** 1283 - 1284 -* AT+ADR=0 [[Reference>>||anchor="H7.1AdaptiveDataRate"]] 1285 -* AT+DR=5 [[Reference>>||anchor="H7.4DataRate"]] 1286 -* AT+TXP=0 [[Reference>>||anchor="H7.14TransmitPower"]] 1287 - 1288 - 1139 +* AT+ADR=0 [[Reference>>||anchor="H7.1AdaptiveDataRate"]] 1140 +* AT+DR=5 [[Reference>>||anchor="H7.4DataRate"]] 1141 +* AT+TXP=0 [[Reference>>||anchor="H7.14TransmitPower"]]