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
-
... ... @@ -1,4 +1,4 @@ 1 - **Contents:** 1 + **Table of** **Contents:** 2 2 3 3 {{toc/}} 4 4 ... ... @@ -6,26 +6,31 @@ 6 6 7 7 = 1. Introduction = 8 8 9 + 9 9 Dragino LoRaWAN End Node support two types of AT Commands and Downlink Commands: 10 10 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. 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. 13 13 14 14 ((( 15 15 **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.** 16 - 17 17 ))) 18 18 19 + 19 19 = 2. How to use AT Commands or Downlink command = 20 20 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: 22 + 23 +* **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/]] 24 +* **LoRaWAN Downlink Command**: The gateway transfer downlink command in HEX format. This page shows the Downlink Command In HEX format. Please note some LoRaWAN servers use base64 as downlink code so user need to convert HEX to Base64 and use. Below are references for how to use downlink command: 23 23 ** Use HEX format to send a downlink: [[TTN v3>>Notes for TTN]] 24 -** Use Base64 format to send a downlink: [[Chirpstack>>Notes for ChirpStack]] 26 +** 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]]? 25 25 ** See use note for more serves [[Servers Note>>doc:Main.WebHome]](IoT LoRaWAN Server) 26 26 29 +(% style="display:none" %) (%%) 30 + 27 27 = 3. Support End Node and firmware version = 28 28 33 + 29 29 (% border="1" style="background-color:#ffffcc; color:green; width:966px" %) 30 30 |=(% colspan="3" style="width: 963px;" %)((( 31 31 Dragino STM32 base hardware Firmware / LoRaWAN stack list ... ... @@ -97,17 +97,18 @@ 97 97 ))) 98 98 ))) 99 99 105 +(% style="display:none" %) (%%) 106 + 100 100 = 4. System Management Commands = 101 101 102 102 == 4.1 Change Uplink Interval == 103 103 111 + 104 104 Feature: Change LoRaWAN End Node Transmit Interval. 105 105 106 -(% class="box infomessage" %) 107 -((( 108 -**AT Command: AT+TDC** 109 -))) 110 110 115 +(% style="color:blue" %)**AT Command: AT+TDC** 116 + 111 111 (% border="1" style="background-color:#ffffcc; color:green; width:727.222px" %) 112 112 |=(% colspan="3" style="width: 724px;" %)AT+TDC 113 113 |(% style="width:165px" %)**Command Example**|(% style="width:227px" %)**Function**|(% style="width:329px" %)**Response** ... ... @@ -120,33 +120,35 @@ 120 120 Set transmit interval to 60000ms = 60 seconds 121 121 ))) 122 122 123 -{{info}} 124 -**Downlink Command: 0x01** 125 -{{/info}} 126 - 127 127 ((( 130 + 131 + 132 +(% style="color:blue" %)**Downlink Command: 0x01** 133 + 128 128 Format: Command Code (0x01) followed by 3 bytes time value. 129 129 ))) 130 130 131 131 ((( 132 -If the downlink payload=0100003C, it means set the END Node ’s Transmit Interval to 0x00003C=60(S), while type code is 01.138 +If the downlink payload=0100003C, it means set the END Node's Transmit Interval to 0x00003C=60(S), while type code is 01. 133 133 ))) 134 134 135 -* **Example 1**: Downlink Payload:** 0100001E** ~/~/ Set Transmit Interval (TDC) = 30 seconds 136 -* **Example 2**: Downlink Payload:** 0100003C** ~/~/ Set Transmit Interval (TDC) = 60 seconds 141 +* **Example 1**: Downlink Payload:** 0100001E** ~/~/ Set Transmit Interval (TDC) = 30 seconds 142 +* **Example 2**: Downlink Payload:** 0100003C** ~/~/ Set Transmit Interval (TDC) = 60 seconds 137 137 144 +(% style="display:none" %) (%%) 145 + 138 138 == 4.2 Reboot End Node == 139 139 148 + 140 140 Feature: Reboot End Node to perform a new OTAA or ABP Join. 141 141 142 -{{info}} 143 -**AT Command: ATZ** 144 -{{/info}} 145 145 146 -(% border="1" style="background-color:#ffffcc; color:green; width:727.222px" %) 147 -|=(% colspan="3" %)ATZ: Trig a reset of the MCU 148 -|**Command Example**|**Function**|**Response** 149 -|ATZ|Reset MCU|((( 152 +(% style="color:blue" %)**AT Command: ATZ** 153 + 154 +(% border="1" style="background-color:#ffffcc; color:green; width:546px" %) 155 +|=(% colspan="3" style="width: 543px;" %)ATZ: Trig a reset of the MCU 156 +|(% style="width:157px" %)**Command Example**|(% style="width:92px" %)**Function**|(% style="width:294px" %)**Response** 157 +|(% style="width:157px" %)ATZ|(% style="width:92px" %)Reset MCU|(% style="width:294px" %)((( 150 150 Device reset and show booting info 151 151 152 152 LSN50 Device/LoRa ST Module ... ... @@ -160,9 +160,7 @@ 160 160 <followed by the Tx and Rx information> 161 161 ))) 162 162 163 -{{info}} 164 -**Downlink Command: 0x04** 165 -{{/info}} 171 +(% style="color:blue" %)**Downlink Command: 0x04** 166 166 167 167 ((( 168 168 Format: Command Code (0x04) followed by FF. ... ... @@ -169,23 +169,22 @@ 169 169 ))) 170 170 171 171 ((( 172 -If the downlink payload=**04FF**, the end node will reboot. 173 - 174 - 178 +If the downlink payload=**04FF**, the end node will reboot. 175 175 ))) 176 176 181 + 177 177 == 4.3 Reset to factory Default == 178 178 184 + 179 179 Feature: Reset the parameters to Factory Default, factory default value depends on the firmware settings, the OTAA and ABP keys will reserve after this command. 180 180 181 -{{info}} 182 -**AT Command: AT+FDR** 183 -{{/info}} 184 184 185 -(% border="1" style="background-color:#ffffcc; color:green; width:831.222px" %) 186 -|=(% colspan="3" style="width: 828px;" %)Reset to factory default 187 -|(% style="width:181px" %)**Command Example**|(% style="width:181px" %)**Function**|(% style="width:465px" %)**Response** 188 -|(% style="width:181px" %)AT+FDR|(% style="width:181px" %)Reset to factory default|(% style="width:465px" %)((( 188 +(% style="color:blue" %)**AT Command: AT+FDR** 189 + 190 +(% border="1" style="background-color:#ffffcc; color:green; width:789px" %) 191 +|=(% colspan="3" style="width: 786px;" %)Reset to factory default 192 +|(% style="width:154px" %)**Command Example**|(% style="width:175px" %)**Function**|(% style="width:456px" %)**Response** 193 +|(% style="width:154px" %)AT+FDR|(% style="width:175px" %)Reset to factory default|(% style="width:456px" %)((( 189 189 Device reset to factory default parameters and show booting info 190 190 191 191 LSN50 Device/LoRa ST Module ... ... @@ -199,9 +199,7 @@ 199 199 Please set the parameters or reset Device to apply change 200 200 ))) 201 201 202 -{{info}} 203 -**Downlink Command: 0x04** 204 -{{/info}} 207 +(% style="color:blue" %)**Downlink Command: 0x04** 205 205 206 206 ((( 207 207 Format: Command Code (0x04) followed by FE. ... ... @@ -214,24 +214,22 @@ 214 214 215 215 == 4.4 Show Firmware Version == 216 216 220 + 217 217 Feature: Show firmware version. No downlink command yet. 218 218 219 -{{info}} 220 -**AT Command: AT+VER** 221 -{{/info}} 222 222 223 -(% border="1" style="background-color:#ffffcc; color:green; width:586px" %) 224 -|=(% colspan="3" style="width: 583px;" %)AT+VER: Image Version and Frequency Band 225 -|(% style="width:170px" %)**Command Example**|(% style="width:300px" %)**Function**|(% style="width:113px" %)**Response** 226 -|(% style="width:170px" %)AT+VER=?|(% style="width:300px" %)Show Image version and Frequency Band|(% style="width:113px" %)((( 224 +(% style="color:blue" %)**AT Command: AT+VER** 225 + 226 +(% border="1" style="background-color:#ffffcc; color:green; width:542px" %) 227 +|=(% colspan="3" style="width: 539px;" %)AT+VER: Image Version and Frequency Band 228 +|(% style="width:157px" %)**Command Example**|(% style="width:295px" %)**Function**|(% style="width:86px" %)**Response** 229 +|(% style="width:157px" %)AT+VER=?|(% style="width:295px" %)Show Image version and Frequency Band|(% style="width:86px" %)((( 227 227 1.3 EU868 228 228 229 229 OK 230 230 ))) 231 231 232 -{{info}} 233 -**Downlink Command: 0x26 (Valid in 006 stack)** 234 -{{/info}} 235 +(% style="color:blue" %)**Downlink Command: 0x26 (Valid in 006 stack)** 235 235 236 236 ((( 237 237 Downlink Format: 0x26 ... ... @@ -242,6 +242,8 @@ 242 242 ))) 243 243 244 244 ((( 246 + 247 + 245 245 **xx: Software Type:** 246 246 ))) 247 247 ... ... @@ -250,6 +250,8 @@ 250 250 * 0x00 03: LSE01/LDDS75/LDDS20/LSPH01/LLMS01/LSNPK01 251 251 252 252 ((( 256 + 257 + 253 253 **yy: Frequency Band:** 254 254 ))) 255 255 ... ... @@ -265,6 +265,8 @@ 265 265 * 0xa0: AS923-3 266 266 267 267 ((( 273 + 274 + 268 268 **zz: Subband** 269 269 ))) 270 270 ... ... @@ -273,12 +273,12 @@ 273 273 274 274 == 4.5 Show System Configure == 275 275 283 + 276 276 Feature: Show All configure. No downlink command yet. 277 277 278 -{{info}} 279 -**AT Command: AT+CFG** 280 -{{/info}} 281 281 287 +(% style="color:blue" %)**AT Command: AT+CFG** 288 + 282 282 (% border="1" style="background-color:#ffffcc; color:green; width:599.222px" %) 283 283 |=(% colspan="3" style="width: 596px;" %)AT+CFG: Print all configurations 284 284 |(% style="width:160px" %)**Command Example**|(% style="width:154px" %)**Function**|(% style="width:280px" %)**Response** ... ... @@ -300,12 +300,12 @@ 300 300 301 301 == 5.1 Application EUI == 302 302 310 + 303 303 Feature: Get or Set the Application EUI. 304 304 305 -{{info}} 306 -**AT Command: AT+APPEUI** 307 -{{/info}} 308 308 314 +(% style="color:blue" %)**AT Command: AT+APPEUI** 315 + 309 309 (% border="1" style="background-color:#ffffcc; color:green; width:686.222px" %) 310 310 |=(% colspan="3" style="width: 683px;" %)AT+APPEUI 311 311 |(% style="width:305px" %)**Command Example**|(% style="width:186px" %)**Function**|(% style="width:191px" %)**Response** ... ... @@ -314,14 +314,16 @@ 314 314 ))) 315 315 |(% style="width:305px" %)AT+APPEUI=00 b3 d5 7e f0 00 4d 34|(% style="width:186px" %)Set the Application EUI|(% style="width:191px" %)OK 316 316 324 +(% style="display:none" %) (%%) 325 + 317 317 == 5.2 Application Key == 318 318 328 + 319 319 Feature: Get or Set the Application Key. 320 320 321 -{{info}} 322 -**AT Command: AT+APPKEY** 323 -{{/info}} 324 324 332 +(% style="color:blue" %)**AT Command: AT+APPKEY** 333 + 325 325 (% border="1" style="background-color:#ffffcc; color:green; width:976.222px" %) 326 326 |=(% colspan="3" style="width: 973px;" %)AT+APPKEY 327 327 |(% style="width:441px" %)**Command Example**|(% style="width:180px" %)**Function**|(% style="width:350px" %)**Response** ... ... @@ -330,14 +330,16 @@ 330 330 ))) 331 331 |(% 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 332 332 342 +(% style="display:none" %) (%%) 343 + 333 333 == 5.3 Application Session Key == 334 334 346 + 335 335 Feature: Get or Set the Application Session Key. 336 336 337 -{{info}} 338 -**AT Command: AT+APPSKEY** 339 -{{/info}} 340 340 350 +(% style="color:blue" %)**AT Command: AT+APPSKEY** 351 + 341 341 (% border="1" style="background-color:#ffffcc; color:green; width:1040.22px" %) 342 342 |=(% colspan="3" style="width: 1037px;" %)AT+APPSKEY 343 343 |(% style="width:451px" %)**Command Example**|(% style="width:231px" %)**Function**|(% style="width:354px" %)**Response** ... ... @@ -348,14 +348,16 @@ 348 348 OK 349 349 ))) 350 350 362 +(% style="display:none" %) (%%) 363 + 351 351 == 5.4 Device Address == 352 352 366 + 353 353 Feature: Get or Set the Device Address. 354 354 355 -{{info}} 356 -**AT Command: AT+DADDR** 357 -{{/info}} 358 358 370 +(% style="color:blue" %)**AT Command: AT+DADDR** 371 + 359 359 (% border="1" style="background-color:#ffffcc; color:green; width:795.222px" %) 360 360 |=(% colspan="3" style="width: 792px;" %)AT+DADDR 361 361 |(% style="width:192px" %)**Command Example**|(% style="width:241px" %)**Function**|(% style="width:359px" %)**Response** ... ... @@ -366,14 +366,16 @@ 366 366 ))) 367 367 |(% style="width:192px" %)AT+DADDR=A8 40 41 FF|(% style="width:241px" %)Set the Application Session Key.|(% style="width:359px" %)OK 368 368 382 +(% style="display:none" %) (%%) 383 + 369 369 == 5.5 Device EUI == 370 370 386 + 371 371 Feature: Get or Set the Device EUI. 372 372 373 -{{info}} 374 -**AT Command: AT+DEUI** 375 -{{/info}} 376 376 390 +(% style="color:blue" %)**AT Command: AT+DEUI** 391 + 377 377 (% border="1" style="background-color:#ffffcc; color:green; width:1035.22px" %) 378 378 |=(% colspan="3" style="width: 1032px;" %)AT+DEUI 379 379 |(% style="width:250px" %)**Command Example**|(% style="width:147px" %)**Function**|(% style="width:634px" %)**Response** ... ... @@ -384,14 +384,16 @@ 384 384 OK 385 385 ))) 386 386 402 +(% style="display:none" %) (%%) 403 + 387 387 == 5.6 Network ID == 388 388 406 + 389 389 Feature: Get or Set the Network ID.(You can enter this command change only after successful network connection) 390 390 391 -{{info}} 392 -**AT Command: AT+NWKID** 393 -{{/info}} 394 394 410 +(% style="color:blue" %)**AT Command: AT+NWKID** 411 + 395 395 (% border="1" style="background-color:#ffffcc; color:green; width:448.222px" %) 396 396 |=(% colspan="3" style="width: 445px;" %)AT+NWKID 397 397 |(% style="width:191px" %)**Command Example**|(% style="width:153px" %)**Function**|(% style="width:101px" %)**Response** ... ... @@ -400,14 +400,16 @@ 400 400 ))) 401 401 |(% style="width:191px" %)AT+NWKID=A8 40 41 FF|(% style="width:153px" %)Set the Network ID.|(% style="width:101px" %)OK 402 402 420 +(% style="display:none" %) (%%) 421 + 403 403 == 5.7 Network Session Key == 404 404 424 + 405 405 Feature: Get or Set the Network Session Key 406 406 407 -{{info}} 408 -**AT Command: AT+NWKSKEY** 409 -{{/info}} 410 410 428 +(% style="color:blue" %)**AT Command: AT+NWKSKEY** 429 + 411 411 (% border="1" style="background-color:#ffffcc; color:green; width:1017.22px" %) 412 412 |=(% colspan="3" style="width: 1014px;" %)AT+NWKSKEY 413 413 |(% style="width:455px" %)**Command Example**|(% style="width:215px" %)**Function**|(% style="width:343px" %)**Response** ... ... @@ -416,16 +416,20 @@ 416 416 ))) 417 417 |(% 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 418 418 438 +(% style="display:none" %) (%%) 439 + 419 419 = 6. Joining and sending date on LoRaWAN network = 420 420 421 421 == 6.1 Confirm Mode == 422 422 444 +=== 6.1.1 AT+CFM command before DR-LWS007 software stack === 445 + 446 + 423 423 Feature: Get or Set the confirmation mode (0-1). 424 424 425 -{{info}} 426 -**AT Command: AT+CFM** 427 -{{/info}} 428 428 450 +(% style="color:blue" %)**AT Command: AT+CFM** 451 + 429 429 (% border="1" style="background-color:#ffffcc; color:green; width:710.222px" %) 430 430 |=(% colspan="3" style="width: 707px;" %)AT+CFM 431 431 |(% style="width:155px" %)**Command Example**|(% style="width:205px" %)**Function**|(% style="width:346px" %)**Response** ... ... @@ -435,38 +435,87 @@ 435 435 |(% style="width:155px" %)AT+CFM=1|(% style="width:205px" %)Set the confirmation mode|(% style="width:346px" %)OK 436 436 |(% style="width:155px" %)AT+CFM=2|(% style="width:205px" %)Set the confirmation mode|(% style="width:346px" %)While Error in format, return AT_PARAM_ERROR 437 437 438 -Downlink Command: 0x05 461 +(% style="color:blue" %)**Downlink Command: 0x05** 439 439 440 440 Format: Command Code (0x05) followed by 2 bytes mode value. 441 441 442 442 If the downlink payload=0501, it means set end node to use confirm mode, while type code is 05. 443 443 444 -* Example 1: Downlink Payload: 0501 ~/~/ Set AT+CFM=1 445 -* Example 2: Downlink Payload: 0500 ~/~/ Set AT+CFM=0 467 +* **Example 1:** Downlink Payload: 0501 ~/~/ Set AT+CFM=1 468 +* **Example 2:** Downlink Payload: 0500 ~/~/ Set AT+CFM=0 446 446 470 +(% style="display:none" %) (%%) 471 + 472 +=== 6.1.2 AT+CFM command since DR-LWS007 software stack === 473 + 474 + 475 +(% style="color:blue" %)**AT Command: AT+CFM** 476 + 477 +(% border="1" style="background-color:#ffffcc; color:green; width:710.222px" %) 478 +|=(% colspan="3" style="width: 707px;" %)AT+CFM 479 +|(% style="width:160px" %)**Command Example**|(% style="width:198px" %)**Function**|(% style="width:349px" %)**Response** 480 +|(% style="width:160px" %)((( 481 +AT+CFM=1,0,0 482 + 483 +value1 484 +)))|(% style="width:198px" %)confirmed uplink|(% style="width:349px" %)((( 485 +1 486 + 487 +OK 488 +))) 489 +|(% style="width:160px" %)((( 490 +AT+CFM=0,?,0 491 + 492 +value2 493 +)))|(% style="width:198px" %)set max retry , range: 0 ~~ 7|(% style="width:349px" %)((( 494 +0~~7 495 + 496 +OK 497 +))) 498 +|(% style="width:160px" %)((( 499 +AT+CFM=0,0,1 500 + 501 +value3 502 +)))|(% style="width:198px" %)uplink fcnt increase by 1 for each retry|(% style="width:349px" %)((( 503 +1 504 + 505 +OK 506 +))) 507 + 508 +(% style="color:blue" %)**Downlink Command: 0x05** 509 + 510 +Format: Command Code (0x05) followed by 2 bytes mode value. 511 + 512 +If the downlink payload=05010101, it means set end node to use confirm mode, while type code is 05. 513 + 514 +* **Example 1:** Downlink Payload: 05010101 ~/~/ Set AT+CFM=1,1,1 515 +* **Example 2:** Downlink Payload: 05000700 ~/~/ Set AT+CFM=0,7,0 516 + 517 +(% style="display:none" %) (%%) 518 + 447 447 == 6.2 Confirm Status == 448 448 521 + 449 449 Feature: Get confirmation status of the last AT+SEND (0-1). 450 450 451 -{{info}} 452 -**AT Command: AT+CFS** 453 -{{/info}} 454 454 455 -(% border="1" style="background-color:#ffffcc; color:green; width:534.222px" %) 456 -|=(% colspan="3" style="width: 531px;" %)AT+CFS 457 -|(% style="width:156px" %)**Command Example**|(% style="width:193px" %)**Function**|(% style="width:178px" %)**Response** 458 -|(% style="width:156px" %)AT+CFS=?|(% style="width:193px" %)Get confirmation status|(% style="width:178px" %)0((( 525 +(% style="color:blue" %)**AT Command: AT+CFS** 526 + 527 +(% border="1" style="background-color:#ffffcc; color:green; width:463px" %) 528 +|=(% colspan="3" style="width: 460px;" %)AT+CFS 529 +|(% style="width:156px" %)**Command Example**|(% style="width:193px" %)**Function**|(% style="width:107px" %)**Response** 530 +|(% style="width:156px" %)AT+CFS=?|(% style="width:193px" %)Get confirmation status|(% style="width:107px" %)0((( 459 459 OK 460 460 ))) 461 461 462 462 == 6.3 Join LoRa® Network == 463 463 536 + 464 464 Feature: Join network. 465 465 466 -{{info}} 467 -**AT Command: AT+JOIN** 468 -{{/info}} 469 469 540 +(% style="color:blue" %)**AT Command: AT+JOIN** 541 + 470 470 (% border="1" style="background-color:#ffffcc; color:green; width:647.222px" %) 471 471 |=(% colspan="3" style="width: 644px;" %)AT+JOIN 472 472 |(% style="width:163px" %)**Command Example**|(% style="width:147px" %)**Function**|(% style="width:334px" %)**Response** ... ... @@ -478,12 +478,12 @@ 478 478 479 479 == 6.4 LoRa® Network Join Mode == 480 480 553 + 481 481 Feature: Get or Set the Network Join Mode. (0: ABP, 1: OTAA). 482 482 483 -{{info}} 484 -**AT Command: AT+NJM** 485 -{{/info}} 486 486 557 +(% style="color:blue" %)**AT Command: AT+NJM** 558 + 487 487 (% border="1" style="background-color:#ffffcc; color:green; width:753.222px" %) 488 488 |=(% colspan="3" style="width: 750px;" %)AT+NJM 489 489 |(% style="width:162px" %)**Command Example**|(% style="width:227px" %)**Function**|(% style="width:361px" %)**Response** ... ... @@ -493,25 +493,25 @@ 493 493 |(% style="width:162px" %)AT+NJM=0|(% style="width:227px" %)Set the Network Join Mode|(% style="width:361px" %)OK 494 494 |(% 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 495 495 496 -{{info}} 497 -**Downlink Command: 0x20** 498 -{{/info}} 568 +(% style="color:blue" %)**Downlink Command: 0x20** 499 499 500 500 Format: Command Code (0x20) followed by 1 bytes mode value. 501 501 502 502 If the downlink payload=2000, it means set the Network Join Mode, while type code is 20. 503 503 504 -* **Example 1: **Downlink Payload: **2000** O505 -* **Example 2:** Downlink Payload: **2001** ~/~/ Set AT+NJM=1 574 +* **Example 1: **Downlink Payload: **2000 ** ~/~/ Set AT+NJM=0 575 +* **Example 2:** Downlink Payload: **2001** ~/~/ Set AT+NJM=1 506 506 577 +(% style="display:none" %) (%%) 578 + 507 507 == 6.5 LoRa® Network Join Status == 508 508 581 + 509 509 Feature: LoRa® Network Join Status. 510 510 511 -{{info}} 512 -**AT Command: AT+NJS** 513 -{{/info}} 514 514 585 +(% style="color:blue" %)**AT Command: AT+NJS** 586 + 515 515 (% border="1" style="background-color:#ffffcc; color:green; width:498.222px" %) 516 516 |=(% colspan="3" style="width: 495px;" %)AT+NJS 517 517 |(% style="width:169px" %)**Command Example**|(% style="width:164px" %)**Function**|(% style="width:161px" %)**Response** ... ... @@ -519,14 +519,16 @@ 519 519 OK 520 520 ))) 521 521 594 +(% style="display:none" %) (%%) 595 + 522 522 == 6.6 Print Last Received Data in Raw Format == 523 523 598 + 524 524 Feature: Print Last Received Data in Raw Format<port:data>. 525 525 526 -{{info}} 527 -**AT Command: AT+RECV** 528 -{{/info}} 529 529 602 +(% style="color:blue" %)**AT Command: AT+RECV** 603 + 530 530 (% border="1" style="background-color:#ffffcc; color:green; width:587.222px" %) 531 531 |=(% colspan="3" style="width: 584px;" %)AT+RECV 532 532 |(% style="width:161px" %)**Command Example**|(% style="width:272px" %)**Function**|(% style="width:150px" %)**Response** ... ... @@ -534,14 +534,16 @@ 534 534 OK 535 535 ))) 536 536 611 +(% style="display:none" %) (%%) 612 + 537 537 == 6.7 Print Last Received Data in Binary Format == 538 538 615 + 539 539 Feature: Print Last Received Data in Binary Format<port:data>. 540 540 541 -{{info}} 542 -**AT Command: AT+RECVB** 543 -{{/info}} 544 544 619 +(% style="color:blue" %)**AT Command: AT+RECVB** 620 + 545 545 (% border="1" style="background-color:#ffffcc; color:green; width:793.222px" %) 546 546 |=(% colspan="3" style="width: 790px;" %)AT+RECVB 547 547 |(% style="width:173px" %)**Command Example**|(% style="width:497px" %)**Function**|(% style="width:120px" %)**Response** ... ... @@ -549,53 +549,54 @@ 549 549 OK 550 550 ))) 551 551 628 +(% style="display:none" %) (%%) 629 + 552 552 == 6.8 Send Text Data == 553 553 632 + 554 554 Feature: Send Text Data<port:data>. 555 555 556 -{{info}} 557 -**AT Command: AT+SEND** 558 -{{/info}} 559 559 636 +(% style="color:blue" %)**AT Command: AT+SEND** 637 + 560 560 (% border="1" style="background-color:#ffffcc; color:green; width:991.222px" %) 561 561 |=(% colspan="3" style="width: 988px;" %)AT+SEND 562 562 |(% style="width:201px" %)**Command Example**|(% style="width:340px" %)**Function**|(% style="width:446px" %)**Response** 563 563 |(% style="width:201px" %)AT+SEND=12:hello world|(% style="width:340px" %)Send text data along with the application port.|(% style="width:446px" %)OK((( 564 564 While Error in format, return 565 - 566 566 AT_BUSY_ERROR/AT_BUSY_ERROR/AT_NO_NETWORK_JOINED 567 - 568 - 569 569 ))) 570 570 646 +(% style="display:none" %) (%%) 647 + 571 571 == 6.9 Send Hexadecimal Data == 572 572 650 + 573 573 Feature: Send hexadecimal data along with the application port. 574 574 575 -{{info}} 576 -**AT Command: AT+SENDB** 577 -{{/info}} 578 578 579 -(% border="1" style="background-color:#ffffcc; color:green; width:1120.22px" %) 580 -|=(% colspan="3" style="width: 1117px;" %)AT+SENDB 581 -|(% style="width:257px" %)**Command Example**|(% style="width:406px" %)**Function**|(% style="width:453px" %)**Response** 582 -|(% style="width:257px" %)AT+SENDB=12:abcdef0123456789|(% style="width:406px" %)Send hexadecimal data along with the application port.|(% style="width:453px" %)OK 583 -|(% 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((( 584 -AT_PARAM_ERROR AT_BUSY_ERROR/AT_NO_NETWORK_JOINED 654 +(% style="color:blue" %)**AT Command: AT+SENDB** 585 585 586 - 656 +(% border="1" style="background-color:#ffffcc; color:green; width:1101px" %) 657 +|=(% colspan="3" style="width: 1098px;" %)AT+SENDB 658 +|(% style="width:257px" %)**Command Example**|(% style="width:394px" %)**Function**|(% style="width:446px" %)**Response** 659 +|(% style="width:257px" %)AT+SENDB=12:abcdef0123456789|(% style="width:394px" %)Send hexadecimal data along with the application port.|(% style="width:446px" %)OK 660 +|(% 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((( 661 +AT_PARAM_ERROR AT_BUSY_ERROR/AT_NO_NETWORK_JOINED 587 587 ))) 588 588 664 +(% style="display:none" %) (%%) 665 + 589 589 = 7. LoRaWAN network management = 590 590 591 591 == 7.1 Adaptive Data Rate == 592 592 670 + 593 593 Feature: Get or Set the Adaptive Data Rate setting. (0: off, 1: on). 594 594 595 -{{info}} 596 -**AT Command: AT+ADR** 597 -{{/info}} 598 598 674 +(% style="color:blue" %)**AT Command: AT+ADR** 675 + 599 599 (% border="1" style="background-color:#ffffcc; color:green; width:683.222px" %) 600 600 |=(% colspan="3" style="width: 680px;" %)AT+ADR 601 601 |(% style="width:162px" %)**Command Example**|(% style="width:266px" %)**Function**|(% style="width:250px" %)**Response** ... ... @@ -607,24 +607,23 @@ 607 607 AT_PARAM_ERROR 608 608 ))) 609 609 610 -{{info}} 611 -**Downlink Command: 0x22** 612 -{{/info}} 687 +(% style="color:blue" %)**Downlink Command: 0x22** 613 613 614 - 615 615 If the downlink payload=2201, it means setting the adaptive data rate to 1, while type code is 22. 616 616 617 -* **Example 1**: Downlink Payload: **2201** ~/~/ Set AT+ADR=1. 618 -* **Example 2**: Downlink Payload: **2200FFFF** ~/~/ Set AT+ADR=0. 691 +* **Example 1**: Downlink Payload: **2201** ~/~/ Set AT+ADR=1. 692 +* **Example 2**: Downlink Payload: **2200FFFF** ~/~/ Set AT+ADR=0. 619 619 694 +(% style="display:none" %) (%%) 695 + 620 620 == 7.2 LoRa® Class == 621 621 698 + 622 622 Feature: Get or Set the Device Class(Currently only support class A, class C). 623 623 624 -{{info}} 625 -**AT Command:AT+CLASS** 626 -{{/info}} 627 627 702 +(% style="color:blue" %)**AT Command: AT+CLASS** 703 + 628 628 (% border="1" style="background-color:#ffffcc; color:green; width:507.222px" %) 629 629 |=(% colspan="3" style="width: 504px;" %)AT+CLASS 630 630 |(% style="width:163px" %)**Command Example**|(% style="width:166px" %)**Function**|(% style="width:175px" %)**Response** ... ... @@ -632,17 +632,18 @@ 632 632 OK 633 633 ))) 634 634 |(% style="width:163px" %)AT+CLASS=C|(% style="width:166px" %)Set the Device Class.|(% style="width:175px" %)OK((( 635 - 636 636 ))) 637 637 713 +(% style="display:none" %) (%%) 714 + 638 638 == 7.3 Duty Cycle Setting == 639 639 640 -Feature: Get or Set the ETSI Duty Cycle setting - 0=disable, 1=enable - Only for testing. 641 641 642 -{{info}} 643 -**AT Command:AT+DCS** 644 -{{/info}} 718 +Feature: Get or Set the ETSI Duty Cycle setting** - 0**=disable, **1**=enable - Only for testing. 645 645 720 + 721 +(% style="color:blue" %)**AT Command: AT+DCS** 722 + 646 646 (% border="1" style="background-color:#ffffcc; color:green; width:515.222px" %) 647 647 |=(% colspan="3" style="width: 512px;" %)AT+DCS 648 648 |(% style="width:165px" %)**Command Example**|(% style="width:239px" %)**Function**|(% style="width:107px" %)**Response** ... ... @@ -650,17 +650,23 @@ 650 650 OK 651 651 ))) 652 652 |(% style="width:165px" %)AT+DCS=1|(% style="width:239px" %)Set the ETSI Duty Cycle setting.|(% style="width:107px" %)OK((( 653 - 654 654 ))) 655 655 732 +(% style="display:none" %) (%%) 733 + 656 656 == 7.4 Data Rate == 657 657 658 -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 659 659 660 -{{info}} 661 -**AT Command: AT+DR** 662 -{{/info}} 737 +Feature: Get or Set the Data Rate. (0-7 corresponding to DR_X) . 663 663 739 +(% style="color:red" %) 740 +**Notice:** 741 + 742 +* 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. 743 +* 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/]] 744 + 745 +(% style="color:blue" %)**AT Command: AT+DR** 746 + 664 664 (% border="1" style="background-color:#ffffcc; color:green; width:466.222px" %) 665 665 |=(% colspan="3" style="width: 463px;" %)AT+DR 666 666 |(% style="width:156px" %)**Command Example**|(% style="width:167px" %)**Function**|(% style="width:140px" %)**Response** ... ... @@ -671,24 +671,23 @@ 671 671 672 672 ))) 673 673 674 -{{info}} 675 -**Downlink Command: 0x2200aaFF** 676 -{{/info}} 757 +(% style="color:blue" %)**Downlink Command: 0x2200aaFF** 677 677 678 - 679 679 If the downlink payload=220001FF, it means setting the data rate to 1, while type code is 22 00 aa FF. 680 680 681 -* **Example 1**: Downlink Payload: **220001FF** ~/~/ Set AT+DR=1. 682 -* **Example 2**: Downlink Payload: **220000FF** ~/~/ Set AT+DR=0. 761 +* **Example 1**: Downlink Payload: **220001FF** ~/~/ Set AT+DR=1. 762 +* **Example 2**: Downlink Payload: **220000FF** ~/~/ Set AT+DR=0. 683 683 764 +(% style="display:none" %) (%%) 765 + 684 684 == 7.5 Frame Counter Downlink == 685 685 768 + 686 686 Feature: Get or Set the Frame Counter Downlink. 687 687 688 -{{info}} 689 -**AT Command:AT+FCD** 690 -{{/info}} 691 691 772 +(% style="color:blue" %)**AT Command: AT+FCD** 773 + 692 692 (% border="1" style="background-color:#ffffcc; color:green; width:693.222px" %) 693 693 |=(% colspan="3" style="width: 690px;" %)AT+FCD 694 694 |(% style="width:162px" %)**Command Example**|(% style="width:258px" %)**Function**|(% style="width:269px" %)**Response** ... ... @@ -697,8 +697,6 @@ 697 697 ))) 698 698 |(% style="width:162px" %)AT+FCD=10|(% style="width:258px" %)Set the Frame Counter Downlink.|(% style="width:269px" %)(System will write new value to FCD)((( 699 699 OK 700 - 701 - 702 702 ))) 703 703 704 704 == 7.6 Frame Counter Uplink == ... ... @@ -705,10 +705,9 @@ 705 705 706 706 Feature: Get or Set the Frame Counter Uplink. 707 707 708 -{{info}} 709 -**AT Command:AT+FCU** 710 -{{/info}} 711 711 789 +(% style="color:blue" %)**AT Command: AT+FCU** 790 + 712 712 (% border="1" style="background-color:#ffffcc; color:green; width:534.222px" %) 713 713 |=(% colspan="3" style="width: 531px;" %)AT+FCU 714 714 |(% style="width:177px" %)**Command Example**|(% style="width:239px" %)**Function**|(% style="width:113px" %)**Response** ... ... @@ -721,12 +721,12 @@ 721 721 722 722 == 7.7 Join Accept Delay1 == 723 723 803 + 724 724 Feature: Get or Set the Join Accept Delay between the end of the Tx and the Join Rx Window 1 in ms. 725 725 726 -{{info}} 727 -**AT Command:AT+JN1DL** 728 -{{/info}} 729 729 807 +(% style="color:blue" %)**AT Command: AT+JN1DL** 808 + 730 730 (% border="1" style="background-color:#ffffcc; color:green; width:537.222px" %) 731 731 |=(% colspan="3" style="width: 534px;" %)AT+JN1DL 732 732 |(% style="width:164px" %)**Command Example**|(% style="width:229px" %)**Function**|(% style="width:140px" %)**Response** ... ... @@ -739,12 +739,12 @@ 739 739 740 740 == 7.8 Join Accept Delay2 == 741 741 821 + 742 742 Feature: Get or Set the Join Accept Delay between the end of the Tx and the Join Rx Window 2 in ms. 743 743 744 -{{info}} 745 -**AT Command:AT+JN2DL** 746 -{{/info}} 747 747 825 +(% style="color:blue" %)**AT Command: AT+JN2DL** 826 + 748 748 (% border="1" style="background-color:#ffffcc; color:green; width:538.222px" %) 749 749 |=(% colspan="3" style="width: 535px;" %)AT+JN2DL 750 750 |(% style="width:160px" %)**Command Example**|(% style="width:228px" %)**Function**|(% style="width:146px" %)**Response** ... ... @@ -757,12 +757,14 @@ 757 757 758 758 == 7.9 Public Network Mode == 759 759 760 -Feature: Get or Set the public network mode. (0: off, 1: on) 761 761 762 -{{info}} 763 -**AT Command:AT+PNM** 764 -{{/info}} 840 +Feature: Get or Set the public network mode. (0: off, 1: on). A Public LoRaWAN network use 0x34 as syncword. Default Settings; PNM=1 765 765 842 +(% style="color:red" %)**Notice: If user build their own LoRaWAN server but still use syncword=0x34, this is still considered a public LoRaWAN network.** 843 + 844 + 845 +(% style="color:blue" %)**AT Command: AT+PNM** 846 + 766 766 (% border="1" style="background-color:#ffffcc; color:green; width:667.222px" %) 767 767 |=(% colspan="3" style="width: 664px;" %)AT+PNM 768 768 |(% style="width:166px" %)**Command Example**|(% style="width:225px" %)**Function**|(% style="width:272px" %)**Response** ... ... @@ -769,20 +769,25 @@ 769 769 |(% style="width:166px" %)AT+PNM=?|(% style="width:225px" %)Get the public network mode.|(% style="width:272px" %)1((( 770 770 OK 771 771 ))) 772 -|(% style="width:166px" %)AT+PNM=1|(% style="width:225px" %)Set the public network mode.|(% style="width:272px" %)(System will write new value to PNM)((( 853 +|(% style="width:166px" %)AT+PNM=1|(% style="width:225px" %)((( 854 +Set the public network mode. 855 + 856 +Set syncword=0x34 857 +)))|(% style="width:272px" %)(System will write new value to PNM)((( 773 773 OK 774 774 775 775 776 776 ))) 862 +|(% style="width:166px" %)AT+PNM=0|(% style="width:225px" %)Set to use private network autoset syncword=0x12|(% style="width:272px" %) 777 777 778 778 == 7.10 Receive Delay1 == 779 779 866 + 780 780 Feature: Get or Set the delay between the end of the Tx and the Rx Window 1 in ms 781 781 782 -{{info}} 783 -**AT Command:AT+RX1DL** 784 -{{/info}} 785 785 870 +(% style="color:blue" %)**AT Command: AT+RX1DL** 871 + 786 786 (% border="1" style="background-color:#ffffcc; color:green; width:408.222px" %) 787 787 |=(% colspan="3" style="width: 405px;" %)AT+RX1DL 788 788 |(% style="width:155px" %)**Command Example**|(% style="width:128px" %)**Function**|(% style="width:122px" %)**Response** ... ... @@ -795,12 +795,12 @@ 795 795 796 796 == 7.11 Receive Delay2 == 797 797 884 + 798 798 Feature: Get or Set the delay between the end of the Tx and the Rx Window 2 in ms 799 799 800 -{{info}} 801 -**AT Command:AT+RX2DL** 802 -{{/info}} 803 803 888 +(% style="color:blue" %)**AT Command: AT+RX2DL** 889 + 804 804 (% border="1" style="background-color:#ffffcc; color:green; width:481.222px" %) 805 805 |=(% colspan="3" style="width: 478px;" %)AT+RX2DL 806 806 |(% style="width:175px" %)**Command Example**|(% style="width:152px" %)**Function**|(% style="width:150px" %)**Response** ... ... @@ -813,12 +813,12 @@ 813 813 814 814 == 7.12 Rx2 Window Data Rate == 815 815 902 + 816 816 Feature: Get or Set the Rx2 window data rate (0-7 corresponding to DR_X) 817 817 818 -{{info}} 819 -**AT Command:AT+RX2DR** 820 -{{/info}} 821 821 906 +(% style="color:blue" %)**AT Command: AT+RX2DR** 907 + 822 822 (% border="1" style="background-color:#ffffcc; color:green; width:525.222px" %) 823 823 |=(% colspan="3" style="width: 522px;" %)AT+RX2DR 824 824 |(% style="width:160px" %)**Command Example**|(% style="width:232px" %)**Function**|(% style="width:130px" %)**Response** ... ... @@ -831,12 +831,12 @@ 831 831 832 832 == 7.13 Rx2 Window Frequency == 833 833 920 + 834 834 Feature: Get or Set the Rx2 window frequency 835 835 836 -{{info}} 837 -**AT Command:AT+RX2FQ** 838 -{{/info}} 839 839 924 +(% style="color:blue" %)**AT Command: AT+RX2FQ** 925 + 840 840 (% border="1" style="background-color:#ffffcc; color:green; width:587.222px" %) 841 841 |=(% colspan="3" style="width: 584px;" %)AT+RX2FQ 842 842 |(% style="width:183px" %)**Command Example**|(% style="width:240px" %)**Function**|(% style="width:160px" %)**Response** ... ... @@ -849,12 +849,14 @@ 849 849 850 850 == 7.14 Transmit Power == 851 851 938 + 852 852 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. ) 853 853 854 -{{info}} 855 -**AT Command:AT+TXP** 856 -{{/info}} 941 +(% 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** 857 857 943 + 944 +(% style="color:blue" %)**AT Command: AT+TXP** 945 + 858 858 (% border="1" style="background-color:#ffffcc; color:green; width:465.222px" %) 859 859 |=(% colspan="3" style="width: 462px;" %)AT+TXP 860 860 |(% style="width:161px" %)**Command Example**|(% style="width:189px" %)**Function**|(% style="width:112px" %)**Response** ... ... @@ -869,17 +869,17 @@ 869 869 870 870 If the downlink payload=22000100, it means setting the TXP to 0. 871 871 872 -* **Example 1**: Downlink Payload: **22000102** ~/~/ Set AT+TXP=2. 873 -* **Example 2**: Downlink Payload: **220000FF** ~/~/ Set AT+TXP=0. 960 +* **Example 1**: Downlink Payload: **22000102** ~/~/ Set AT+TXP=2. 961 +* **Example 2**: Downlink Payload: **220000FF** ~/~/ Set AT+TXP=0. 874 874 875 875 == 7.15 RSSI of the Last Received Packet == 876 876 965 + 877 877 Feature: Get or Set the Rx2 window frequency 878 878 879 -{{info}} 880 -**AT Command:AT+RSSI** 881 -{{/info}} 882 882 969 +(% style="color:blue" %)**AT Command:AT+RSSI** 970 + 883 883 (% border="1" style="background-color:#ffffcc; color:green; width:557.222px" %) 884 884 |=(% colspan="3" style="width: 554px;" %)AT+RSSI 885 885 |(% style="width:164px" %)**Command Example**|(% style="width:289px" %)**Function**|(% style="width:100px" %)**Response** ... ... @@ -889,12 +889,12 @@ 889 889 890 890 == 7.16 SNR of the Last Received Packet == 891 891 980 + 892 892 Feature: Get the SNR of the last received packet 893 893 894 -{{info}} 895 -**AT Command:AT+SNR** 896 -{{/info}} 897 897 984 +(% style="color:blue" %)**AT Command: AT+SNR** 985 + 898 898 (% border="1" style="background-color:#ffffcc; color:green; width:571.222px" %) 899 899 |=(% colspan="3" style="width: 568px;" %)AT+SNR 900 900 |(% style="width:164px" %)**Command Example**|(% style="width:290px" %)**Function**|(% style="width:113px" %)**Response** ... ... @@ -904,12 +904,12 @@ 904 904 905 905 == 7.17 Application Port == 906 906 995 + 907 907 Feature: Get or set the application port. 908 908 909 -{{info}} 910 -**AT Command: AT+PORT** 911 -{{/info}} 912 912 999 +(% style="color:blue" %)**AT Command: AT+PORT** 1000 + 913 913 (% border="1" style="background-color:#ffffcc; color:green; width:500.222px" %) 914 914 |=(% colspan="3" style="width: 497px;" %)AT+PORT 915 915 |(% style="width:157px" %)**Command Example**|(% style="width:204px" %)**Function**|(% style="width:135px" %)**Response** ... ... @@ -918,25 +918,23 @@ 918 918 ))) 919 919 |(% style="width:157px" %)AT+PORT=21|(% style="width:204px" %)Set the application port|(% style="width:135px" %)OK 920 920 921 -{{info}} 922 -**Downlink Command: 0x23** 923 -{{/info}} 1009 +(% style="color:blue" %)**Downlink Command: 0x23** 924 924 925 925 Format: Command Code (0x23) followed by 1 bytes port value. 926 926 927 927 If the downlink payload=2301, it means set the application port to 1, while type code is 23. 928 928 929 -* **Example 1**: Downlink Payload: **2301** ~/~/ set the application port to 1 930 -* **Example 2**: Downlink Payload:** 2305** ~/~/ set the application port to 5 1015 +* **Example 1**: Downlink Payload: **2301** ~/~/ set the application port to 1 1016 +* **Example 2**: Downlink Payload:** 2305** ~/~/ set the application port to 5 931 931 932 932 == 7.18 Single Channel Mode == 933 933 1020 + 934 934 Feature:Get or Set Frequency (Unit: Hz) for Single Channel Mode. 935 935 936 -{{info}} 937 -**AT Command: AT+CHS** 938 -{{/info}} 939 939 1024 +(% style="color:blue" %)**AT Command: AT+CHS** 1025 + 940 940 (% border="1" style="background-color:#ffffcc; color:green; width:603.222px" %) 941 941 |=(% colspan="3" style="width: 600px;" %)AT+CHS 942 942 |(% style="width:182px" %)**Command Example**|(% style="width:295px" %)**Function**|(% style="width:122px" %)**Response** ... ... @@ -947,12 +947,12 @@ 947 947 948 948 == 7.19 Eight Channel Mode == 949 949 1036 + 950 950 Feature: Get or Set eight channels mode,Only for US915,AU915,CN470. 951 951 952 -{{info}} 953 -**AT Command: AT+CHE** 954 -{{/info}} 955 955 1040 +(% style="color:blue" %)**AT Command: AT+CHE** 1041 + 956 956 (% border="1" style="background-color:#ffffcc; color:green; width:710.222px" %) 957 957 |=(% colspan="3" style="width: 707px;" %)AT+CHE 958 958 |(% style="width:160px" %)**Command Example**|(% style="width:198px" %)**Function**|(% style="width:349px" %)**Response** ... ... @@ -963,25 +963,23 @@ 963 963 ))) 964 964 |(% style="width:160px" %)AT+CHE=1|(% style="width:198px" %)Set eight channels mode|(% style="width:349px" %)OK 965 965 966 -{{info}} 967 -**Downlink Command: 0x24** 968 -{{/info}} 1052 +(% style="color:blue" %)**Downlink Command: 0x24 (LHT65,LHT65N Downlink Command:0x07)** 969 969 970 970 Format: Command Code (0x24) followed by 1 bytes channel value. 971 971 972 972 If the downlink payload=2401, it means set channel mode to 1, while type code is 24. 973 973 974 -* **Example 1**: Downlink Payload: 2401 ~/~/ set channel mode to 1 975 -* **Example 2**: Downlink Payload: 2405 ~/~/ set channel mode to 5 1058 +* **Example 1**: Downlink Payload: 2401 ~/~/ set channel mode to 1 1059 +* **Example 2**: Downlink Payload: 2405 ~/~/ set channel mode to 5 976 976 977 977 == 7.20 Get or Set RXwindows1 timeout == 978 978 979 -Feature:Get or Set the number of symbols to detect and timeout from RXwindow1(0 to 255). 980 980 981 -{{info}} 982 -**AT Command: AT+RX1WTO** 983 -{{/info}} 1064 +Feature: Get or Set the number of symbols to detect and timeout from RXwindow1(0 to 255). 984 984 1066 + 1067 +(% style="color:blue" %)**AT Command: AT+RX1WTO** 1068 + 985 985 (% border="1" style="background-color:#ffffcc; color:green; width:460.222px" %) 986 986 |=(% colspan="3" style="width: 457px;" %)AT+ RX1WTO 987 987 |(% style="width:163px" %)**Command Example**|(% style="width:201px" %)**Function**|(% style="width:93px" %)**Response** ... ... @@ -991,11 +991,17 @@ 991 991 |(% style="width:163px" %)AT+RX1WTO=60|(% style="width:201px" %)Set RXwindows1 timeout|(% style="width:93px" %)OK 992 992 993 993 ((( 994 -**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. 1078 + 1079 + 1080 + 1081 +(% 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. 1082 + 1083 + 995 995 ))) 996 996 997 997 [[image:image-20220526162535-1.png]] 998 998 1088 + 999 999 ((( 1000 1000 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. 1001 1001 ... ... @@ -1004,12 +1004,12 @@ 1004 1004 1005 1005 == 7.21 Get or Set RXwindows2 timeout == 1006 1006 1007 -Feature:Get or Set the number of symbols to detect and timeout from RXwindow2(0 to 255). 1008 1008 1009 -{{info}} 1010 -**AT Command: AT+RX2WTO** 1011 -{{/info}} 1098 +Feature: Get or Set the number of symbols to detect and timeout from RXwindow2(0 to 255). 1012 1012 1100 + 1101 +(% style="color:blue" %)**AT Command: AT+RX2WTO** 1102 + 1013 1013 (% border="1" style="background-color:#ffffcc; color:green; width:497.222px" %) 1014 1014 |=(% colspan="3" style="width: 494px;" %)AT+ RX2WTO 1015 1015 |(% style="width:190px" %)**Command Example**|(% style="width:199px" %)**Function**|(% style="width:104px" %)**Response** ... ... @@ -1020,12 +1020,12 @@ 1020 1020 1021 1021 == 7.22 Setting up uplinkdwelltime (as923, au915) == 1022 1022 1113 + 1023 1023 Feature: Get or Set uplinkdwelltime 1024 1024 1025 -{{info}} 1026 -**AT Command: AT+DWELLT** 1027 -{{/info}} 1028 1028 1117 +(% style="color:blue" %)**AT Command: AT+DWELLT** 1118 + 1029 1029 (% border="1" style="background-color:#ffffcc; color:green; width:497.222px" %) 1030 1030 |=(% colspan="3" style="width: 494px;" %)AT+DWELLT 1031 1031 |(% style="width:183px" %)**Command Example**|(% style="width:179px" %)**Function**|(% style="width:131px" %)**Response** ... ... @@ -1034,23 +1034,23 @@ 1034 1034 ))) 1035 1035 |(% style="width:183px" %)AT+DWELLT=0|(% style="width:179px" %)Set uplinkdwelltime|(% style="width:131px" %)OK 1036 1036 1037 -{{info}} 1038 -**Downlink Command: 0x25** 1039 -{{/info}} 1127 +(% style="color:blue" %)**Downlink Command: 0x25** 1040 1040 1041 1041 Format: Command Code (0x25) followed by 1 bytes state value. 1042 1042 1043 1043 If the downlink payload=2501, it means set uplinkdwelltime to 1, while type code is 25. 1044 1044 1045 -* **Example 1**: Downlink Payload: **2501** ~/~/ set uplinkdwelltime to 1 1046 -* **Example 2**: Downlink Payload: **2500** ~/~/ set uplinkdwelltime to 0 1133 +* **Example 1**: Downlink Payload: **2501** ~/~/ set uplinkdwelltime to 1 1134 +* **Example 2**: Downlink Payload: **2500** ~/~/ set uplinkdwelltime to 0 1047 1047 1048 1048 == 7.23 Set Packet Receiving Response Level == 1049 1049 1138 + 1050 1050 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. 1051 1051 1052 -RPL value: 1053 1053 1142 +**RPL value:** 1143 + 1054 1054 * **AT+RPL=0:** Device won't immediately reply any downlink commands from platform. 1055 1055 * **AT+RPL=1:** Device will immediately reply message to Unconfirmed Data Down. Payload is 0x00. 1056 1056 * **AT+RPL=2:** Device will immediately reply message to Confirmed Data Down. Payload is 0x00 and requied response header for this command. ... ... @@ -1057,15 +1057,13 @@ 1057 1057 * **AT+RPL=3:** Device will immediately reply message to MAC Command. Payload is 0x00 and requied response header for this command. 1058 1058 * **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. 1059 1059 1060 -Case Analyes: 1150 +**Case Analyes:** 1061 1061 1062 1062 * For Class A devices, AT+RPL=0 is ok. that is defaut settings in software. 1063 1063 * For Class C devices used in ChirpStack, need to set AT+RPL=4 because Chirpstack require immedietely reply message to MAC Command. 1064 1064 * 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. 1065 1065 1066 -{{info}} 1067 -**AT Command: AT+RPL** 1068 -{{/info}} 1156 +(% style="color:blue" %)**AT Command: AT+RPL** 1069 1069 1070 1070 (% border="1" style="background-color:#ffffcc; color:green; width:536.222px" %) 1071 1071 |=(% colspan="3" style="width: 533px;" %)AT+RPL ... ... @@ -1075,70 +1075,158 @@ 1075 1075 ))) 1076 1076 |(% style="width:160px" %)AT+RPL=0|(% style="width:263px" %)Set packet receiving response level|(% style="width:109px" %)OK 1077 1077 1078 -{{info}} 1079 -**Downlink Command: 0x21** 1080 -{{/info}} 1166 +(% style="color:blue" %)**Downlink Command: 0x21** 1081 1081 1082 1082 Format: Command Code (0x21) followed by 1 bytes level value. 1083 1083 1084 1084 If the downlink payload=2101, it means set packet receiving response level to 1, while type code is 21. 1085 1085 1086 -* **Example 1**: Downlink Payload: **2101** ~/~/ set packet receiving response level to 1 1087 -* **Example 2**: Downlink Payload: **2102** ~/~/ set packet receiving response level to 2 1172 +* **Example 1**: Downlink Payload: **2101** ~/~/ set packet receiving response level to 1 1173 +* **Example 2**: Downlink Payload: **2102** ~/~/ set packet receiving response level to 2 1088 1088 1089 -== 7.24 Set retransmission packets (LWS007) ==1175 +== 7.24 Controls NBTrans in unconfirmed uplink mode(LWS007 NBTrans:Set retransmission packets) == 1090 1090 1177 + 1178 +(% style="color:blue" %)**AT Command: AT+SETMAXNBTRANS ** 1179 + 1180 +(% border="1" style="background-color:#ffffcc; color:green; width:589px" %) 1181 +|=(% colspan="3" style="width: 586px;" %)AT+**SETMAXNBTRANS** 1182 +|(% style="width:227px" %)**Command Example**|(% style="width:300px" %)**Function**|(% style="width:87px" %)**Response** 1183 +|(% style="width:227px" %)**AT+SETMAXNBTRANS=1,0**|(% style="width:300px" %)Value1: set the maximum NBTrans.|(% style="width:87px" %)1((( 1184 +OK 1185 +))) 1186 +|(% style="width:227px" %)**AT+SETMAXNBTRANS=?,1**|(% style="width:300px" %)((( 1187 +value2: 0: uplink fcnt doesn't change for each NBTrans; 1188 + 1189 +1: uplink fcnt increase by 1 for each NBTrans. 1190 +)))|(% style="width:87px" %)((( 1191 +1 1192 + 1193 +OK 1194 +))) 1195 + 1196 +(% style="color:blue" %)**Downlink Command: 0x33** 1197 + 1198 +Format: Command Code (0x33) followed by 2 bytes mode value. 1199 + 1200 +If the downlink payload=330100, it means set end node to use confirm mode, while type code is 33. 1201 + 1202 +* Example 1: Downlink Payload: 330100 ~/~/ Set AT+SETMAXNBTRANS=1,0 1203 +* Example 2: Downlink Payload: 330201 ~/~/ Set AT+SETMAXNBTRANS=2,1 1204 + 1205 +== 7.25 Device offline rejoining (LWS007) == 1206 + 1207 + 1208 +(% style="color:blue" %)**AT Command: AT+DDETECT** 1209 + 1210 +AT+DDETECT=<Flag>,<ACK_Timout_1>,<ACK_Timout_2> (Default Value: AT+DDETECT=1,1440,2880) 1211 + 1212 +* ACK_Timout_1: Unit: min 1213 +* ACK_Timout_2: Unit: min 1214 + 1091 1091 (% border="1" style="background-color:#ffffcc; color:green; width:710.222px" %) 1092 -|=(% colspan="3" style="width: 707px;" %)AT+C FM1216 +|=(% colspan="3" style="width: 707px;" %)AT+**DDETECT** 1093 1093 |(% style="width:160px" %)**Command Example**|(% style="width:198px" %)**Function**|(% style="width:349px" %)**Response** 1094 1094 |(% style="width:160px" %)((( 1095 -AT+C FM=1,0,01219 +AT+DDETECT=1,1440,2880 1096 1096 1097 1097 value1 1098 -)))|(% style="width:198px" %) confirmeduplink|(% style="width:349px" %)(((1222 +)))|(% style="width:198px" %)Enable online detect|(% style="width:349px" %)((( 1099 1099 1 1100 1100 1101 1101 OK 1102 1102 ))) 1103 1103 |(% style="width:160px" %)((( 1104 -AT+C FM=0,?,01228 +AT+DDETECT=1,?,2880 1105 1105 1106 1106 value2 1107 -)))|(% style="width:198px" %) setmax retry, range:0 ~~ 7|(% style="width:349px" %)(((1108 - 0~~71231 +)))|(% style="width:198px" %)Online detection packet sending time|(% style="width:349px" %)((( 1232 + 1109 1109 1110 1110 OK 1111 1111 ))) 1112 1112 |(% style="width:160px" %)((( 1113 -AT+C FM=0,0,11237 +AT+DDETECT=1,1440,? 1114 1114 1115 1115 value3 1116 -)))|(% style="width:198px" %) uplink fcnt increaseby 1 forach retry|(% style="width:349px" %)(((1117 - 11240 +)))|(% style="width:198px" %)Process rejoin|(% style="width:349px" %)((( 1241 + 1118 1118 1119 1119 OK 1120 1120 ))) 1121 1121 1122 -{{info}} 1123 -**AT Command: AT+CFM** 1124 -{{/info}} 1246 +(% style="color:blue" %)**Downlink Command: 0x32** 1125 1125 1248 +Format: Command Code (0x32) followed by 2 bytes mode value. 1249 + 1250 +If the downlink payload=320105A00B40, it means set end node to use confirm mode, while type code is 32. 1251 + 1252 +* **Example 1:** Downlink Payload: 320105A00B40 ~/~/ Set AT+DDETECT=1,1440,2880 1253 +** 0x01 : Flag 1254 +** 0x05A0: ACK_Timout_1 : 1440minutes (24 hours) 1255 +** 0x0B40: ACK_Timout_2 : 2880minutes (48 hours) 1256 +** **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. 1257 + 1258 +== 7.26 Request the server to send an ACK == 1259 + 1260 + 1261 +(% style="color:blue" %)**AT Command: AT+PNACKMD** 1262 + 1263 +(% border="1" style="background-color:#ffffcc; 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** 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 +OK 1268 +))) 1269 +|(% style="width:160px" %)**AT+PNACKMD=0**|(% style="width:263px" %)off request the server to send an ACK|(% style="width:109px" %)((( 1270 +0 1271 + 1272 +OK 1273 +))) 1274 + 1275 +== 7.27 Adjust network rejoining interval == 1276 + 1277 + 1278 +(% style="color:blue" %)**AT Command: AT+RJTDC** 1279 + 1280 +(% border="1" style="background-color:#ffffcc; color:green; width:727.222px" %) 1281 +|=(% colspan="3" style="width: 724px;" %)AT+RJTDC 1282 +|(% style="width:165px" %)**Command Example**|(% style="width:227px" %)**Function**|(% style="width:329px" %)**Response** 1283 +|(% style="width:165px" %)AT+RJTDC=?|(% style="width:227px" %)Show the ReJoin data transmission interval in min|(% style="width:329px" %)30((( 1284 +OK 1285 + 1286 +the interval is 30 min 1287 +))) 1288 +|(% style="width:165px" %)AT+RJTDC=60|(% style="width:227px" %)Set the ReJoin data transmission interval in min|(% style="width:329px" %)OK((( 1289 +Set the ReJoin data transmission interval to 60 min 1290 +))) 1291 + 1292 +(% style="color:blue" %)**Downlink Command: 0x26** 1293 + 1294 +Format: Command Code (0x26) followed by 2 bytes mode value. 1295 + 1296 +If the downlink payload=26000A, it means set end node to use confirm mode, while type code is 26. 1297 + 1298 +* **Example 1:** Downlink Payload: 26000A ~/~/ Set AT+RJTDC=10 1299 +* **Example 2: **Downlink Payload: 260002 ~/~/ Set AT+RJTDC=2 1300 + 1126 1126 = 8. AT Commands Combination = 1127 1127 1128 1128 == 8.1 Set a fix RX2DR for downlink window == 1129 1129 1130 -* **AT+ADR=0 **~-~-> Disable ADR first 1131 -* **AT+RX2DR=xxxx** ~-~-> Set xxxx to your wanted DataRate 1132 1132 1306 +* (% style="color:blue" %)**AT+ADR=0 **(%%) **~-~->** Disable ADR first 1307 +* (% style="color:blue" %)**AT+RX2DR=xxxx** (%%) **~-~->** Set xxxx to your wanted DataRate 1308 + 1133 1133 == 8.2 Use Downlink Command to set a fix uplink DR == 1134 1134 1135 -{{info}} 1136 -**Downlink Command: 0x22000500** 1137 -{{/info}} 1138 1138 1139 - Same as:1312 +(% style="color:blue" %)**Downlink Command: 0x22000500** 1140 1140 1141 -* AT+ADR=0 [[Reference>>||anchor="H7.1AdaptiveDataRate"]] 1142 -* AT+DR=5 [[Reference>>||anchor="H7.4DataRate"]] 1143 -* AT+TXP=0 [[Reference>>||anchor="H7.14TransmitPower"]] 1144 -~)~)~) 1314 +**Same as:** 1315 + 1316 +* AT+ADR=0 [[Reference>>||anchor="H7.1AdaptiveDataRate"]] 1317 +* AT+DR=5 [[Reference>>||anchor="H7.4DataRate"]] 1318 +* AT+TXP=0 [[Reference>>||anchor="H7.14TransmitPower"]] 1319 + 1320 +