Changes for page End Device AT Commands and Downlink Command
Last modified by kai on 2024/09/06 10:00
Summary
-
Page properties (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -1,10 +1,12 @@ 1 - **Contents:** 1 + **Table of** **Contents:** 2 2 3 3 {{toc/}} 4 4 5 5 6 + 6 6 = 1. Introduction = 7 7 9 + 8 8 Dragino LoRaWAN End Node support two types of AT Commands and Downlink Commands: 9 9 10 10 * **Common Commands:** They should be available for each sensor, such as: change uplink interval, reset device. ... ... @@ -17,12 +17,15 @@ 17 17 18 18 = 2. How to use AT Commands or Downlink command = 19 19 22 + 20 20 * 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/]] 21 21 * 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 -** Use HEX format to send a downlink: [[TTN v3>> url:https://wiki.dragino.com/index.php/Notes_for_TTN#Send_Downlink_message]]23 -** Use Base64 format to send a downlink: [[Chirpstack>> url:https://wiki.dragino.com/index.php/Notes_for_ChirpStack#Downlink]].24 -** See use note for more serves [[Servers Note>> url:https://wiki.dragino.com/index.php/Main_Page#Use_Note_for_Server]]25 +** Use HEX format to send a downlink: [[TTN v3>>Notes for TTN]] 26 +** Use Base64 format to send a downlink: [[Chirpstack>>Notes for ChirpStack]] 27 +** See use note for more serves [[Servers Note>>doc:Main.WebHome]](IoT LoRaWAN Server) 25 25 29 + 30 + 26 26 = 3. Support End Node and firmware version = 27 27 28 28 (% border="1" style="background-color:#ffffcc; color:green; width:966px" %) ... ... @@ -169,6 +169,8 @@ 169 169 170 170 ((( 171 171 If the downlink payload=**04FF**, the end node will reboot. 177 + 178 + 172 172 ))) 173 173 174 174 == 4.3 Reset to factory Default == ... ... @@ -417,6 +417,8 @@ 417 417 418 418 == 6.1 Confirm Mode == 419 419 427 +=== AT+CFM command before DR-LWS007 software stack === 428 + 420 420 Feature: Get or Set the confirmation mode (0-1). 421 421 422 422 {{info}} ... ... @@ -441,6 +441,54 @@ 441 441 * Example 1: Downlink Payload: 0501 ~/~/ Set AT+CFM=1 442 442 * Example 2: Downlink Payload: 0500 ~/~/ Set AT+CFM=0 443 443 453 +=== AT+CFM command since DR-LWS007 software stack === 454 + 455 +{{info}} 456 +**AT Command: AT+CFM** 457 +{{/info}} 458 + 459 +(% border="1" style="background-color:#ffffcc; color:green; width:710.222px" %) 460 +|=(% colspan="3" style="width: 707px;" %)AT+CFM 461 +|(% style="width:160px" %)**Command Example**|(% style="width:198px" %)**Function**|(% style="width:349px" %)**Response** 462 +|(% style="width:160px" %)((( 463 +AT+CFM=1,0,0 464 + 465 +value1 466 +)))|(% style="width:198px" %)confirmed uplink|(% style="width:349px" %)((( 467 +1 468 + 469 +OK 470 +))) 471 +|(% style="width:160px" %)((( 472 +AT+CFM=0,?,0 473 + 474 +value2 475 +)))|(% style="width:198px" %)set max retry , range: 0 ~~ 7|(% style="width:349px" %)((( 476 +0~~7 477 + 478 +OK 479 +))) 480 +|(% style="width:160px" %)((( 481 +AT+CFM=0,0,1 482 + 483 +value3 484 +)))|(% style="width:198px" %)uplink fcnt increase by 1 for each retry|(% style="width:349px" %)((( 485 +1 486 + 487 +OK 488 +))) 489 + 490 +{{info}} 491 +**Downlink Command: 0x05** 492 +{{/info}} 493 + 494 +Format: Command Code (0x05) followed by 2 bytes mode value. 495 + 496 +If the downlink payload=05010101, it means set end node to use confirm mode, while type code is 05. 497 + 498 +* Example 1: Downlink Payload: 05010101 ~/~/ Set AT+CFM=1,1,1 499 +* Example 2: Downlink Payload: 05000700 ~/~/ Set AT+CFM=0,7,0 500 + 444 444 == 6.2 Confirm Status == 445 445 446 446 Feature: Get confirmation status of the last AT+SEND (0-1). ... ... @@ -498,7 +498,7 @@ 498 498 499 499 If the downlink payload=2000, it means set the Network Join Mode, while type code is 20. 500 500 501 -* **Example 1: **Downlink Payload: **2000** ~/~/ Set AT+NJM= O558 +* **Example 1: **Downlink Payload: **2000** ~/~/ Set AT+NJM=0 502 502 * **Example 2:** Downlink Payload: **2001** ~/~/ Set AT+NJM=1 503 503 504 504 == 6.5 LoRa® Network Join Status == ... ... @@ -754,8 +754,10 @@ 754 754 755 755 == 7.9 Public Network Mode == 756 756 757 -Feature: Get or Set the public network mode. (0: off, 1: on) 814 +Feature: Get or Set the public network mode. (0: off, 1: on). A Public LoRaWAN network use 0x34 as syncword. Default Settings; PNM=1 758 758 816 +Notice: If user build their own LoRaWAN server but still use syncword=0x34, this is still considered a public LoRaWAN network 817 + 759 759 {{info}} 760 760 **AT Command:AT+PNM** 761 761 {{/info}} ... ... @@ -766,11 +766,16 @@ 766 766 |(% style="width:166px" %)AT+PNM=?|(% style="width:225px" %)Get the public network mode.|(% style="width:272px" %)1((( 767 767 OK 768 768 ))) 769 -|(% style="width:166px" %)AT+PNM=1|(% style="width:225px" %)Set the public network mode.|(% style="width:272px" %)(System will write new value to PNM)((( 828 +|(% style="width:166px" %)AT+PNM=1|(% style="width:225px" %)((( 829 +Set the public network mode. 830 + 831 +Set syncword=0x34 832 +)))|(% style="width:272px" %)(System will write new value to PNM)((( 770 770 OK 771 771 772 772 773 773 ))) 837 +|(% style="width:166px" %)AT+PNM=0|(% style="width:225px" %)Set to use private network autoset syncword=0x12|(% style="width:272px" %) 774 774 775 775 == 7.10 Receive Delay1 == 776 776 ... ... @@ -790,7 +790,7 @@ 790 790 791 791 ))) 792 792 793 -== 7.11Receive Delay2 == 857 +== 7.11 Receive Delay2 == 794 794 795 795 Feature: Get or Set the delay between the end of the Tx and the Rx Window 2 in ms 796 796 ... ... @@ -995,6 +995,8 @@ 995 995 996 996 ((( 997 997 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. 1062 + 1063 + 998 998 ))) 999 999 1000 1000 == 7.21 Get or Set RXwindows2 timeout == ... ... @@ -1081,6 +1081,129 @@ 1081 1081 * **Example 1**: Downlink Payload: **2101** ~/~/ set packet receiving response level to 1 1082 1082 * **Example 2**: Downlink Payload: **2102** ~/~/ set packet receiving response level to 2 1083 1083 1150 +== 7.24 Controls NBTrans in unconfirmed uplink mode(LWS007 NBTrans:Set retransmission packets) == 1151 + 1152 +{{info}} 1153 +**AT Command: AT+SETMAXNBTRANS ** 1154 +{{/info}} 1155 + 1156 +(% border="1" style="background-color:#ffffcc; color:green; width:536.222px" %) 1157 +|=(% colspan="3" style="width: 533px;" %)AT+**SETMAXNBTRANS** 1158 +|(% style="width:160px" %)**Command Example**|(% style="width:263px" %)**Function**|(% style="width:109px" %)**Response** 1159 +|(% style="width:160px" %)**AT+SETMAXNBTRANS=1,0**|(% style="width:263px" %)Value1: set the maximum NBTrans.|(% style="width:109px" %)1((( 1160 +OK 1161 +))) 1162 +|(% style="width:160px" %)**AT+SETMAXNBTRANS=?,1**|(% style="width:263px" %)value2: 0: uplink fcnt doesn't change for each NBTrans; 1: uplink fcnt increase by 1 for each NBTrans.|(% style="width:109px" %)((( 1163 +1 1164 + 1165 +OK 1166 +))) 1167 + 1168 +{{info}} 1169 +**Downlink Command: 0x33** 1170 +{{/info}} 1171 + 1172 +Format: Command Code (0x33) followed by 2 bytes mode value. 1173 + 1174 +If the downlink payload=330100, it means set end node to use confirm mode, while type code is 33. 1175 + 1176 +* Example 1: Downlink Payload: 330100 ~/~/ Set AT+SETMAXNBTRANS=1,0 1177 +* Example 2: Downlink Payload: 330201 ~/~/ Set AT+SETMAXNBTRANS=2,1 1178 + 1179 +== 7.25 Device offline rejoining (LWS007) == 1180 + 1181 +{{info}} 1182 +**AT Command: AT+DDETECT** 1183 +{{/info}} 1184 + 1185 +(% border="1" style="background-color:#ffffcc; color:green; width:710.222px" %) 1186 +|=(% colspan="3" style="width: 707px;" %)AT+**DDETECT** 1187 +|(% style="width:160px" %)**Command Example**|(% style="width:198px" %)**Function**|(% style="width:349px" %)**Response** 1188 +|(% style="width:160px" %)((( 1189 +AT+DDETECT=1,1440,2880 1190 + 1191 +value1 1192 +)))|(% style="width:198px" %)Enable online detect|(% style="width:349px" %)((( 1193 +1 1194 + 1195 +OK 1196 +))) 1197 +|(% style="width:160px" %)((( 1198 +AT+DDETECT=1,?,2880 1199 + 1200 +value2 1201 +)))|(% style="width:198px" %)Online detection packet sending time|(% style="width:349px" %)((( 1202 + 1203 + 1204 +OK 1205 +))) 1206 +|(% style="width:160px" %)((( 1207 +AT+DDETECT=1,1440,? 1208 + 1209 +value3 1210 +)))|(% style="width:198px" %)Process rejoin|(% style="width:349px" %)((( 1211 + 1212 + 1213 +OK 1214 +))) 1215 + 1216 +{{info}} 1217 +**Downlink Command: 0x33** 1218 +{{/info}} 1219 + 1220 +Format: Command Code (0x32) followed by 2 bytes mode value. 1221 + 1222 +If the downlink payload=320105A00B40, it means set end node to use confirm mode, while type code is 33. 1223 + 1224 +* Example 1: Downlink Payload: 320105A00B40 ~/~/ Set AT+DDETECT=1,1440,2880 1225 + 1226 +== 7.26 Request the server to send an ACK == 1227 + 1228 +{{info}} 1229 +**AT Command: AT+PNACKMD** 1230 +{{/info}} 1231 + 1232 +(% border="1" style="background-color:#ffffcc; color:green; width:536.222px" %) 1233 +|=(% colspan="3" style="width: 533px;" %)**AT+PNACKMD** 1234 +|(% style="width:160px" %)**Command Example**|(% style="width:263px" %)**Function**|(% style="width:109px" %)**Response** 1235 +|(% 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((( 1236 +OK 1237 +))) 1238 +|(% style="width:160px" %)**AT+PNACKMD=0**|(% style="width:263px" %)off request the server to send an ACK|(% style="width:109px" %)((( 1239 +0 1240 + 1241 +OK 1242 +))) 1243 + 1244 +== 7.27 Adjust network rejoining interval == 1245 + 1246 +{{info}} 1247 +**AT Command: AT+RJTDC** 1248 +{{/info}} 1249 + 1250 +(% border="1" style="background-color:#ffffcc; color:green; width:727.222px" %) 1251 +|=(% colspan="3" style="width: 724px;" %)AT+RJTDC 1252 +|(% style="width:165px" %)**Command Example**|(% style="width:227px" %)**Function**|(% style="width:329px" %)**Response** 1253 +|(% style="width:165px" %)AT+RJTDC=?|(% style="width:227px" %)Show the ReJoin data transmission interval in min|(% style="width:329px" %)30000((( 1254 +OK 1255 + 1256 +the interval is 30000ms = 30s 1257 +))) 1258 +|(% style="width:165px" %)AT+RJTDC=60000|(% style="width:227px" %)Set the ReJoin data transmission interval in min|(% style="width:329px" %)OK((( 1259 +Set the ReJoin data transmission interval to 60000ms = 60 seconds 1260 +))) 1261 + 1262 +{{info}} 1263 +**Downlink Command: 0x26** 1264 +{{/info}} 1265 + 1266 +Format: Command Code (0x26) followed by 2 bytes mode value. 1267 + 1268 +If the downlink payload=26000A, it means set end node to use confirm mode, while type code is 26. 1269 + 1270 +* Example 1: Downlink Payload: 26000A ~/~/ Set AT+RJTDC=10 1271 +* Example 2: Downlink Payload: 260002 ~/~/ Set AT+RJTDC=2 1272 + 1084 1084 = 8. AT Commands Combination = 1085 1085 1086 1086 == 8.1 Set a fix RX2DR for downlink window == ... ... @@ -1099,3 +1099,4 @@ 1099 1099 * AT+ADR=0 [[Reference>>||anchor="H7.1AdaptiveDataRate"]] 1100 1100 * AT+DR=5 [[Reference>>||anchor="H7.4DataRate"]] 1101 1101 * AT+TXP=0 [[Reference>>||anchor="H7.14TransmitPower"]] 1291 +~)~)~)