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
-
... ... @@ -14,10 +14,9 @@ 14 14 15 15 ((( 16 16 **This page shows the common commands since Dragino LoRaWAN stack DR-LWS-005. Make sure the end node support stack higher than DR-LWS-005 before checking this page.** 17 - 18 - 19 19 ))) 20 20 19 + 21 21 = 2. How to use AT Commands or Downlink command = 22 22 23 23 ... ... @@ -27,6 +27,7 @@ 27 27 ** Use Base64 format to send a downlink: [[Chirpstack>>Notes for ChirpStack]], [[How to Convert>>http://wiki.dragino.com/xwiki/bin/view/Main/Notes%20for%20ChirpStack/#H4.1ConvertHEXtoBase64]]? 28 28 ** See use note for more serves [[Servers Note>>doc:Main.WebHome]](IoT LoRaWAN Server) 29 29 29 +(% style="display:none" %) (%%) 30 30 31 31 = 3. Support End Node and firmware version = 32 32 ... ... @@ -102,8 +102,8 @@ 102 102 ))) 103 103 ))) 104 104 105 +(% style="display:none" %) (%%) 105 105 106 - 107 107 = 4. System Management Commands = 108 108 109 109 == 4.1 Change Uplink Interval == ... ... @@ -141,8 +141,8 @@ 141 141 * **Example 1**: Downlink Payload:** 0100001E** ~/~/ Set Transmit Interval (TDC) = 30 seconds 142 142 * **Example 2**: Downlink Payload:** 0100003C** ~/~/ Set Transmit Interval (TDC) = 60 seconds 143 143 144 +(% style="display:none" %) (%%) 144 144 145 - 146 146 == 4.2 Reboot End Node == 147 147 148 148 ... ... @@ -175,11 +175,10 @@ 175 175 ))) 176 176 177 177 ((( 178 -If the downlink payload=**04FF**, the end node will reboot. 179 - 180 - 178 +If the downlink payload=**04FF**, the end node will reboot. 181 181 ))) 182 182 181 + 183 183 == 4.3 Reset to factory Default == 184 184 185 185 ... ... @@ -304,8 +304,6 @@ 304 304 OK 305 305 ))) 306 306 307 - 308 - 309 309 = 5. Keys, IDs and EUIs management = 310 310 311 311 == 5.1 Application EUI == ... ... @@ -324,8 +324,8 @@ 324 324 ))) 325 325 |(% style="width:305px" %)AT+APPEUI=00 b3 d5 7e f0 00 4d 34|(% style="width:186px" %)Set the Application EUI|(% style="width:191px" %)OK 326 326 324 +(% style="display:none" %) (%%) 327 327 328 - 329 329 == 5.2 Application Key == 330 330 331 331 ... ... @@ -342,8 +342,8 @@ 342 342 ))) 343 343 |(% 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 344 344 342 +(% style="display:none" %) (%%) 345 345 346 - 347 347 == 5.3 Application Session Key == 348 348 349 349 ... ... @@ -362,8 +362,8 @@ 362 362 OK 363 363 ))) 364 364 362 +(% style="display:none" %) (%%) 365 365 366 - 367 367 == 5.4 Device Address == 368 368 369 369 ... ... @@ -382,8 +382,8 @@ 382 382 ))) 383 383 |(% style="width:192px" %)AT+DADDR=A8 40 41 FF|(% style="width:241px" %)Set the Application Session Key.|(% style="width:359px" %)OK 384 384 382 +(% style="display:none" %) (%%) 385 385 386 - 387 387 == 5.5 Device EUI == 388 388 389 389 ... ... @@ -402,8 +402,8 @@ 402 402 OK 403 403 ))) 404 404 402 +(% style="display:none" %) (%%) 405 405 406 - 407 407 == 5.6 Network ID == 408 408 409 409 ... ... @@ -420,8 +420,8 @@ 420 420 ))) 421 421 |(% style="width:191px" %)AT+NWKID=A8 40 41 FF|(% style="width:153px" %)Set the Network ID.|(% style="width:101px" %)OK 422 422 420 +(% style="display:none" %) (%%) 423 423 424 - 425 425 == 5.7 Network Session Key == 426 426 427 427 ... ... @@ -438,8 +438,8 @@ 438 438 ))) 439 439 |(% 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 440 440 438 +(% style="display:none" %) (%%) 441 441 442 - 443 443 = 6. Joining and sending date on LoRaWAN network = 444 444 445 445 == 6.1 Confirm Mode == ... ... @@ -470,8 +470,8 @@ 470 470 * **Example 1:** Downlink Payload: 0501 ~/~/ Set AT+CFM=1 471 471 * **Example 2:** Downlink Payload: 0500 ~/~/ Set AT+CFM=0 472 472 470 +(% style="display:none" %) (%%) 473 473 474 - 475 475 === 6.1.2 AT+CFM command since DR-LWS007 software stack === 476 476 477 477 ... ... @@ -517,8 +517,8 @@ 517 517 * **Example 1:** Downlink Payload: 05010101 ~/~/ Set AT+CFM=1,1,1 518 518 * **Example 2:** Downlink Payload: 05000700 ~/~/ Set AT+CFM=0,7,0 519 519 517 +(% style="display:none" %) (%%) 520 520 521 - 522 522 == 6.2 Confirm Status == 523 523 524 524 ... ... @@ -527,15 +527,13 @@ 527 527 528 528 (% style="color:blue" %)**AT Command: AT+CFS** 529 529 530 -(% border="1" style="background-color:#ffffcc; color:green; width: 534.222px" %)531 -|=(% colspan="3" style="width: 531px;" %)AT+CFS532 -|(% style="width:156px" %)**Command Example**|(% style="width:193px" %)**Function**|(% style="width:17 8px" %)**Response**533 -|(% style="width:156px" %)AT+CFS=?|(% style="width:193px" %)Get confirmation status|(% style="width:17 8px" %)0(((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((( 534 534 OK 535 535 ))) 536 536 537 - 538 - 539 539 == 6.3 Join LoRa® Network == 540 540 541 541 ... ... @@ -553,8 +553,6 @@ 553 553 While Error in format, return AT_BUSY_ERROR 554 554 ))) 555 555 556 - 557 - 558 558 == 6.4 LoRa® Network Join Mode == 559 559 560 560 ... ... @@ -581,8 +581,8 @@ 581 581 * **Example 1: **Downlink Payload: **2000 ** ~/~/ Set AT+NJM=0 582 582 * **Example 2:** Downlink Payload: **2001** ~/~/ Set AT+NJM=1 583 583 577 +(% style="display:none" %) (%%) 584 584 585 - 586 586 == 6.5 LoRa® Network Join Status == 587 587 588 588 ... ... @@ -598,8 +598,8 @@ 598 598 OK 599 599 ))) 600 600 594 +(% style="display:none" %) (%%) 601 601 602 - 603 603 == 6.6 Print Last Received Data in Raw Format == 604 604 605 605 ... ... @@ -615,8 +615,8 @@ 615 615 OK 616 616 ))) 617 617 611 +(% style="display:none" %) (%%) 618 618 619 - 620 620 == 6.7 Print Last Received Data in Binary Format == 621 621 622 622 ... ... @@ -632,8 +632,8 @@ 632 632 OK 633 633 ))) 634 634 628 +(% style="display:none" %) (%%) 635 635 636 - 637 637 == 6.8 Send Text Data == 638 638 639 639 ... ... @@ -647,14 +647,11 @@ 647 647 |(% style="width:201px" %)**Command Example**|(% style="width:340px" %)**Function**|(% style="width:446px" %)**Response** 648 648 |(% style="width:201px" %)AT+SEND=12:hello world|(% style="width:340px" %)Send text data along with the application port.|(% style="width:446px" %)OK((( 649 649 While Error in format, return 650 - 651 651 AT_BUSY_ERROR/AT_BUSY_ERROR/AT_NO_NETWORK_JOINED 652 - 653 - 654 654 ))) 655 655 646 +(% style="display:none" %) (%%) 656 656 657 - 658 658 == 6.9 Send Hexadecimal Data == 659 659 660 660 ... ... @@ -668,13 +668,11 @@ 668 668 |(% style="width:257px" %)**Command Example**|(% style="width:394px" %)**Function**|(% style="width:446px" %)**Response** 669 669 |(% style="width:257px" %)AT+SENDB=12:abcdef0123456789|(% style="width:394px" %)Send hexadecimal data along with the application port.|(% style="width:446px" %)OK 670 670 |(% 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((( 671 -AT_PARAM_ERROR AT_BUSY_ERROR/AT_NO_NETWORK_JOINED 672 - 673 - 661 +AT_PARAM_ERROR AT_BUSY_ERROR/AT_NO_NETWORK_JOINED 674 674 ))) 675 675 664 +(% style="display:none" %) (%%) 676 676 677 - 678 678 = 7. LoRaWAN network management = 679 679 680 680 == 7.1 Adaptive Data Rate == ... ... @@ -703,8 +703,8 @@ 703 703 * **Example 1**: Downlink Payload: **2201** ~/~/ Set AT+ADR=1. 704 704 * **Example 2**: Downlink Payload: **2200FFFF** ~/~/ Set AT+ADR=0. 705 705 694 +(% style="display:none" %) (%%) 706 706 707 - 708 708 == 7.2 LoRa® Class == 709 709 710 710 ... ... @@ -720,11 +720,10 @@ 720 720 OK 721 721 ))) 722 722 |(% style="width:163px" %)AT+CLASS=C|(% style="width:166px" %)Set the Device Class.|(% style="width:175px" %)OK((( 723 - 724 724 ))) 725 725 713 +(% style="display:none" %) (%%) 726 726 727 - 728 728 == 7.3 Duty Cycle Setting == 729 729 730 730 ... ... @@ -740,11 +740,10 @@ 740 740 OK 741 741 ))) 742 742 |(% style="width:165px" %)AT+DCS=1|(% style="width:239px" %)Set the ETSI Duty Cycle setting.|(% style="width:107px" %)OK((( 743 - 744 744 ))) 745 745 732 +(% style="display:none" %) (%%) 746 746 747 - 748 748 == 7.4 Data Rate == 749 749 750 750 ... ... @@ -775,8 +775,8 @@ 775 775 * **Example 1**: Downlink Payload: **220001FF** ~/~/ Set AT+DR=1. 776 776 * **Example 2**: Downlink Payload: **220000FF** ~/~/ Set AT+DR=0. 777 777 764 +(% style="display:none" %) (%%) 778 778 779 - 780 780 == 7.5 Frame Counter Downlink == 781 781 782 782 ... ... @@ -795,8 +795,6 @@ 795 795 OK 796 796 ))) 797 797 798 - 799 - 800 800 == 7.6 Frame Counter Uplink == 801 801 802 802 Feature: Get or Set the Frame Counter Uplink. ... ... @@ -811,11 +811,10 @@ 811 811 OK 812 812 ))) 813 813 |(% style="width:177px" %)AT+FCU=10|(% style="width:239px" %)Set the Frame Counter Uplink.|(% style="width:113px" %)OK((( 814 - 815 815 ))) 816 816 800 +(% style="display:none" %) (%%) 817 817 818 - 819 819 == 7.7 Join Accept Delay1 == 820 820 821 821 ... ... @@ -831,11 +831,10 @@ 831 831 OK 832 832 ))) 833 833 |(% style="width:164px" %)AT+JN1DL=10000|(% style="width:229px" %)Set the Join Accept Delay.|(% style="width:140px" %)OK((( 834 - 835 835 ))) 836 836 819 +(% style="display:none" %) (%%) 837 837 838 - 839 839 == 7.8 Join Accept Delay2 == 840 840 841 841 ... ... @@ -851,11 +851,10 @@ 851 851 OK 852 852 ))) 853 853 |(% style="width:160px" %)AT+JN2DL=20000|(% style="width:228px" %)Set the Join Accept Delay.|(% style="width:146px" %)OK((( 854 - 855 855 ))) 856 856 838 +(% style="display:none" %) (%%) 857 857 858 - 859 859 == 7.9 Public Network Mode == 860 860 861 861 ... ... @@ -883,8 +883,6 @@ 883 883 ))) 884 884 |(% style="width:166px" %)AT+PNM=0|(% style="width:225px" %)Set to use private network autoset syncword=0x12|(% style="width:272px" %) 885 885 886 - 887 - 888 888 == 7.10 Receive Delay1 == 889 889 890 890 ... ... @@ -903,8 +903,6 @@ 903 903 904 904 ))) 905 905 906 - 907 - 908 908 == 7.11 Receive Delay2 == 909 909 910 910 ... ... @@ -923,8 +923,6 @@ 923 923 924 924 ))) 925 925 926 - 927 - 928 928 == 7.12 Rx2 Window Data Rate == 929 929 930 930 ... ... @@ -943,8 +943,6 @@ 943 943 944 944 ))) 945 945 946 - 947 - 948 948 == 7.13 Rx2 Window Frequency == 949 949 950 950 ... ... @@ -963,8 +963,6 @@ 963 963 964 964 ))) 965 965 966 - 967 - 968 968 == 7.14 Transmit Power == 969 969 970 970 ... ... @@ -992,8 +992,6 @@ 992 992 * **Example 1**: Downlink Payload: **22000102** ~/~/ Set AT+TXP=2. 993 993 * **Example 2**: Downlink Payload: **220000FF** ~/~/ Set AT+TXP=0. 994 994 995 - 996 - 997 997 == 7.15 RSSI of the Last Received Packet == 998 998 999 999 ... ... @@ -1009,8 +1009,6 @@ 1009 1009 OK 1010 1010 ))) 1011 1011 1012 - 1013 - 1014 1014 == 7.16 SNR of the Last Received Packet == 1015 1015 1016 1016 ... ... @@ -1026,8 +1026,6 @@ 1026 1026 OK 1027 1027 ))) 1028 1028 1029 - 1030 - 1031 1031 == 7.17 Application Port == 1032 1032 1033 1033 ... ... @@ -1053,8 +1053,6 @@ 1053 1053 * **Example 1**: Downlink Payload: **2301** ~/~/ set the application port to 1 1054 1054 * **Example 2**: Downlink Payload:** 2305** ~/~/ set the application port to 5 1055 1055 1056 - 1057 - 1058 1058 == 7.18 Single Channel Mode == 1059 1059 1060 1060 ... ... @@ -1071,8 +1071,6 @@ 1071 1071 ))) 1072 1072 |(% style="width:182px" %)AT+CHS=868100000|(% style="width:295px" %)Set Frequency for Single Channel Mode|(% style="width:122px" %)OK 1073 1073 1074 - 1075 - 1076 1076 == 7.19 Eight Channel Mode == 1077 1077 1078 1078 ... ... @@ -1100,8 +1100,6 @@ 1100 1100 * **Example 1**: Downlink Payload: 2401 ~/~/ set channel mode to 1 1101 1101 * **Example 2**: Downlink Payload: 2405 ~/~/ set channel mode to 5 1102 1102 1103 - 1104 - 1105 1105 == 7.20 Get or Set RXwindows1 timeout == 1106 1106 1107 1107 ... ... @@ -1152,8 +1152,6 @@ 1152 1152 ))) 1153 1153 |(% style="width:190px" %)AT+RX2WTO=20|(% style="width:199px" %)Set RXwindows2 timeout|(% style="width:104px" %)OK 1154 1154 1155 - 1156 - 1157 1157 == 7.22 Setting up uplinkdwelltime (as923, au915) == 1158 1158 1159 1159 ... ... @@ -1179,8 +1179,6 @@ 1179 1179 * **Example 1**: Downlink Payload: **2501** ~/~/ set uplinkdwelltime to 1 1180 1180 * **Example 2**: Downlink Payload: **2500** ~/~/ set uplinkdwelltime to 0 1181 1181 1182 - 1183 - 1184 1184 == 7.23 Set Packet Receiving Response Level == 1185 1185 1186 1186 ... ... @@ -1220,8 +1220,6 @@ 1220 1220 * **Example 1**: Downlink Payload: **2101** ~/~/ set packet receiving response level to 1 1221 1221 * **Example 2**: Downlink Payload: **2102** ~/~/ set packet receiving response level to 2 1222 1222 1223 - 1224 - 1225 1225 == 7.24 Controls NBTrans in unconfirmed uplink mode(LWS007 NBTrans:Set retransmission packets) == 1226 1226 1227 1227 ... ... @@ -1252,13 +1252,16 @@ 1252 1252 * Example 1: Downlink Payload: 330100 ~/~/ Set AT+SETMAXNBTRANS=1,0 1253 1253 * Example 2: Downlink Payload: 330201 ~/~/ Set AT+SETMAXNBTRANS=2,1 1254 1254 1255 - 1256 - 1257 1257 == 7.25 Device offline rejoining (LWS007) == 1258 1258 1259 1259 1260 1260 (% style="color:blue" %)**AT Command: AT+DDETECT** 1261 1261 1213 +AT+DDETECT=<Flag>,<ACK_Timout_1>,<ACK_Timout_2> (Default Value: AT+DDETECT=1,1440,2880) 1214 + 1215 +* ACK_Timout_1: Unit: min 1216 +* ACK_Timout_2: Unit: min 1217 + 1262 1262 (% border="1" style="background-color:#ffffcc; color:green; width:710.222px" %) 1263 1263 |=(% colspan="3" style="width: 707px;" %)AT+**DDETECT** 1264 1264 |(% style="width:160px" %)**Command Example**|(% style="width:198px" %)**Function**|(% style="width:349px" %)**Response** ... ... @@ -1290,16 +1290,18 @@ 1290 1290 OK 1291 1291 ))) 1292 1292 1293 -(% style="color:blue" %)**Downlink Command: 0x3 3**1249 +(% style="color:blue" %)**Downlink Command: 0x32** 1294 1294 1295 1295 Format: Command Code (0x32) followed by 2 bytes mode value. 1296 1296 1297 -If the downlink payload=320105A00B40, it means set end node to use confirm mode, while type code is 3 3.1253 +If the downlink payload=320105A00B40, it means set end node to use confirm mode, while type code is 32. 1298 1298 1299 -* **Example 1:** Downlink Payload: 320105A00B40 ~/~/ Set AT+DDETECT=1,1440,2880 1255 +* **Example 1:** Downlink Payload: 320105A00B40 ~/~/ Set AT+DDETECT=1,1440,2880 1256 +** 0x01 : Flag 1257 +** 0x05A0: ACK_Timout_1 : 1440minutes (24 hours) 1258 +** 0x0B40: ACK_Timout_2 : 2880minutes (48 hours) 1259 +** **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. 1300 1300 1301 - 1302 - 1303 1303 == 7.26 Request the server to send an ACK == 1304 1304 1305 1305 ... ... @@ -1317,8 +1317,6 @@ 1317 1317 OK 1318 1318 ))) 1319 1319 1320 - 1321 - 1322 1322 == 7.27 Adjust network rejoining interval == 1323 1323 1324 1324 ... ... @@ -1327,13 +1327,13 @@ 1327 1327 (% border="1" style="background-color:#ffffcc; color:green; width:727.222px" %) 1328 1328 |=(% colspan="3" style="width: 724px;" %)AT+RJTDC 1329 1329 |(% style="width:165px" %)**Command Example**|(% style="width:227px" %)**Function**|(% style="width:329px" %)**Response** 1330 -|(% style="width:165px" %)AT+RJTDC=?|(% style="width:227px" %)Show the ReJoin data transmission interval in min|(% style="width:329px" %)30 000(((1286 +|(% style="width:165px" %)AT+RJTDC=?|(% style="width:227px" %)Show the ReJoin data transmission interval in min|(% style="width:329px" %)30((( 1331 1331 OK 1332 1332 1333 -the interval is 30 000ms= 30s1289 +the interval is 30 min 1334 1334 ))) 1335 -|(% style="width:165px" %)AT+RJTDC=60 000|(% style="width:227px" %)Set the ReJoin data transmission interval in min|(% style="width:329px" %)OK(((1336 -Set the ReJoin data transmission interval to 60 000ms= 60 seconds1291 +|(% style="width:165px" %)AT+RJTDC=60|(% style="width:227px" %)Set the ReJoin data transmission interval in min|(% style="width:329px" %)OK((( 1292 +Set the ReJoin data transmission interval to 60 min 1337 1337 ))) 1338 1338 1339 1339 (% style="color:blue" %)**Downlink Command: 0x26** ... ... @@ -1345,8 +1345,6 @@ 1345 1345 * **Example 1:** Downlink Payload: 26000A ~/~/ Set AT+RJTDC=10 1346 1346 * **Example 2: **Downlink Payload: 260002 ~/~/ Set AT+RJTDC=2 1347 1347 1348 - 1349 - 1350 1350 = 8. AT Commands Combination = 1351 1351 1352 1352 == 8.1 Set a fix RX2DR for downlink window == ... ... @@ -1355,8 +1355,6 @@ 1355 1355 * (% style="color:blue" %)**AT+ADR=0 **(%%) **~-~->** Disable ADR first 1356 1356 * (% style="color:blue" %)**AT+RX2DR=xxxx** (%%) **~-~->** Set xxxx to your wanted DataRate 1357 1357 1358 - 1359 - 1360 1360 == 8.2 Use Downlink Command to set a fix uplink DR == 1361 1361 1362 1362