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 ... ... @@ -99,10 +99,13 @@ 99 99 ))) 100 100 ))) 101 101 105 + 102 102 = 4. System Management Commands = 103 103 108 + 104 104 == 4.1 Change Uplink Interval == 105 105 111 + 106 106 Feature: Change LoRaWAN End Node Transmit Interval. 107 107 108 108 (% class="box infomessage" %) ... ... @@ -137,6 +137,8 @@ 137 137 * **Example 1**: Downlink Payload:** 0100001E** ~/~/ Set Transmit Interval (TDC) = 30 seconds 138 138 * **Example 2**: Downlink Payload:** 0100003C** ~/~/ Set Transmit Interval (TDC) = 60 seconds 139 139 146 + 147 + 140 140 == 4.2 Reboot End Node == 141 141 142 142 Feature: Reboot End Node to perform a new OTAA or ABP Join. ... ... @@ -422,6 +422,8 @@ 422 422 423 423 == 6.1 Confirm Mode == 424 424 433 +=== AT+CFM command before DR-LWS007 software stack === 434 + 425 425 Feature: Get or Set the confirmation mode (0-1). 426 426 427 427 {{info}} ... ... @@ -446,6 +446,54 @@ 446 446 * Example 1: Downlink Payload: 0501 ~/~/ Set AT+CFM=1 447 447 * Example 2: Downlink Payload: 0500 ~/~/ Set AT+CFM=0 448 448 459 +=== AT+CFM command since DR-LWS007 software stack === 460 + 461 +{{info}} 462 +**AT Command: AT+CFM** 463 +{{/info}} 464 + 465 +(% border="1" style="background-color:#ffffcc; color:green; width:710.222px" %) 466 +|=(% colspan="3" style="width: 707px;" %)AT+CFM 467 +|(% style="width:160px" %)**Command Example**|(% style="width:198px" %)**Function**|(% style="width:349px" %)**Response** 468 +|(% style="width:160px" %)((( 469 +AT+CFM=1,0,0 470 + 471 +value1 472 +)))|(% style="width:198px" %)confirmed uplink|(% style="width:349px" %)((( 473 +1 474 + 475 +OK 476 +))) 477 +|(% style="width:160px" %)((( 478 +AT+CFM=0,?,0 479 + 480 +value2 481 +)))|(% style="width:198px" %)set max retry , range: 0 ~~ 7|(% style="width:349px" %)((( 482 +0~~7 483 + 484 +OK 485 +))) 486 +|(% style="width:160px" %)((( 487 +AT+CFM=0,0,1 488 + 489 +value3 490 +)))|(% style="width:198px" %)uplink fcnt increase by 1 for each retry|(% style="width:349px" %)((( 491 +1 492 + 493 +OK 494 +))) 495 + 496 +{{info}} 497 +**Downlink Command: 0x05** 498 +{{/info}} 499 + 500 +Format: Command Code (0x05) followed by 2 bytes mode value. 501 + 502 +If the downlink payload=05010101, it means set end node to use confirm mode, while type code is 05. 503 + 504 +* Example 1: Downlink Payload: 05010101 ~/~/ Set AT+CFM=1,1,1 505 +* Example 2: Downlink Payload: 05000700 ~/~/ Set AT+CFM=0,7,0 506 + 449 449 == 6.2 Confirm Status == 450 450 451 451 Feature: Get confirmation status of the last AT+SEND (0-1). ... ... @@ -503,7 +503,7 @@ 503 503 504 504 If the downlink payload=2000, it means set the Network Join Mode, while type code is 20. 505 505 506 -* **Example 1: **Downlink Payload: **2000** ~/~/ Set AT+NJM= O564 +* **Example 1: **Downlink Payload: **2000** ~/~/ Set AT+NJM=0 507 507 * **Example 2:** Downlink Payload: **2001** ~/~/ Set AT+NJM=1 508 508 509 509 == 6.5 LoRa® Network Join Status == ... ... @@ -759,8 +759,10 @@ 759 759 760 760 == 7.9 Public Network Mode == 761 761 762 -Feature: Get or Set the public network mode. (0: off, 1: on) 820 +Feature: Get or Set the public network mode. (0: off, 1: on). A Public LoRaWAN network use 0x34 as syncword. Default Settings; PNM=1 763 763 822 +Notice: If user build their own LoRaWAN server but still use syncword=0x34, this is still considered a public LoRaWAN network 823 + 764 764 {{info}} 765 765 **AT Command:AT+PNM** 766 766 {{/info}} ... ... @@ -771,11 +771,16 @@ 771 771 |(% style="width:166px" %)AT+PNM=?|(% style="width:225px" %)Get the public network mode.|(% style="width:272px" %)1((( 772 772 OK 773 773 ))) 774 -|(% style="width:166px" %)AT+PNM=1|(% style="width:225px" %)Set the public network mode.|(% style="width:272px" %)(System will write new value to PNM)((( 834 +|(% style="width:166px" %)AT+PNM=1|(% style="width:225px" %)((( 835 +Set the public network mode. 836 + 837 +Set syncword=0x34 838 +)))|(% style="width:272px" %)(System will write new value to PNM)((( 775 775 OK 776 776 777 777 778 778 ))) 843 +|(% style="width:166px" %)AT+PNM=0|(% style="width:225px" %)Set to use private network autoset syncword=0x12|(% style="width:272px" %) 779 779 780 780 == 7.10 Receive Delay1 == 781 781 ... ... @@ -1088,6 +1088,129 @@ 1088 1088 * **Example 1**: Downlink Payload: **2101** ~/~/ set packet receiving response level to 1 1089 1089 * **Example 2**: Downlink Payload: **2102** ~/~/ set packet receiving response level to 2 1090 1090 1156 +== 7.24 Controls NBTrans in unconfirmed uplink mode(LWS007 NBTrans:Set retransmission packets) == 1157 + 1158 +{{info}} 1159 +**AT Command: AT+SETMAXNBTRANS ** 1160 +{{/info}} 1161 + 1162 +(% border="1" style="background-color:#ffffcc; color:green; width:536.222px" %) 1163 +|=(% colspan="3" style="width: 533px;" %)AT+**SETMAXNBTRANS** 1164 +|(% style="width:160px" %)**Command Example**|(% style="width:263px" %)**Function**|(% style="width:109px" %)**Response** 1165 +|(% style="width:160px" %)**AT+SETMAXNBTRANS=1,0**|(% style="width:263px" %)Value1: set the maximum NBTrans.|(% style="width:109px" %)1((( 1166 +OK 1167 +))) 1168 +|(% 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" %)((( 1169 +1 1170 + 1171 +OK 1172 +))) 1173 + 1174 +{{info}} 1175 +**Downlink Command: 0x33** 1176 +{{/info}} 1177 + 1178 +Format: Command Code (0x33) followed by 2 bytes mode value. 1179 + 1180 +If the downlink payload=330100, it means set end node to use confirm mode, while type code is 33. 1181 + 1182 +* Example 1: Downlink Payload: 330100 ~/~/ Set AT+SETMAXNBTRANS=1,0 1183 +* Example 2: Downlink Payload: 330201 ~/~/ Set AT+SETMAXNBTRANS=2,1 1184 + 1185 +== 7.25 Device offline rejoining (LWS007) == 1186 + 1187 +{{info}} 1188 +**AT Command: AT+DDETECT** 1189 +{{/info}} 1190 + 1191 +(% border="1" style="background-color:#ffffcc; color:green; width:710.222px" %) 1192 +|=(% colspan="3" style="width: 707px;" %)AT+**DDETECT** 1193 +|(% style="width:160px" %)**Command Example**|(% style="width:198px" %)**Function**|(% style="width:349px" %)**Response** 1194 +|(% style="width:160px" %)((( 1195 +AT+DDETECT=1,1440,2880 1196 + 1197 +value1 1198 +)))|(% style="width:198px" %)Enable online detect|(% style="width:349px" %)((( 1199 +1 1200 + 1201 +OK 1202 +))) 1203 +|(% style="width:160px" %)((( 1204 +AT+DDETECT=1,?,2880 1205 + 1206 +value2 1207 +)))|(% style="width:198px" %)Online detection packet sending time|(% style="width:349px" %)((( 1208 + 1209 + 1210 +OK 1211 +))) 1212 +|(% style="width:160px" %)((( 1213 +AT+DDETECT=1,1440,? 1214 + 1215 +value3 1216 +)))|(% style="width:198px" %)Process rejoin|(% style="width:349px" %)((( 1217 + 1218 + 1219 +OK 1220 +))) 1221 + 1222 +{{info}} 1223 +**Downlink Command: 0x33** 1224 +{{/info}} 1225 + 1226 +Format: Command Code (0x32) followed by 2 bytes mode value. 1227 + 1228 +If the downlink payload=320105A00B40, it means set end node to use confirm mode, while type code is 33. 1229 + 1230 +* Example 1: Downlink Payload: 320105A00B40 ~/~/ Set AT+DDETECT=1,1440,2880 1231 + 1232 +== 7.26 Request the server to send an ACK == 1233 + 1234 +{{info}} 1235 +**AT Command: AT+PNACKMD** 1236 +{{/info}} 1237 + 1238 +(% border="1" style="background-color:#ffffcc; color:green; width:536.222px" %) 1239 +|=(% colspan="3" style="width: 533px;" %)**AT+PNACKMD** 1240 +|(% style="width:160px" %)**Command Example**|(% style="width:263px" %)**Function**|(% style="width:109px" %)**Response** 1241 +|(% 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((( 1242 +OK 1243 +))) 1244 +|(% style="width:160px" %)**AT+PNACKMD=0**|(% style="width:263px" %)off request the server to send an ACK|(% style="width:109px" %)((( 1245 +0 1246 + 1247 +OK 1248 +))) 1249 + 1250 +== 7.27 Adjust network rejoining interval == 1251 + 1252 +{{info}} 1253 +**AT Command: AT+RJTDC** 1254 +{{/info}} 1255 + 1256 +(% border="1" style="background-color:#ffffcc; color:green; width:727.222px" %) 1257 +|=(% colspan="3" style="width: 724px;" %)AT+RJTDC 1258 +|(% style="width:165px" %)**Command Example**|(% style="width:227px" %)**Function**|(% style="width:329px" %)**Response** 1259 +|(% style="width:165px" %)AT+RJTDC=?|(% style="width:227px" %)Show the ReJoin data transmission interval in min|(% style="width:329px" %)30000((( 1260 +OK 1261 + 1262 +the interval is 30000ms = 30s 1263 +))) 1264 +|(% style="width:165px" %)AT+RJTDC=60000|(% style="width:227px" %)Set the ReJoin data transmission interval in min|(% style="width:329px" %)OK((( 1265 +Set the ReJoin data transmission interval to 60000ms = 60 seconds 1266 +))) 1267 + 1268 +{{info}} 1269 +**Downlink Command: 0x26** 1270 +{{/info}} 1271 + 1272 +Format: Command Code (0x26) followed by 2 bytes mode value. 1273 + 1274 +If the downlink payload=26000A, it means set end node to use confirm mode, while type code is 26. 1275 + 1276 +* Example 1: Downlink Payload: 26000A ~/~/ Set AT+RJTDC=10 1277 +* Example 2: Downlink Payload: 260002 ~/~/ Set AT+RJTDC=2 1278 + 1091 1091 = 8. AT Commands Combination = 1092 1092 1093 1093 == 8.1 Set a fix RX2DR for downlink window == ... ... @@ -1106,3 +1106,4 @@ 1106 1106 * AT+ADR=0 [[Reference>>||anchor="H7.1AdaptiveDataRate"]] 1107 1107 * AT+DR=5 [[Reference>>||anchor="H7.4DataRate"]] 1108 1108 * AT+TXP=0 [[Reference>>||anchor="H7.14TransmitPower"]] 1297 +~)~)~)