Changes for page End Device AT Commands and Downlink Command
Last modified by kai on 2024/09/06 10:00
Change comment:
There is no comment for this version
Summary
-
Page properties (2 modified, 0 added, 0 removed)
Details
- Page properties
-
- Author
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. Bei1 +XWiki.Xiaoling - Content
-
... ... @@ -14,10 +14,9 @@ 14 14 15 15 ((( 16 16 **This page shows the common commands since Dragino LoRaWAN stack DR-LWS-005. Make sure the end node support stack higher than DR-LWS-005 before checking this page.** 17 - 18 - 19 19 ))) 20 20 19 + 21 21 = 2. How to use AT Commands or Downlink command = 22 22 23 23 ... ... @@ -27,6 +27,8 @@ 27 27 ** Use Base64 format to send a downlink: [[Chirpstack>>Notes for ChirpStack]], [[How to Convert>>http://wiki.dragino.com/xwiki/bin/view/Main/Notes%20for%20ChirpStack/#H4.1ConvertHEXtoBase64]]? 28 28 ** See use note for more serves [[Servers Note>>doc:Main.WebHome]](IoT LoRaWAN Server) 29 29 29 +(% style="display:none" %) (%%) 30 + 30 30 = 3. Support End Node and firmware version = 31 31 32 32 ... ... @@ -101,6 +101,7 @@ 101 101 ))) 102 102 ))) 103 103 105 +(% style="display:none" %) (%%) 104 104 105 105 = 4. System Management Commands = 106 106 ... ... @@ -139,6 +139,7 @@ 139 139 * **Example 1**: Downlink Payload:** 0100001E** ~/~/ Set Transmit Interval (TDC) = 30 seconds 140 140 * **Example 2**: Downlink Payload:** 0100003C** ~/~/ Set Transmit Interval (TDC) = 60 seconds 141 141 144 +(% style="display:none" %) (%%) 142 142 143 143 == 4.2 Reboot End Node == 144 144 ... ... @@ -172,11 +172,10 @@ 172 172 ))) 173 173 174 174 ((( 175 -If the downlink payload=**04FF**, the end node will reboot. 176 - 177 - 178 +If the downlink payload=**04FF**, the end node will reboot. 178 178 ))) 179 179 181 + 180 180 == 4.3 Reset to factory Default == 181 181 182 182 ... ... @@ -301,7 +301,6 @@ 301 301 OK 302 302 ))) 303 303 304 - 305 305 = 5. Keys, IDs and EUIs management = 306 306 307 307 == 5.1 Application EUI == ... ... @@ -320,6 +320,7 @@ 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 324 +(% style="display:none" %) (%%) 323 323 324 324 == 5.2 Application Key == 325 325 ... ... @@ -337,6 +337,7 @@ 337 337 ))) 338 338 |(% style="width:441px" %)AT+APPKEY=00 35 55 55 22 23 55 53 43 24 23 42 34 35 35 35|(% style="width:180px" %)Set the Application Key|(% style="width:350px" %)OK 339 339 342 +(% style="display:none" %) (%%) 340 340 341 341 == 5.3 Application Session Key == 342 342 ... ... @@ -356,6 +356,7 @@ 356 356 OK 357 357 ))) 358 358 362 +(% style="display:none" %) (%%) 359 359 360 360 == 5.4 Device Address == 361 361 ... ... @@ -375,6 +375,7 @@ 375 375 ))) 376 376 |(% style="width:192px" %)AT+DADDR=A8 40 41 FF|(% style="width:241px" %)Set the Application Session Key.|(% style="width:359px" %)OK 377 377 382 +(% style="display:none" %) (%%) 378 378 379 379 == 5.5 Device EUI == 380 380 ... ... @@ -394,6 +394,7 @@ 394 394 OK 395 395 ))) 396 396 402 +(% style="display:none" %) (%%) 397 397 398 398 == 5.6 Network ID == 399 399 ... ... @@ -411,6 +411,7 @@ 411 411 ))) 412 412 |(% style="width:191px" %)AT+NWKID=A8 40 41 FF|(% style="width:153px" %)Set the Network ID.|(% style="width:101px" %)OK 413 413 420 +(% style="display:none" %) (%%) 414 414 415 415 == 5.7 Network Session Key == 416 416 ... ... @@ -428,6 +428,7 @@ 428 428 ))) 429 429 |(% style="width:455px" %)AT+NWKSKEY=A8 40 41 FF FF 12 34 56 00 01 02 04 05 06 06 07|(% style="width:215px" %)Set the Network Session Key.|(% style="width:343px" %)OK 430 430 438 +(% style="display:none" %) (%%) 431 431 432 432 = 6. Joining and sending date on LoRaWAN network = 433 433 ... ... @@ -459,6 +459,7 @@ 459 459 * **Example 1:** Downlink Payload: 0501 ~/~/ Set AT+CFM=1 460 460 * **Example 2:** Downlink Payload: 0500 ~/~/ Set AT+CFM=0 461 461 470 +(% style="display:none" %) (%%) 462 462 463 463 === 6.1.2 AT+CFM command since DR-LWS007 software stack === 464 464 ... ... @@ -505,6 +505,7 @@ 505 505 * **Example 1:** Downlink Payload: 05010101 ~/~/ Set AT+CFM=1,1,1 506 506 * **Example 2:** Downlink Payload: 05000700 ~/~/ Set AT+CFM=0,7,0 507 507 517 +(% style="display:none" %) (%%) 508 508 509 509 == 6.2 Confirm Status == 510 510 ... ... @@ -514,14 +514,13 @@ 514 514 515 515 (% style="color:blue" %)**AT Command: AT+CFS** 516 516 517 -(% border="1" style="background-color:#ffffcc; color:green; width: 534.222px" %)518 -|=(% colspan="3" style="width: 531px;" %)AT+CFS519 -|(% style="width:156px" %)**Command Example**|(% style="width:193px" %)**Function**|(% style="width:17 8px" %)**Response**520 -|(% style="width:156px" %)AT+CFS=?|(% style="width:193px" %)Get confirmation status|(% style="width:17 8px" %)0(((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((( 521 521 OK 522 522 ))) 523 523 524 - 525 525 == 6.3 Join LoRa® Network == 526 526 527 527 ... ... @@ -539,7 +539,6 @@ 539 539 While Error in format, return AT_BUSY_ERROR 540 540 ))) 541 541 542 - 543 543 == 6.4 LoRa® Network Join Mode == 544 544 545 545 ... ... @@ -566,6 +566,7 @@ 566 566 * **Example 1: **Downlink Payload: **2000 ** ~/~/ Set AT+NJM=0 567 567 * **Example 2:** Downlink Payload: **2001** ~/~/ Set AT+NJM=1 568 568 577 +(% style="display:none" %) (%%) 569 569 570 570 == 6.5 LoRa® Network Join Status == 571 571 ... ... @@ -582,6 +582,7 @@ 582 582 OK 583 583 ))) 584 584 594 +(% style="display:none" %) (%%) 585 585 586 586 == 6.6 Print Last Received Data in Raw Format == 587 587 ... ... @@ -598,6 +598,7 @@ 598 598 OK 599 599 ))) 600 600 611 +(% style="display:none" %) (%%) 601 601 602 602 == 6.7 Print Last Received Data in Binary Format == 603 603 ... ... @@ -614,6 +614,7 @@ 614 614 OK 615 615 ))) 616 616 628 +(% style="display:none" %) (%%) 617 617 618 618 == 6.8 Send Text Data == 619 619 ... ... @@ -628,12 +628,10 @@ 628 628 |(% style="width:201px" %)**Command Example**|(% style="width:340px" %)**Function**|(% style="width:446px" %)**Response** 629 629 |(% style="width:201px" %)AT+SEND=12:hello world|(% style="width:340px" %)Send text data along with the application port.|(% style="width:446px" %)OK((( 630 630 While Error in format, return 631 - 632 632 AT_BUSY_ERROR/AT_BUSY_ERROR/AT_NO_NETWORK_JOINED 633 - 634 - 635 635 ))) 636 636 646 +(% style="display:none" %) (%%) 637 637 638 638 == 6.9 Send Hexadecimal Data == 639 639 ... ... @@ -648,11 +648,10 @@ 648 648 |(% style="width:257px" %)**Command Example**|(% style="width:394px" %)**Function**|(% style="width:446px" %)**Response** 649 649 |(% style="width:257px" %)AT+SENDB=12:abcdef0123456789|(% style="width:394px" %)Send hexadecimal data along with the application port.|(% style="width:446px" %)OK 650 650 |(% style="width:257px" %)AT+SENDB=abcdef0123456789|(% style="width:394px" %)Send hexadecimal data along with the application port.|(% style="width:446px" %)While Error in format, return((( 651 -AT_PARAM_ERROR AT_BUSY_ERROR/AT_NO_NETWORK_JOINED 652 - 653 - 661 +AT_PARAM_ERROR AT_BUSY_ERROR/AT_NO_NETWORK_JOINED 654 654 ))) 655 655 664 +(% style="display:none" %) (%%) 656 656 657 657 = 7. LoRaWAN network management = 658 658 ... ... @@ -682,6 +682,7 @@ 682 682 * **Example 1**: Downlink Payload: **2201** ~/~/ Set AT+ADR=1. 683 683 * **Example 2**: Downlink Payload: **2200FFFF** ~/~/ Set AT+ADR=0. 684 684 694 +(% style="display:none" %) (%%) 685 685 686 686 == 7.2 LoRa® Class == 687 687 ... ... @@ -698,9 +698,9 @@ 698 698 OK 699 699 ))) 700 700 |(% style="width:163px" %)AT+CLASS=C|(% style="width:166px" %)Set the Device Class.|(% style="width:175px" %)OK((( 701 - 702 702 ))) 703 703 713 +(% style="display:none" %) (%%) 704 704 705 705 == 7.3 Duty Cycle Setting == 706 706 ... ... @@ -717,9 +717,9 @@ 717 717 OK 718 718 ))) 719 719 |(% style="width:165px" %)AT+DCS=1|(% style="width:239px" %)Set the ETSI Duty Cycle setting.|(% style="width:107px" %)OK((( 720 - 721 721 ))) 722 722 732 +(% style="display:none" %) (%%) 723 723 724 724 == 7.4 Data Rate == 725 725 ... ... @@ -751,6 +751,7 @@ 751 751 * **Example 1**: Downlink Payload: **220001FF** ~/~/ Set AT+DR=1. 752 752 * **Example 2**: Downlink Payload: **220000FF** ~/~/ Set AT+DR=0. 753 753 764 +(% style="display:none" %) (%%) 754 754 755 755 == 7.5 Frame Counter Downlink == 756 756 ... ... @@ -770,7 +770,6 @@ 770 770 OK 771 771 ))) 772 772 773 - 774 774 == 7.6 Frame Counter Uplink == 775 775 776 776 Feature: Get or Set the Frame Counter Uplink. ... ... @@ -785,9 +785,9 @@ 785 785 OK 786 786 ))) 787 787 |(% style="width:177px" %)AT+FCU=10|(% style="width:239px" %)Set the Frame Counter Uplink.|(% style="width:113px" %)OK((( 788 - 789 789 ))) 790 790 800 +(% style="display:none" %) (%%) 791 791 792 792 == 7.7 Join Accept Delay1 == 793 793 ... ... @@ -804,9 +804,9 @@ 804 804 OK 805 805 ))) 806 806 |(% style="width:164px" %)AT+JN1DL=10000|(% style="width:229px" %)Set the Join Accept Delay.|(% style="width:140px" %)OK((( 807 - 808 808 ))) 809 809 819 +(% style="display:none" %) (%%) 810 810 811 811 == 7.8 Join Accept Delay2 == 812 812 ... ... @@ -823,9 +823,9 @@ 823 823 OK 824 824 ))) 825 825 |(% style="width:160px" %)AT+JN2DL=20000|(% style="width:228px" %)Set the Join Accept Delay.|(% style="width:146px" %)OK((( 826 - 827 827 ))) 828 828 838 +(% style="display:none" %) (%%) 829 829 830 830 == 7.9 Public Network Mode == 831 831 ... ... @@ -854,6 +854,7 @@ 854 854 ))) 855 855 |(% style="width:166px" %)AT+PNM=0|(% style="width:225px" %)Set to use private network autoset syncword=0x12|(% style="width:272px" %) 856 856 867 +(% style="display:none" %) (%%) 857 857 858 858 == 7.10 Receive Delay1 == 859 859 ... ... @@ -870,9 +870,9 @@ 870 870 OK 871 871 ))) 872 872 |(% style="width:155px" %)AT+RX1DL=1500|(% style="width:128px" %)Set the delay.|(% style="width:122px" %)OK((( 873 - 874 874 ))) 875 875 886 +(% style="display:none" %) (%%) 876 876 877 877 == 7.11 Receive Delay2 == 878 878 ... ... @@ -889,9 +889,9 @@ 889 889 OK 890 890 ))) 891 891 |(% style="width:175px" %)AT+RX2DL=2500|(% style="width:152px" %)Set the delay.|(% style="width:150px" %)OK((( 892 - 893 893 ))) 894 894 905 +(% style="display:none" %) (%%) 895 895 896 896 == 7.12 Rx2 Window Data Rate == 897 897 ... ... @@ -908,9 +908,9 @@ 908 908 OK 909 909 ))) 910 910 |(% style="width:160px" %)AT+RX2DR=6|(% style="width:232px" %)Set the Rx2 window data rate.|(% style="width:130px" %)OK((( 911 - 912 912 ))) 913 913 924 +(% style="display:none" %) (%%) 914 914 915 915 == 7.13 Rx2 Window Frequency == 916 916 ... ... @@ -927,9 +927,9 @@ 927 927 OK 928 928 ))) 929 929 |(% style="width:183px" %)AT+RX2FQ=434665000|(% style="width:240px" %)Set the Rx2 window frequency.|(% style="width:160px" %)OK((( 930 - 931 931 ))) 932 932 943 +(% style="display:none" %) (%%) 933 933 934 934 == 7.14 Transmit Power == 935 935 ... ... @@ -948,7 +948,6 @@ 948 948 OK 949 949 ))) 950 950 |(% style="width:161px" %)AT+TXP=1|(% style="width:189px" %)Set the Transmit Power.|(% style="width:112px" %)OK((( 951 - 952 952 ))) 953 953 954 954 Downlink Payload. The 4th byte of 0x22 downlink. ... ... @@ -958,6 +958,7 @@ 958 958 * **Example 1**: Downlink Payload: **22000102** ~/~/ Set AT+TXP=2. 959 959 * **Example 2**: Downlink Payload: **220000FF** ~/~/ Set AT+TXP=0. 960 960 971 +(% style="display:none" %) (%%) 961 961 962 962 == 7.15 RSSI of the Last Received Packet == 963 963 ... ... @@ -974,6 +974,7 @@ 974 974 OK 975 975 ))) 976 976 988 +(% style="display:none" %) (%%) 977 977 978 978 == 7.16 SNR of the Last Received Packet == 979 979 ... ... @@ -990,6 +990,7 @@ 990 990 OK 991 991 ))) 992 992 1005 +(% style="display:none" %) (%%) 993 993 994 994 == 7.17 Application Port == 995 995 ... ... @@ -1016,6 +1016,7 @@ 1016 1016 * **Example 1**: Downlink Payload: **2301** ~/~/ set the application port to 1 1017 1017 * **Example 2**: Downlink Payload:** 2305** ~/~/ set the application port to 5 1018 1018 1032 +(% style="display:none" %) (%%) 1019 1019 1020 1020 == 7.18 Single Channel Mode == 1021 1021 ... ... @@ -1033,6 +1033,7 @@ 1033 1033 ))) 1034 1034 |(% style="width:182px" %)AT+CHS=868100000|(% style="width:295px" %)Set Frequency for Single Channel Mode|(% style="width:122px" %)OK 1035 1035 1050 +(% style="display:none" %) (%%) 1036 1036 1037 1037 == 7.19 Eight Channel Mode == 1038 1038 ... ... @@ -1061,6 +1061,7 @@ 1061 1061 * **Example 1**: Downlink Payload: 2401 ~/~/ set channel mode to 1 1062 1062 * **Example 2**: Downlink Payload: 2405 ~/~/ set channel mode to 5 1063 1063 1079 +(% style="display:none" %) (%%) 1064 1064 1065 1065 == 7.20 Get or Set RXwindows1 timeout == 1066 1066 ... ... @@ -1078,24 +1078,19 @@ 1078 1078 ))) 1079 1079 |(% style="width:163px" %)AT+RX1WTO=60|(% style="width:201px" %)Set RXwindows1 timeout|(% style="width:93px" %)OK 1080 1080 1081 -((( 1082 - 1097 +(% style="display:none" %) (%%) 1083 1083 1084 - 1099 +((( 1085 1085 (% style="color:blue" %)**AT+RX1WTO**(%%) is theRxSingle timeout value of receive window 1. If it is not set, then the queriedvalue is the default value. If it is set, then the queried value is the setvalue. AT+RX2TWO is thesame as above. The definitionof RxSingle timeout is as described in the following paragraph. 1086 - 1087 - 1088 1088 ))) 1089 1089 1090 1090 [[image:image-20220526162535-1.png]] 1091 1091 1092 - 1093 1093 ((( 1094 1094 Increasing thisvalue is equal to extending the time that the receiving window is opened, butthe corresponding power consumption will also increase. Properly increasingthis value can increase the success rate of the downlink. 1095 - 1096 - 1097 1097 ))) 1098 1098 1109 + 1099 1099 == 7.21 Get or Set RXwindows2 timeout == 1100 1100 1101 1101 ... ... @@ -1112,6 +1112,7 @@ 1112 1112 ))) 1113 1113 |(% style="width:190px" %)AT+RX2WTO=20|(% style="width:199px" %)Set RXwindows2 timeout|(% style="width:104px" %)OK 1114 1114 1126 +(% style="display:none" %) (%%) 1115 1115 1116 1116 == 7.22 Setting up uplinkdwelltime (as923, au915) == 1117 1117 ... ... @@ -1138,6 +1138,7 @@ 1138 1138 * **Example 1**: Downlink Payload: **2501** ~/~/ set uplinkdwelltime to 1 1139 1139 * **Example 2**: Downlink Payload: **2500** ~/~/ set uplinkdwelltime to 0 1140 1140 1153 +(% style="display:none" %) (%%) 1141 1141 1142 1142 == 7.23 Set Packet Receiving Response Level == 1143 1143 ... ... @@ -1178,6 +1178,7 @@ 1178 1178 * **Example 1**: Downlink Payload: **2101** ~/~/ set packet receiving response level to 1 1179 1179 * **Example 2**: Downlink Payload: **2102** ~/~/ set packet receiving response level to 2 1180 1180 1194 +(% style="display:none" %) (%%) 1181 1181 1182 1182 == 7.24 Controls NBTrans in unconfirmed uplink mode(LWS007 NBTrans:Set retransmission packets) == 1183 1183 ... ... @@ -1209,6 +1209,7 @@ 1209 1209 * Example 1: Downlink Payload: 330100 ~/~/ Set AT+SETMAXNBTRANS=1,0 1210 1210 * Example 2: Downlink Payload: 330201 ~/~/ Set AT+SETMAXNBTRANS=2,1 1211 1211 1226 +(% style="display:none" %) (%%) 1212 1212 1213 1213 == 7.25 Device offline rejoining (LWS007) == 1214 1214 ... ... @@ -1215,6 +1215,11 @@ 1215 1215 1216 1216 (% style="color:blue" %)**AT Command: AT+DDETECT** 1217 1217 1233 +AT+DDETECT=<Flag>,<ACK_Timout_1>,<ACK_Timout_2> (Default Value: AT+DDETECT=1,1440,2880) 1234 + 1235 +* ACK_Timout_1: Unit: min 1236 +* ACK_Timout_2: Unit: min 1237 + 1218 1218 (% border="1" style="background-color:#ffffcc; color:green; width:710.222px" %) 1219 1219 |=(% colspan="3" style="width: 707px;" %)AT+**DDETECT** 1220 1220 |(% style="width:160px" %)**Command Example**|(% style="width:198px" %)**Function**|(% style="width:349px" %)**Response** ... ... @@ -1246,14 +1246,19 @@ 1246 1246 OK 1247 1247 ))) 1248 1248 1249 -(% style="color:blue" %)**Downlink Command: 0x3 3**1269 +(% style="color:blue" %)**Downlink Command: 0x32** 1250 1250 1251 1251 Format: Command Code (0x32) followed by 2 bytes mode value. 1252 1252 1253 -If the downlink payload=320105A00B40, it means set end node to use confirm mode, while type code is 3 3.1273 +If the downlink payload=320105A00B40, it means set end node to use confirm mode, while type code is 32. 1254 1254 1255 -* **Example 1:** Downlink Payload: 320105A00B40 ~/~/ Set AT+DDETECT=1,1440,2880 1275 +* **Example 1:** Downlink Payload: 320105A00B40 ~/~/ Set AT+DDETECT=1,1440,2880 1276 +** 0x01 : Flag 1277 +** 0x05A0: ACK_Timout_1 : 1440minutes (24 hours) 1278 +** 0x0B40: ACK_Timout_2 : 2880minutes (48 hours) 1279 +** **Explain**: Enable Online Detect, if end node doesn't receive any downlink within ACK_Timout_1( 1440 minutes or 24 hours). End node will use confirmed uplink to send packets during ACK_Timout_1 (the 24th hour) to ACK_Timout_2 ( the 48th hour). If from the 24th to 48th hour, end node got an downlink from server, it will switch back to unconfirmed uplink. end node will restart ACK_Timout_1. If from the 24th to 48th hour, end node still not got any downlink, means device doesn't get ACK from server within last 48 hours. Device will process rejoin, rejoin request interval is AT+RJTDC period. For AU915/ US915, device will use the sub-band used for last join. 1256 1256 1281 +(% style="display:none" %) (%%) 1257 1257 1258 1258 == 7.26 Request the server to send an ACK == 1259 1259 ... ... @@ -1268,10 +1268,10 @@ 1268 1268 ))) 1269 1269 |(% style="width:160px" %)**AT+PNACKMD=0**|(% style="width:263px" %)off request the server to send an ACK|(% style="width:109px" %)((( 1270 1270 0 1271 - 1272 1272 OK 1273 1273 ))) 1274 1274 1299 +(% style="display:none" %) (%%) 1275 1275 1276 1276 == 7.27 Adjust network rejoining interval == 1277 1277 ... ... @@ -1299,6 +1299,7 @@ 1299 1299 * **Example 1:** Downlink Payload: 26000A ~/~/ Set AT+RJTDC=10 1300 1300 * **Example 2: **Downlink Payload: 260002 ~/~/ Set AT+RJTDC=2 1301 1301 1327 +(% style="display:none" %) (%%) 1302 1302 1303 1303 = 8. AT Commands Combination = 1304 1304 ... ... @@ -1308,6 +1308,7 @@ 1308 1308 * (% style="color:blue" %)**AT+ADR=0 **(%%) **~-~->** Disable ADR first 1309 1309 * (% style="color:blue" %)**AT+RX2DR=xxxx** (%%) **~-~->** Set xxxx to your wanted DataRate 1310 1310 1337 +(% style="display:none" %) (%%) 1311 1311 1312 1312 == 8.2 Use Downlink Command to set a fix uplink DR == 1313 1313 ... ... @@ -1317,7 +1317,9 @@ 1317 1317 **Same as:** 1318 1318 1319 1319 * AT+ADR=0 [[Reference>>||anchor="H7.1AdaptiveDataRate"]] 1347 + 1320 1320 * AT+DR=5 [[Reference>>||anchor="H7.4DataRate"]] 1349 + 1321 1321 * AT+TXP=0 [[Reference>>||anchor="H7.14TransmitPower"]] 1322 1322 1323 1323