Changes for page End Device AT Commands and Downlink Command
Last modified by kai on 2024/09/06 10:00
Summary
-
Page properties (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -1,4 +1,4 @@ 1 - **Contents:** 1 + **Table of** **Contents:** 2 2 3 3 {{toc/}} 4 4 ... ... @@ -6,6 +6,7 @@ 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 11 * **Common Commands:** They should be available for each sensor, such as: change uplink interval, reset device. ... ... @@ -18,6 +18,7 @@ 18 18 19 19 = 2. How to use AT Commands or Downlink command = 20 20 22 + 21 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 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: 23 23 ** Use HEX format to send a downlink: [[TTN v3>>Notes for TTN]] ... ... @@ -28,6 +28,7 @@ 28 28 29 29 = 3. Support End Node and firmware version = 30 30 33 + 31 31 (% border="1" style="background-color:#ffffcc; color:green; width:966px" %) 32 32 |=(% colspan="3" style="width: 963px;" %)((( 33 33 Dragino STM32 base hardware Firmware / LoRaWAN stack list ... ... @@ -103,8 +103,10 @@ 103 103 104 104 = 4. System Management Commands = 105 105 109 + 106 106 == 4.1 Change Uplink Interval == 107 107 112 + 108 108 Feature: Change LoRaWAN End Node Transmit Interval. 109 109 110 110 (% class="box infomessage" %) ... ... @@ -302,8 +302,6 @@ 302 302 OK 303 303 ))) 304 304 305 - 306 - 307 307 = 5. Keys, IDs and EUIs management = 308 308 309 309 == 5.1 Application EUI == ... ... @@ -322,8 +322,6 @@ 322 322 ))) 323 323 |(% style="width:305px" %)AT+APPEUI=00 b3 d5 7e f0 00 4d 34|(% style="width:186px" %)Set the Application EUI|(% style="width:191px" %)OK 324 324 325 - 326 - 327 327 == 5.2 Application Key == 328 328 329 329 Feature: Get or Set the Application Key. ... ... @@ -340,8 +340,6 @@ 340 340 ))) 341 341 |(% 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 342 342 343 - 344 - 345 345 == 5.3 Application Session Key == 346 346 347 347 Feature: Get or Set the Application Session Key. ... ... @@ -360,8 +360,6 @@ 360 360 OK 361 361 ))) 362 362 363 - 364 - 365 365 == 5.4 Device Address == 366 366 367 367 Feature: Get or Set the Device Address. ... ... @@ -434,6 +434,8 @@ 434 434 435 435 == 6.1 Confirm Mode == 436 436 434 +=== AT+CFM command before DR-LWS007 software stack === 435 + 437 437 Feature: Get or Set the confirmation mode (0-1). 438 438 439 439 {{info}} ... ... @@ -458,6 +458,54 @@ 458 458 * Example 1: Downlink Payload: 0501 ~/~/ Set AT+CFM=1 459 459 * Example 2: Downlink Payload: 0500 ~/~/ Set AT+CFM=0 460 460 460 +=== AT+CFM command since DR-LWS007 software stack === 461 + 462 +{{info}} 463 +**AT Command: AT+CFM** 464 +{{/info}} 465 + 466 +(% border="1" style="background-color:#ffffcc; color:green; width:710.222px" %) 467 +|=(% colspan="3" style="width: 707px;" %)AT+CFM 468 +|(% style="width:160px" %)**Command Example**|(% style="width:198px" %)**Function**|(% style="width:349px" %)**Response** 469 +|(% style="width:160px" %)((( 470 +AT+CFM=1,0,0 471 + 472 +value1 473 +)))|(% style="width:198px" %)confirmed uplink|(% style="width:349px" %)((( 474 +1 475 + 476 +OK 477 +))) 478 +|(% style="width:160px" %)((( 479 +AT+CFM=0,?,0 480 + 481 +value2 482 +)))|(% style="width:198px" %)set max retry , range: 0 ~~ 7|(% style="width:349px" %)((( 483 +0~~7 484 + 485 +OK 486 +))) 487 +|(% style="width:160px" %)((( 488 +AT+CFM=0,0,1 489 + 490 +value3 491 +)))|(% style="width:198px" %)uplink fcnt increase by 1 for each retry|(% style="width:349px" %)((( 492 +1 493 + 494 +OK 495 +))) 496 + 497 +{{info}} 498 +**Downlink Command: 0x05** 499 +{{/info}} 500 + 501 +Format: Command Code (0x05) followed by 2 bytes mode value. 502 + 503 +If the downlink payload=05010101, it means set end node to use confirm mode, while type code is 05. 504 + 505 +* Example 1: Downlink Payload: 05010101 ~/~/ Set AT+CFM=1,1,1 506 +* Example 2: Downlink Payload: 05000700 ~/~/ Set AT+CFM=0,7,0 507 + 461 461 == 6.2 Confirm Status == 462 462 463 463 Feature: Get confirmation status of the last AT+SEND (0-1). ... ... @@ -515,7 +515,7 @@ 515 515 516 516 If the downlink payload=2000, it means set the Network Join Mode, while type code is 20. 517 517 518 -* **Example 1: **Downlink Payload: **2000** ~/~/ Set AT+NJM= O565 +* **Example 1: **Downlink Payload: **2000** ~/~/ Set AT+NJM=0 519 519 * **Example 2:** Downlink Payload: **2001** ~/~/ Set AT+NJM=1 520 520 521 521 == 6.5 LoRa® Network Join Status == ... ... @@ -771,8 +771,10 @@ 771 771 772 772 == 7.9 Public Network Mode == 773 773 774 -Feature: Get or Set the public network mode. (0: off, 1: on) 821 +Feature: Get or Set the public network mode. (0: off, 1: on). A Public LoRaWAN network use 0x34 as syncword. Default Settings; PNM=1 775 775 823 +Notice: If user build their own LoRaWAN server but still use syncword=0x34, this is still considered a public LoRaWAN network 824 + 776 776 {{info}} 777 777 **AT Command:AT+PNM** 778 778 {{/info}} ... ... @@ -783,11 +783,16 @@ 783 783 |(% style="width:166px" %)AT+PNM=?|(% style="width:225px" %)Get the public network mode.|(% style="width:272px" %)1((( 784 784 OK 785 785 ))) 786 -|(% style="width:166px" %)AT+PNM=1|(% style="width:225px" %)Set the public network mode.|(% style="width:272px" %)(System will write new value to PNM)((( 835 +|(% style="width:166px" %)AT+PNM=1|(% style="width:225px" %)((( 836 +Set the public network mode. 837 + 838 +Set syncword=0x34 839 +)))|(% style="width:272px" %)(System will write new value to PNM)((( 787 787 OK 788 788 789 789 790 790 ))) 844 +|(% style="width:166px" %)AT+PNM=0|(% style="width:225px" %)Set to use private network autoset syncword=0x12|(% style="width:272px" %) 791 791 792 792 == 7.10 Receive Delay1 == 793 793 ... ... @@ -1100,6 +1100,129 @@ 1100 1100 * **Example 1**: Downlink Payload: **2101** ~/~/ set packet receiving response level to 1 1101 1101 * **Example 2**: Downlink Payload: **2102** ~/~/ set packet receiving response level to 2 1102 1102 1157 +== 7.24 Controls NBTrans in unconfirmed uplink mode(LWS007 NBTrans:Set retransmission packets) == 1158 + 1159 +{{info}} 1160 +**AT Command: AT+SETMAXNBTRANS ** 1161 +{{/info}} 1162 + 1163 +(% border="1" style="background-color:#ffffcc; color:green; width:536.222px" %) 1164 +|=(% colspan="3" style="width: 533px;" %)AT+**SETMAXNBTRANS** 1165 +|(% style="width:160px" %)**Command Example**|(% style="width:263px" %)**Function**|(% style="width:109px" %)**Response** 1166 +|(% style="width:160px" %)**AT+SETMAXNBTRANS=1,0**|(% style="width:263px" %)Value1: set the maximum NBTrans.|(% style="width:109px" %)1((( 1167 +OK 1168 +))) 1169 +|(% 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" %)((( 1170 +1 1171 + 1172 +OK 1173 +))) 1174 + 1175 +{{info}} 1176 +**Downlink Command: 0x33** 1177 +{{/info}} 1178 + 1179 +Format: Command Code (0x33) followed by 2 bytes mode value. 1180 + 1181 +If the downlink payload=330100, it means set end node to use confirm mode, while type code is 33. 1182 + 1183 +* Example 1: Downlink Payload: 330100 ~/~/ Set AT+SETMAXNBTRANS=1,0 1184 +* Example 2: Downlink Payload: 330201 ~/~/ Set AT+SETMAXNBTRANS=2,1 1185 + 1186 +== 7.25 Device offline rejoining (LWS007) == 1187 + 1188 +{{info}} 1189 +**AT Command: AT+DDETECT** 1190 +{{/info}} 1191 + 1192 +(% border="1" style="background-color:#ffffcc; color:green; width:710.222px" %) 1193 +|=(% colspan="3" style="width: 707px;" %)AT+**DDETECT** 1194 +|(% style="width:160px" %)**Command Example**|(% style="width:198px" %)**Function**|(% style="width:349px" %)**Response** 1195 +|(% style="width:160px" %)((( 1196 +AT+DDETECT=1,1440,2880 1197 + 1198 +value1 1199 +)))|(% style="width:198px" %)Enable online detect|(% style="width:349px" %)((( 1200 +1 1201 + 1202 +OK 1203 +))) 1204 +|(% style="width:160px" %)((( 1205 +AT+DDETECT=1,?,2880 1206 + 1207 +value2 1208 +)))|(% style="width:198px" %)Online detection packet sending time|(% style="width:349px" %)((( 1209 + 1210 + 1211 +OK 1212 +))) 1213 +|(% style="width:160px" %)((( 1214 +AT+DDETECT=1,1440,? 1215 + 1216 +value3 1217 +)))|(% style="width:198px" %)Process rejoin|(% style="width:349px" %)((( 1218 + 1219 + 1220 +OK 1221 +))) 1222 + 1223 +{{info}} 1224 +**Downlink Command: 0x33** 1225 +{{/info}} 1226 + 1227 +Format: Command Code (0x32) followed by 2 bytes mode value. 1228 + 1229 +If the downlink payload=320105A00B40, it means set end node to use confirm mode, while type code is 33. 1230 + 1231 +* Example 1: Downlink Payload: 320105A00B40 ~/~/ Set AT+DDETECT=1,1440,2880 1232 + 1233 +== 7.26 Request the server to send an ACK == 1234 + 1235 +{{info}} 1236 +**AT Command: AT+PNACKMD** 1237 +{{/info}} 1238 + 1239 +(% border="1" style="background-color:#ffffcc; color:green; width:536.222px" %) 1240 +|=(% colspan="3" style="width: 533px;" %)**AT+PNACKMD** 1241 +|(% style="width:160px" %)**Command Example**|(% style="width:263px" %)**Function**|(% style="width:109px" %)**Response** 1242 +|(% 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((( 1243 +OK 1244 +))) 1245 +|(% style="width:160px" %)**AT+PNACKMD=0**|(% style="width:263px" %)off request the server to send an ACK|(% style="width:109px" %)((( 1246 +0 1247 + 1248 +OK 1249 +))) 1250 + 1251 +== 7.27 Adjust network rejoining interval == 1252 + 1253 +{{info}} 1254 +**AT Command: AT+RJTDC** 1255 +{{/info}} 1256 + 1257 +(% border="1" style="background-color:#ffffcc; color:green; width:727.222px" %) 1258 +|=(% colspan="3" style="width: 724px;" %)AT+RJTDC 1259 +|(% style="width:165px" %)**Command Example**|(% style="width:227px" %)**Function**|(% style="width:329px" %)**Response** 1260 +|(% style="width:165px" %)AT+RJTDC=?|(% style="width:227px" %)Show the ReJoin data transmission interval in min|(% style="width:329px" %)30000((( 1261 +OK 1262 + 1263 +the interval is 30000ms = 30s 1264 +))) 1265 +|(% style="width:165px" %)AT+RJTDC=60000|(% style="width:227px" %)Set the ReJoin data transmission interval in min|(% style="width:329px" %)OK((( 1266 +Set the ReJoin data transmission interval to 60000ms = 60 seconds 1267 +))) 1268 + 1269 +{{info}} 1270 +**Downlink Command: 0x26** 1271 +{{/info}} 1272 + 1273 +Format: Command Code (0x26) followed by 2 bytes mode value. 1274 + 1275 +If the downlink payload=26000A, it means set end node to use confirm mode, while type code is 26. 1276 + 1277 +* Example 1: Downlink Payload: 26000A ~/~/ Set AT+RJTDC=10 1278 +* Example 2: Downlink Payload: 260002 ~/~/ Set AT+RJTDC=2 1279 + 1103 1103 = 8. AT Commands Combination = 1104 1104 1105 1105 == 8.1 Set a fix RX2DR for downlink window == ... ... @@ -1118,3 +1118,4 @@ 1118 1118 * AT+ADR=0 [[Reference>>||anchor="H7.1AdaptiveDataRate"]] 1119 1119 * AT+DR=5 [[Reference>>||anchor="H7.4DataRate"]] 1120 1120 * AT+TXP=0 [[Reference>>||anchor="H7.14TransmitPower"]] 1298 +~)~)~)