Changes for page End Device AT Commands and Downlink Command
Last modified by Mengting Qiu on 2025/07/01 15:53
From version 80.1
edited by Mengting Qiu
on 2025/06/30 10:59
on 2025/06/30 10:59
Change comment:
There is no comment for this version
Summary
-
Page properties (2 modified, 0 added, 0 removed)
-
Attachments (0 modified, 0 added, 8 removed)
Details
- Page properties
-
- Author
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. ting1 +XWiki.Xiaoling - Content
-
... ... @@ -1,254 +1,150 @@ 1 - **Table of** **Contents:**1 +Contens 2 2 3 3 {{toc/}} 4 4 5 5 6 - 7 7 = 1. Introduction = 8 8 9 - 10 10 Dragino LoRaWAN End Node support two types of AT Commands and Downlink Commands: 11 11 12 -* (% style="color:blue" %)**Common Commands:** (%%) They should be available for each sensor, such as: change uplink interval, reset device. 10 +* **Common Commands:** They should be available for each sensor, such as: change uplink interval, reset device. 11 +* **Sensor Related Commands:** Only for special sensor, such as control relay, poll RS485 device. 13 13 14 -* (% style="color:blue" %)**Sensor Related Commands:** (%%) Only for special sensor, such as control relay, poll RS485 device. 15 - 16 -((( 17 17 **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.** 18 - )))14 + 19 19 20 - 21 - 22 22 = 2. How to use AT Commands or Downlink command = 23 23 18 +* 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/]] 19 +* 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: 20 +** Use HEX format to send a downlink: [[TTN v3>>url:https://wiki.dragino.com/index.php/Notes_for_TTN#Send_Downlink_message]] 21 +** Use Base64 format to send a downlink: [[Chirpstack>>url:https://wiki.dragino.com/index.php/Notes_for_ChirpStack#Downlink]]. 22 +** See use note for more serves [[Servers Note>>url:https://wiki.dragino.com/index.php/Main_Page#Use_Note_for_Server]] 24 24 25 -* **AT Command** : See Devices User Manual for how to connect to device via USB TTL adapter and use. The user manual can be found in each product page of **[[Dragino Products User Manual>>http://wiki.dragino.com/xwiki/bin/view/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/]]**. 26 - 27 -* **LoRaWAN Downlink Command**: The gateway transfer downlink command in HEX format. This page shows the Downlink Command In HEX format. Please note some LoRaWAN servers use base64 as downlink code so user need to convert HEX to Base64 and use. Below are references for how to use downlink command: 28 -** Use HEX format to send a downlink: [[TTN v3>>Notes for TTN]] 29 -** 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]]? 30 -** See use note for more serves [[Servers Note>>doc:Main.WebHome]](IoT LoRaWAN Server) 31 - 32 -(% style="display:none" %) (%%) 33 - 34 34 = 3. Support End Node and firmware version = 35 35 36 - 37 -Dragino STM32 base hardware Firmware / LoRaWAN stack list 38 - 39 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:966px" %) 40 -|(% style="background-color:#4f81bd; color:white; width:187px" %)**Model**|(% style="background-color:#4f81bd; color:white; width:330px" %)**Description**|(% style="background-color:#4f81bd; color:white; width:445px" %)**Firmware Version <~-~-> Stack Version** 41 -|(% style="width:187px" %)((( 42 -[[LSN50-v1>>url:http://www.dragino.com/products/lora-lorawan-end-node/item/128-lsn50.html]], [[LSN50-V2>>url:http://www.dragino.com/products/lora-lorawan-end-node/item/155-lsn50-v2.html]], 43 -)))|(% style="width:330px" %)((( 44 -Open Source Generic LoRaWAN Sensor Node 45 -)))|(% style="width:445px" %)((( 46 -((( 47 -LSN50 v1.6.0 <~-~-> DR-LWS-003; 48 -))) 49 - 50 -((( 51 -((( 26 +(% border="1" style="background-color:#ffffcc; color:green" %) 27 +|=(% colspan="3" %) Dragino STM32 base hardware Firmware / LoRaWAN stack list 28 +|**Model**|**Description**|**Firmware Version <~-~-> Stack Version** 29 +|[[LSN50-v1>>url:http://www.dragino.com/products/lora-lorawan-end-node/item/128-lsn50.html]], [[LSN50-V2>>url:http://www.dragino.com/products/lora-lorawan-end-node/item/155-lsn50-v2.html]],|Open Source Generic LoRaWAN Sensor Node|LSN50 v1.6.0 <~-~-> DR-LWS-003;((( 52 52 LSN50 v1.7.0 <~-~-> DR-LWS-005; ~-~-> Support since this version 53 53 ))) 54 -))) 55 -))) 56 -|(% style="width:187px" %)((( 57 -[[LGT92>>url:http://www.dragino.com/products/lora-lorawan-end-node/item/142-lgt-92.html]], 58 -)))|(% style="width:330px" %)((( 59 -LoRaWAN GPS Tracker 60 -)))|(% style="width:445px" %)((( 61 -((( 62 -LGT92 v1.6.3 <~-~-> DR-LWS-003; 63 -))) 64 - 65 -((( 66 -((( 32 +|[[LGT92>>url:http://www.dragino.com/products/lora-lorawan-end-node/item/142-lgt-92.html]],|LoRaWAN GPS Tracker|LGT92 v1.6.3 <~-~-> DR-LWS-003;((( 67 67 LGT92 v1.6.4 <~-~-> DR-LWS-005;~-~-> Support since this version 68 68 ))) 69 -))) 70 -))) 71 -|(% style="width:187px" %)((( 72 -[[LBT1>>url:http://www.dragino.com/products/lora-lorawan-end-node/item/165-lbt1.html]], 73 -)))|(% style="width:330px" %)((( 74 -LoRaWAN BLE Indoor Tracker 75 -)))|(% style="width:445px" %)((( 76 -LBT1 v1.0 <~-~-> DR-LWS-005; 77 -))) 78 -|(% style="width:187px" %)((( 79 -[[RS485-LN>>url:http://www.dragino.com/products/lora-lorawan-end-node/item/154-rs485-ln.html]], 80 -)))|(% style="width:330px" %)((( 81 -LoRaWAN RS485 Modbus Converter 82 -)))|(% style="width:445px" %)((( 83 -RS485-LN v1.3 <~-~-> DR-LWS-005; 84 -))) 85 -|(% style="width:187px" %)((( 86 -[[LHT65>>url:http://www.dragino.com/products/lora-lorawan-end-node/item/151-lht65.html]], 87 -)))|(% style="width:330px" %)((( 88 -LoRaWAN Temperature & Humidity Sensor 89 -)))|(% style="width:445px" %)((( 90 -((( 91 -LHT65 v1.7 <~-~-> DR-LWS-003; 92 -))) 93 - 94 -((( 95 -((( 35 +|[[LBT1>>url:http://www.dragino.com/products/lora-lorawan-end-node/item/165-lbt1.html]],|LoRaWAN BLE Indoor Tracker|LBT1 v1.0 <~-~-> DR-LWS-005; 36 +|[[RS485-LN>>url:http://www.dragino.com/products/lora-lorawan-end-node/item/154-rs485-ln.html]],|LoRaWAN RS485 Modbus Converter|RS485-LN v1.3 <~-~-> DR-LWS-005; 37 +|[[LHT65>>url:http://www.dragino.com/products/lora-lorawan-end-node/item/151-lht65.html]],|LoRaWAN Temperature & Humidity Sensor|LHT65 v1.7 <~-~-> DR-LWS-003;((( 96 96 LHT65 v1.8.0 <~-~-> DR-LWS-005;~-~-> Support since this version 97 97 ))) 98 -))) 99 -))) 100 100 101 -(% style="display:none" %) (%%) 102 - 103 103 = 4. System Management Commands = 104 104 105 105 == 4.1 Change Uplink Interval == 106 106 107 - 108 108 Feature: Change LoRaWAN End Node Transmit Interval. 109 109 47 +AT Command: AT+TDC 110 110 111 -(% style="color:blue" %)**AT Command: AT+TDC** 112 - 113 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:727.222px" %) 114 -|(% style="background-color:#4f81bd; color:white; width:165px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:227px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:329px" %)**Response** 115 -|(% style="width:165px" %)AT+TDC=?|(% style="width:227px" %)Show current transmit Interval|(% style="width:329px" %)30000((( 49 +|=(% colspan="3" %)AT+TDC 50 +|**Command Example**|**Function**|**Response** 51 +|AT+TDC=?|Show current transmit Interval|30000((( 116 116 OK 117 117 118 118 the interval is 30000ms = 30s 119 119 ))) 120 -| (% style="width:165px" %)AT+TDC=60000|(% style="width:227px" %)Set Transmit Interval|(% style="width:329px" %)OK(((56 +|AT+TDC=60000|Set Transmit Interval|OK((( 121 121 Set transmit interval to 60000ms = 60 seconds 122 122 ))) 123 123 124 -((( 125 -(% style="color:blue" %)**Downlink Command: 0x01** 60 +Downlink Command: 0x01 126 126 127 127 Format: Command Code (0x01) followed by 3 bytes time value. 128 -))) 129 129 130 -((( 131 -If the downlink payload=0100003C, it means set the END Node's Transmit Interval to 0x00003C=60(S), while type code is 01. 132 -))) 64 +If the downlink payload=0100003C, it means set the END Node’s Transmit Interval to 0x00003C=60(S), while type code is 01. 133 133 134 -* **Example 1**: Downlink Payload:** 0100001E** ~/~/ Set Transmit Interval (TDC) = 30 seconds 66 +* Example 1: Downlink Payload: 0100001E ~/~/ Set Transmit Interval (TDC) = 30 seconds 67 +* Example 2: Downlink Payload: 0100003C ~/~/ Set Transmit Interval (TDC) = 60 seconds 135 135 136 -* **Example 2**: Downlink Payload:** 0100003C** ~/~/ Set Transmit Interval (TDC) = 60 seconds 137 - 138 -(% style="display:none" %) (%%) 139 - 140 140 == 4.2 Reboot End Node == 141 141 142 - 143 143 Feature: Reboot End Node to perform a new OTAA or ABP Join. 144 144 73 +AT Command: ATZ 145 145 146 -(% style="color:blue" %)**AT Command: ATZ ~/~/ **(%%)Trig a reset of the MCU 75 +|=(% colspan="3" %)ATZ: Trig a reset of the MCU 76 +|**Command Example**|**Function**|**Response** 77 +|ATZ|Reset MCU|Device reset and show booting info 147 147 148 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:546px" %) 149 -|(% style="background-color:#4f81bd; color:white; width:157px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:92px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:294px" %)**Response** 150 -|(% style="width:157px" %)ATZ|(% style="width:92px" %)Reset MCU|(% style="width:294px" %)((( 151 -Device reset and show booting info 152 - 153 -LSN50 Device/LoRa ST Module 154 - 79 +{{{LSN50 Device/LoRa ST Module 155 155 Image Version: XX 156 - 157 157 Frequency Band: XX 158 - 159 159 DevEui= XX XX XX XX XX XX XX XX 160 160 161 161 <followed by the Tx and Rx information> 162 - )))85 +}}} 163 163 164 -(% style="color:blue" %)**Downlink Command: 0x04** 165 165 166 -((( 88 +Downlink Command: 0x04 89 + 167 167 Format: Command Code (0x04) followed by FF. 168 -))) 169 169 170 -((( 171 -If the downlink payload=**04FF**, the end node will reboot. 172 -))) 92 +If the downlink payload=04FF, the end node will reboot. 173 173 174 - 175 175 == 4.3 Reset to factory Default == 176 176 177 - 178 178 Feature: Reset the parameters to Factory Default, factory default value depends on the firmware settings, the OTAA and ABP keys will reserve after this command. 179 179 98 +AT Command: AT+FDR 180 180 181 -(% style="color:blue" %)**AT Command: AT+FDR ~/~/ **(%%)Reset to factory default 100 +|=(% colspan="3" %)Reset to factory default 101 +|**Command Example**|**Function**|**Response** 102 +|AT+FDR|Reset to factory default|Device reset to factory default parameters and show booting info 182 182 183 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:789px" %) 184 -|(% style="background-color:#4f81bd; color:white; width:154px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:175px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:456px" %)**Response** 185 -|(% style="width:154px" %)AT+FDR|(% style="width:175px" %)Reset to factory default|(% style="width:456px" %)((( 186 -Device reset to factory default parameters and show booting info 187 - 188 -LSN50 Device/LoRa ST Module 189 - 104 +{{{LSN50 Device/LoRa ST Module 190 190 Image Version: XX 191 - 192 192 Frequency Band: XX 193 - 194 194 DevEui= XX XX XX XX XX XX XX XX 195 - 196 196 Please set the parameters or reset Device to apply change 197 - )))109 +}}} 198 198 199 -(% style="color:blue" %)**Downlink Command: 0x04** 200 200 201 -((( 112 +Downlink Command: 0x04 113 + 202 202 Format: Command Code (0x04) followed by FE. 203 -))) 204 204 205 -((( 206 -If the downlink payload=**04FE**, Reset Parameters to Factory Default, Keys Reserve. 207 -))) 116 +If the downlink payload=04FE, Reset Parameters to Factory Default, Keys Reserve. 208 208 209 209 210 210 == 4.4 Show Firmware Version == 211 211 212 - 213 213 Feature: Show firmware version. No downlink command yet. 214 214 123 +AT Command: AT+VER 215 215 216 -(% style="color:blue" %)**AT Command: AT+VER ~/~/ **(%%)Image Version and Frequency Band 125 +|=(% colspan="3" %)AT+VER: Image Version and Frequency Band 126 +|**Command Example**|**Function**|**Response** 127 +|AT+VER=?|Show Image version and Frequency Band| 217 217 218 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:542px" %) 219 -|(% style="background-color:#4f81bd; color:white; width:157px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:295px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:86px" %)**Response** 220 -|(% style="width:157px" %)AT+VER=?|(% style="width:295px" %)Show Image version and Frequency Band|(% style="width:86px" %)((( 221 -1.3 EU868 222 - 129 +{{{1.3 EU868 223 223 OK 224 - )))131 +}}} 225 225 226 -(% style="color:blue" %)**Downlink Command: 0x26 (Valid in 006 stack)** 227 227 228 -((( 229 -Format: Command Code (0x26) followed by 1 byte. 230 -))) 134 +Downlink Command: 0x26 (Valid in 006 stack) 231 231 232 -((( 233 -If the downlink payload=**2601, **Device will reply with firmware version info, device info. frequency band info. detail please check device user manual. Total 5 bytes Example: If device is of firmware version 1.1.0 Upload: xx ~-~- yy ~-~- zz ~-~- 110 total 5 bytes( FPort= 5 usually). 234 -))) 136 +Downlink Format: 0x26 235 235 236 -((( 237 - 138 +Device will reply with firmware version info, device info. frequency band info. detail please check device user manual. Total 5 bytes Example: If device is of firmware version 1.1.0 Upload: xx ~-~- yy ~-~- zz ~-~- 110 total 5 bytes 238 238 239 -(% style="color:#037691" %)**xx: Software Type:** 240 -))) 140 +xx: Software Type: 241 241 242 242 * 0x00 01: LGT92 Version 243 243 * 0x00 02: LBT1 244 244 * 0x00 03: LSE01/LDDS75/LDDS20/LSPH01/LLMS01/LSNPK01 245 245 246 -((( 247 - 146 +yy: Frequency Band: 248 248 249 -(% style="color:#037691" %)**yy: Frequency Band:** 250 -))) 251 - 252 252 * 0x01: EU868 253 253 * 0x02: US915 254 254 * 0x03: IN865 ... ... @@ -256,690 +256,505 @@ 256 256 * 0x05: KZ865 257 257 * 0x06: RU864 258 258 * 0x07: AS923 259 -* 0x08: AS923- 2260 -* 0x09: AS923- 3261 -* 0xa0: AS923- 4155 +* 0x08: AS923-1 156 +* 0x09: AS923-2 157 +* 0xa0: AS923-3 262 262 263 -((( 264 - 159 +zz: Subband 265 265 266 -(% style="color:#037691" %)**zz: Subband** 267 -))) 268 - 269 269 firmware version: v1.1.0 ~-~-> 110 270 270 271 271 272 272 == 4.5 Show System Configure == 273 273 274 - 275 275 Feature: Show All configure. No downlink command yet. 276 276 168 +AT Command: AT+CFG 277 277 278 -(% style="color:blue" %)**AT Command: AT+CFG ~/~/ **(%%)Print all configurations 170 +|=(% colspan="3" %)AT+CFG: Print all configurations 171 +|**Command Example**|**Function**|**Response** 172 +|AT+CFG|Show all configures| 279 279 280 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:599.222px" %) 281 -|(% style="background-color:#4f81bd; color:white; width:160px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:154px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:280px" %)**Response** 282 -|(% style="width:160px" %)AT+CFG|(% style="width:154px" %)Show all configures|(% style="width:280px" %)((( 283 -AT+DEUI = XX XX XX XX XX XX XX XX 174 +{{{AT+DEUI = XX XX XX XX XX XX XX XX 284 284 AT+DADDR=XXXXXXXX 285 285 ………. 286 286 AT+RX2WTO=X 287 287 AT+CHS=868100000 288 288 OK 289 - )))180 +}}} 290 290 291 -(% style="display:none" %) (%%) 292 292 293 293 = 5. Keys, IDs and EUIs management = 294 294 295 295 == 5.1 Application EUI == 296 296 297 - 298 298 Feature: Get or Set the Application EUI. 299 299 189 +AT Command: AT+APPEUI 300 300 301 -(% style="color:blue" %)**AT Command: AT+APPEUI** 302 - 303 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:643px" %) 304 -|(% style="background-color:#4f81bd; color:white; width:272px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:182px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:184px" %)**Response** 305 -|(% style="width:272px" %)AT+APPEUI=?|(% style="width:182px" %)Get the Application EUI|(% style="width:184px" %)00 b3 d5 00 00 00 00 00((( 191 +|=(% colspan="3" %)AT+APPEUI 192 +|**Command Example**|**Function**|**Response** 193 +|AT+APPEUI=?|Get the Application EUI|00 b3 d5 00 00 00 00 00((( 306 306 OK 307 307 ))) 308 -| (% style="width:272px" %)AT+APPEUI=00 b3 d5 7e f0 00 4d 34|(% style="width:182px" %)Set the Application EUI|(% style="width:184px" %)OK196 +|AT+APPEUI=00 b3 d5 7e f0 00 4d 34|Set the Application EUI|OK 309 309 310 -(% style="display:none" %) (%%) 311 - 312 312 == 5.2 Application Key == 313 313 314 - 315 315 Feature: Get or Set the Application Key. 316 316 202 +AT Command: AT+APPKEY 317 317 318 -(% style="color:blue" %)**AT Command: AT+APPKEY** 319 - 320 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:976.222px" %) 321 -|(% style="background-color:#4f81bd; color:white; width:441px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:180px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:350px" %)**Response** 322 -|(% style="width:441px" %)AT+APPKEY=?|(% style="width:180px" %)Get the Application Key|(% style="width:350px" %)00 35 55 55 22 23 55 53 43 24 23 42 34 35 35 35((( 204 +|=(% colspan="3" %)AT+APPKEY 205 +|**Command Example**|**Function**|**Response** 206 +|AT+APPKEY=?|Get the Application Key|00 35 55 55 22 23 55 53 43 24 23 42 34 35 35 35((( 323 323 OK 324 324 ))) 325 -| (% 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" %)OK209 +|AT+APPKEY=00 35 55 55 22 23 55 53 43 24 23 42 34 35 35 35|Set the Application Key.|OK 326 326 327 -(% style="display:none" %) (%%) 328 - 329 329 == 5.3 Application Session Key == 330 330 331 - 332 332 Feature: Get or Set the Application Session Key. 333 333 215 +AT Command: AT+APPSKEY 334 334 335 -(% style="color:blue" %)**AT Command: AT+APPSKEY** 336 - 337 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:1040.22px" %) 338 -|(% style="background-color:#4f81bd; color:white; width:451px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:231px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:354px" %)**Response** 339 -|(% style="width:451px" %)AT+APPSKEY=?|(% style="width:231px" %)Get the Application Session Key|(% style="width:354px" %)00 7d dc 73 33 d3 eb 9e 14 38 d5 a4 3e 62 5b e2((( 217 +|=(% colspan="3" %)AT+APPSKEY 218 +|**Command Example**|**Function**|**Response** 219 +|AT+APPSKEY=?|Get the Application Session Key|00 7d dc 73 33 d3 eb 9e 14 38 d5 a4 3e 62 5b e2((( 340 340 OK 341 341 ))) 342 -| (% style="width:451px" %)AT+APPSKEY=00 7d dc 73 33 d3 eb 9e 14 38 d5 a4 3e 62 5b e2|(% style="width:231px" %)Set the Application Session Key|(% style="width:354px" %)(While Error in format, return AT_PARAM_ERROR)(((222 +|AT+APPSKEY=00 7d dc 73 33 d3 eb 9e 14 38 d5 a4 3e 62 5b e2|Set the Application Session Key.|(While Error in format, return AT_PARAM_ERROR)((( 343 343 OK 344 344 ))) 345 345 346 -(% style="display:none" %) (%%) 347 - 348 348 == 5.4 Device Address == 349 349 350 - 351 351 Feature: Get or Set the Device Address. 352 352 230 +AT Command: AT+DADDR 353 353 354 -(% style="color:blue" %)**AT Command: AT+DADDR** 355 - 356 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:795.222px" %) 357 -|(% style="background-color:#4f81bd; color:white; width:192px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:241px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:359px" %)**Response** 358 -|(% style="width:192px" %)AT+DADDR=?|(% style="width:241px" %)Get the Application Session Key.|(% style="width:359px" %)(While Error in format, return AT_PARAM_ERROR)((( 232 +|=(% colspan="3" %)AT+DADDR 233 +|**Command Example**|**Function**|**Response** 234 +|AT+DADDR=?|Get the Application Session Key.|(While Error in format, return AT_PARAM_ERROR)((( 359 359 A8 40 41 FF 360 360 361 361 OK 362 362 ))) 363 -| (% style="width:192px" %)AT+DADDR=A8 40 41 FF|(% style="width:241px" %)Set the Application Session Key.|(% style="width:359px" %)OK239 +|AT+DADDR=A8 40 41 FF|Set the Application Session Key.|OK 364 364 365 -(% style="display:none" %) (%%) 366 - 367 367 == 5.5 Device EUI == 368 368 369 - 370 370 Feature: Get or Set the Device EUI. 371 371 245 +AT Command: AT+DEUI 372 372 373 -(% style="color:blue" %)**AT Command: AT+DEUI** 374 - 375 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:1035.22px" %) 376 -|(% style="background-color:#4f81bd; color:white; width:250px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:147px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:634px" %)**Response** 377 -|(% style="width:250px" %)AT+DEUI=?|(% style="width:147px" %)Get the Device EUI.|(% style="width:634px" %)00 44 34 22 33 45 55 55((( 247 +|=(% colspan="3" %)AT+DEUI 248 +|**Command Example**|**Function**|**Response** 249 +|AT+DEUI=?|Get the Device EUI.|00 44 34 22 33 45 55 55((( 378 378 OK 379 379 ))) 380 -| (% style="width:250px" %)AT+DEUI=A8 40 41 FF FF 12 34 56|(% style="width:147px" %)Set the Device EUI.|(% style="width:634px" %)(System will write new value to Device EUI,While Error in format, return AT_PARAM_ERROR)(((252 +|AT+DEUI=A8 40 41 FF FF 12 34 56|Set the Device EUI.|(System will write new value to Device EUI,While Error in format, return AT_PARAM_ERROR)((( 381 381 OK 382 382 ))) 383 383 384 -(% style="display:none" %) (%%) 385 - 386 386 == 5.6 Network ID == 387 387 388 - 389 389 Feature: Get or Set the Network ID.(You can enter this command change only after successful network connection) 390 390 260 +AT Command: AT+NWKID 391 391 392 -(% style="color:blue" %)**AT Command: AT+NWKID** 393 - 394 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:448.222px" %) 395 -|(% style="background-color:#4f81bd; color:white; width:191px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:153px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:101px" %)**Response** 396 -|(% style="width:191px" %)AT+NWKID=?|(% style="width:153px" %)Get the Network ID.|(% style="width:101px" %)a8 40 41 ff((( 262 +|=(% colspan="3" %)AT+NWKID 263 +|**Command Example**|**Function**|**Response** 264 +|AT+NWKID=?|Get the Network ID.|a8 40 41 ff((( 397 397 OK 398 398 ))) 399 -| (% style="width:191px" %)AT+NWKID=A8 40 41 FF|(% style="width:153px" %)Set the Network ID.|(% style="width:101px" %)OK267 +|AT+NWKID=A8 40 41 FF|Set the Network ID.|OK 400 400 401 -(% style="display:none" %) (%%) 402 - 403 403 == 5.7 Network Session Key == 404 404 405 - 406 406 Feature: Get or Set the Network Session Key 407 407 273 +AT Command: AT+NWKSKEY 408 408 409 -(% style="color:blue" %)**AT Command: AT+NWKSKEY** 410 - 411 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:1017.22px" %) 412 -|(% style="background-color:#4f81bd; color:white; width:455px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:215px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:343px" %)**Response** 413 -|(% style="width:455px" %)AT+NWKSKEY=?|(% style="width:215px" %)Get the Network Session Key.|(% style="width:343px" %)00 4f 19 25 52 ce 97 09 d7 fa 84 71 db 51 02 92((( 275 +|=(% colspan="3" %)AT+NWKSKEY 276 +|**Command Example**|**Function**|**Response** 277 +|AT+NWKSKEY=?|Get the Network Session Key.|00 4f 19 25 52 ce 97 09 d7 fa 84 71 db 51 02 92((( 414 414 OK 415 415 ))) 416 -| (% 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" %)OK280 +|AT+NWKSKEY=A8 40 41 FF FF 12 34 56 00 01 02 04 05 06 06 07|Set the Network Session Key.|OK 417 417 418 -(% style="display:none" %) (%%) 419 - 420 420 = 6. Joining and sending date on LoRaWAN network = 421 421 422 422 == 6.1 Confirm Mode == 423 423 424 -=== 6.1.1 AT+CFM command before DR-LWS007 software stack === 425 - 426 - 427 427 Feature: Get or Set the confirmation mode (0-1). 428 428 288 +AT Command: AT+CFM 429 429 430 -(% style="color:blue" %)**AT Command: AT+CFM** 431 - 432 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:710.222px" %) 433 -|(% style="background-color:#4f81bd; color:white; width:155px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:205px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:346px" %)**Response** 434 -|(% style="width:155px" %)AT+CFM=?|(% style="width:205px" %)Get the confirmation mode|(% style="width:346px" %)0((( 290 +|=(% colspan="3" %)AT+CFM 291 +|**Command Example**|**Function**|**Response** 292 +|AT+CFM=?|Get the confirmation mode|0((( 435 435 OK 436 436 ))) 437 -| (% style="width:155px" %)AT+CFM=1|(% style="width:205px" %)Set the confirmation mode|(% style="width:346px" %)OK438 -| (% style="width:155px" %)AT+CFM=2|(% style="width:205px" %)Set the confirmation mode|(% style="width:346px" %)While Error in format, return AT_PARAM_ERROR295 +|AT+CFM=1|Set the confirmation mode|OK 296 +|AT+CFM=2|Set the confirmation mode|While Error in format, return AT_PARAM_ERROR 439 439 440 - (% style="color:blue" %)**Downlink Command: 0x05**298 +Downlink Command: 0x05 441 441 442 -Format: Command Code (0x05) followed by 1byte mode value.300 +Format: Command Code (0x05) followed by 2 bytes mode value. 443 443 444 444 If the downlink payload=0501, it means set end node to use confirm mode, while type code is 05. 445 445 446 -* **Example 1:** Downlink Payload: 0501 ~/~/ Set AT+CFM=1 304 +* Example 1: Downlink Payload: 0501 ~/~/ Set AT+CFM=1 305 +* Example 2: Downlink Payload: 0500 ~/~/ Set AT+CFM=0 447 447 448 -* **Example 2:** Downlink Payload: 0500 ~/~/ Set AT+CFM=0 449 - 450 -(% style="display:none" %) (%%) 451 - 452 -=== 6.1.2 AT+CFM command since DR-LWS007 software stack === 453 - 454 - 455 -(% style="color:blue" %)**AT Command: AT+CFM** 456 - 457 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:462px" %) 458 -|(% style="background-color:#4f81bd; color:white; width:160px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:198px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:100px" %)**Response** 459 -|(% style="width:160px" %)((( 460 -AT+CFM=1,0,0 461 - 462 -value1 463 -)))|(% style="width:198px" %)confirmed uplink|(% style="width:100px" %)((( 464 -1 465 - 466 -OK 467 -))) 468 -|(% style="width:160px" %)((( 469 -AT+CFM=0,?,0 470 - 471 -value2 472 -)))|(% style="width:198px" %)set max retry , range: 0 ~~ 7|(% style="width:100px" %)((( 473 -0~~7 474 - 475 -OK 476 -))) 477 -|(% style="width:160px" %)((( 478 -AT+CFM=0,0,1 479 - 480 -value3 481 -)))|(% style="width:198px" %)uplink fcnt increase by 1 for each retry|(% style="width:100px" %)((( 482 -1 483 - 484 -OK 485 -))) 486 - 487 -(% style="color:blue" %)**Downlink Command: 0x05** 488 - 489 -Format: Command Code (0x05) followed by 3 bytes mode value. 490 - 491 -If the downlink payload=05010101, it means set end node to use confirm mode, while type code is 05. 492 - 493 -* **Example 1:** Downlink Payload: 05010101 ~/~/ Set AT+CFM=1,1,1 494 - 495 -* **Example 2:** Downlink Payload: 05000700 ~/~/ Set AT+CFM=0,7,0 496 - 497 -(% style="display:none" %) (%%) 498 - 499 499 == 6.2 Confirm Status == 500 500 501 - 502 502 Feature: Get confirmation status of the last AT+SEND (0-1). 503 503 311 +AT Command: AT+CFS 504 504 505 -(% style="color:blue" %)**AT Command: AT+CFS** 506 - 507 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:463px" %) 508 -|(% style="background-color:#4f81bd; color:white; width:156px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:193px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:107px" %)**Response** 509 -|(% style="width:156px" %)AT+CFS=?|(% style="width:193px" %)Get confirmation status|(% style="width:107px" %)0((( 313 +|=(% colspan="3" %)AT+CFS 314 +|**Command Example**|**Function**|**Response** 315 +|AT+CFS=?|Get confirmation status|0((( 510 510 OK 511 511 ))) 512 512 513 -(% style="display:none" %) (%%) 514 - 515 515 == 6.3 Join LoRa® Network == 516 516 517 - 518 518 Feature: Join network. 519 519 323 +AT Command: AT+JOIN 520 520 521 -(% style="color:blue" %)**AT Command: AT+JOIN** 522 - 523 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:647.222px" %) 524 -|(% style="background-color:#4f81bd; color:white; width:163px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:147px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:334px" %)**Response** 525 -|(% style="width:163px" %)AT+JOIN ?|(% style="width:147px" %)Get imformation.|(% style="width:334px" %)AT+JOIN: Join network((( 325 +|=(% colspan="3" %)AT+JOIN 326 +|**Command Example**|**Function**|**Response** 327 +|AT+JOIN ?|Get imformation.|AT+JOIN: Join network((( 526 526 OK 329 + 527 527 While Error in format, return AT_BUSY_ERROR 528 528 ))) 529 529 530 -(% style="display:none" %) (%%) 531 - 532 532 == 6.4 LoRa® Network Join Mode == 533 533 534 - 535 535 Feature: Get or Set the Network Join Mode. (0: ABP, 1: OTAA). 536 536 337 +AT Command: AT+NJM 537 537 538 -(% style="color:blue" %)**AT Command: AT+NJM** 539 - 540 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:753.222px" %) 541 -|(% style="background-color:#4f81bd; color:white; width:162px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:227px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:361px" %)**Response** 542 -|(% style="width:162px" %)AT+NJM=?|(% style="width:227px" %)Get the Network Join Mode|(% style="width:361px" %)1((( 339 +|=(% colspan="3" %)AT+NJM 340 +|**Command Example**|**Function**|**Response** 341 +|AT+NJM=?|Get the Network Join Mode|1((( 543 543 OK 544 544 ))) 545 -| (% style="width:162px" %)AT+NJM=0|(% style="width:227px" %)Set the Network Join Mode|(% style="width:361px" %)OK546 -| (% style="width:162px" %)AT+NJM=2|(% style="width:227px" %)Set the Network Join Mode|(% style="width:361px" %)While Error in format, return AT_PARAM_ERROR344 +|AT+NJM=0|Set the Network Join Mode|OK 345 +|AT+NJM=2|Set the Network Join Mode|While Error in format, return AT_PARAM_ERROR 547 547 548 - (% style="color:blue" %)**Downlink Command: 0x20**347 +Downlink Command: 0x20 549 549 550 550 Format: Command Code (0x20) followed by 1 bytes mode value. 551 551 552 552 If the downlink payload=2000, it means set the Network Join Mode, while type code is 20. 553 553 554 -* **Example 1: **Downlink Payload: **2000 ** ~/~/ Set AT+NJM=0 353 +* Example 1: Downlink Payload: 2000 ~/~/ Set AT+NJM=O 354 +* Example 2: Downlink Payload: 2001 ~/~/ Set AT+NJM=1 555 555 556 -* **Example 2:** Downlink Payload: **2001** ~/~/ Set AT+NJM=1 557 - 558 -(% style="display:none" %) (%%) 559 - 560 560 == 6.5 LoRa® Network Join Status == 561 561 562 - 563 563 Feature: LoRa® Network Join Status. 564 564 360 +AT Command: AT+NJS 565 565 566 -(% style="color:blue" %)**AT Command: AT+NJS** 567 - 568 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:435px" %) 569 -|(% style="background-color:#4f81bd; color:white; width:169px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:164px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:97px" %)**Response** 570 -|(% style="width:169px" %)AT+NJS=?|(% style="width:164px" %)Get the join status.|(% style="width:97px" %)0((( 362 +|=(% colspan="3" %)AT+NJS 363 +|**Command Example**|**Function**|**Response** 364 +|AT+NJS=?|Get the join status.|0((( 571 571 OK 572 572 ))) 573 573 574 -(% style="display:none" %) (%%) 575 - 576 576 == 6.6 Print Last Received Data in Raw Format == 577 577 578 - 579 579 Feature: Print Last Received Data in Raw Format<port:data>. 580 580 372 +AT Command: AT+RECV 581 581 582 -(% style="color:blue" %)**AT Command: AT+RECV** 583 - 584 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:543px" %) 585 -|(% style="background-color:#4f81bd; color:white; width:161px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:272px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:104px" %)**Response** 586 -|(% style="width:161px" %)AT+RECV=?|(% style="width:272px" %)print last received data in raw format.|(% style="width:104px" %)0:((( 374 +|=(% colspan="3" %)AT+RECV 375 +|**Command Example**|**Function**|**Response** 376 +|AT+RECV=?|print last received data in raw format.|0:((( 587 587 OK 588 588 ))) 589 589 590 -(% style="display:none" %) (%%) 591 - 592 592 == 6.7 Print Last Received Data in Binary Format == 593 593 594 - 595 595 Feature: Print Last Received Data in Binary Format<port:data>. 596 596 384 +AT Command: AT+RECVB 597 597 598 -(% style="color:blue" %)**AT Command: AT+RECVB** 599 - 600 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:793.222px" %) 601 -|(% style="background-color:#4f81bd; color:white; width:173px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:497px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:120px" %)**Response** 602 -|(% style="width:173px" %)AT+RECVB=?|(% style="width:497px" %)print last received data in binary format (with hexadecimal values).|(% style="width:120px" %)2: 0010((( 386 +|=(% colspan="3" %)AT+RECVB 387 +|**Command Example**|**Function**|**Response** 388 +|AT+RECVB=?|print last received data in binary format (with hexadecimal values).|2: 0010((( 603 603 OK 604 604 ))) 605 605 606 - (%style="display:none"%)(%%)392 +== 6.8 Send Text Data == 607 607 608 -== 6.8 Send Text Data(Note: The format of this command of LA66 is subject to the manual) == 609 - 610 - 611 611 Feature: Send Text Data<port:data>. 612 612 396 +AT Command: AT+SEND 613 613 614 -(% style="color:blue" %)**AT Command: AT+SEND** 615 - 616 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:991.222px" %) 617 -|(% style="background-color:#4f81bd; color:white; width:201px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:340px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:446px" %)**Response** 618 -|(% style="width:201px" %)AT+SEND=12:hello world|(% style="width:340px" %)Send text data along with the application port.|(% style="width:446px" %)OK((( 398 +|=(% colspan="3" %)AT+SEND 399 +|**Command Example**|**Function**|**Response** 400 +|AT+SEND=12:hello world|Send text data along with the application port.|OK((( 619 619 While Error in format, return 402 + 620 620 AT_BUSY_ERROR/AT_BUSY_ERROR/AT_NO_NETWORK_JOINED 404 + 405 + 621 621 ))) 622 622 623 - (%style="display:none"%) (%%)408 +== 6.9 Send Hexadecimal Data == 624 624 625 -== 6.9 Send Hexadecimal Data(Note: The format of this command of LA66 is subject to the manual) == 626 - 627 - 628 628 Feature: Send hexadecimal data along with the application port. 629 629 412 +AT Command: AT+SENDB 630 630 631 -(% style="color:blue" %)**AT Command: AT+SENDB** 414 +|=(% colspan="3" %)AT+SENDB 415 +|**Command Example**|**Function**|**Response** 416 +|AT+SENDB=12:abcdef0123456789|Send hexadecimal data along with the application port.|OK 417 +|AT+SENDB=abcdef0123456789|Send hexadecimal data along with the application port.|While Error in format, return((( 418 +AT_PARAM_ERROR AT_BUSY_ERROR/AT_NO_NETWORK_JOINED 632 632 633 -(% border="1" cellspacing="4" style="width:974px" %) 634 -|(% style="background-color:#4f81bd; color:white; width:257px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:394px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:318px" %)**Response** 635 -|(% style="width:257px" %)AT+SENDB=12:abcdef0123456789|(% style="width:394px" %)Send hexadecimal data along with the application port.|(% style="width:318px" %)OK 636 -|(% style="width:257px" %)AT+SENDB=abcdef0123456789|(% style="width:394px" %)Send hexadecimal data along with the application port.|(% style="width:318px" %)While Error in format, return((( 637 -AT_PARAM_ERROR AT_BUSY_ERROR/AT_NO_NETWORK_JOINED 420 + 638 638 ))) 639 639 640 -(% style="display:none" %) (%%) 641 - 642 642 = 7. LoRaWAN network management = 643 643 644 644 == 7.1 Adaptive Data Rate == 645 645 646 - 647 647 Feature: Get or Set the Adaptive Data Rate setting. (0: off, 1: on). 648 648 649 649 650 - (% style="color:blue" %)**AT Command: AT+ADR**430 +AT Command: AT+ADR 651 651 652 -(% border="1"cellspacing="4" style="width:643px" %)653 -| (% style="background-color:#4f81bd; color:white; width:162px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:266px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:209px" %)**Response**654 -| (% style="width:162px" %)AT+ADR=?|(% style="width:266px" %)Get the Adaptive Data Rate setting.|(% style="width:209px" %)1(((432 +|=(% colspan="3" %)AT+ADR 433 +|**Command Example**|**Function**|**Response** 434 +|AT+ADR=?|Get the Adaptive Data Rate setting.|1((( 655 655 OK 656 656 ))) 657 -| (% style="width:162px" %)AT+ADR=0|(% style="width:266px" %)Set the Adaptive Data Rate setting.|(% style="width:209px" %)OK658 -| (% style="width:162px" %)AT+ADR=2|(% style="width:266px" %)Set the Adaptive Data Rate setting.|(% style="width:209px" %)While Error in format, return(((437 +|AT+ADR=0|Set the Adaptive Data Rate setting.|OK 438 +|AT+ADR=2|Set the Adaptive Data Rate setting.|While Error in format, return((( 659 659 AT_PARAM_ERROR 660 660 ))) 661 661 662 - (% style="color:blue" %)**Downlink Command: 0x22**442 +Downlink Command: 0x22 663 663 444 + 664 664 If the downlink payload=2201, it means setting the adaptive data rate to 1, while type code is 22. 665 665 666 -* **Example 1**: Downlink Payload: **2201** ~/~/ Set AT+ADR=1. 447 +* Example 1: Downlink Payload: 2201 ~/~/ Set AT+ADR=1. 448 +* Example 2: Downlink Payload: 2200FFFF ~/~/ Set AT+ADR=0. 667 667 668 -* **Example 2**: Downlink Payload: **2200FFFF** ~/~/ Set AT+ADR=0. 669 - 670 -(% style="display:none" %) (%%) 671 - 672 672 == 7.2 LoRa® Class == 673 673 674 - 675 675 Feature: Get or Set the Device Class(Currently only support class A, class C). 676 676 454 +AT Command:AT+CLASS 677 677 678 -(% style="color:blue" %)**AT Command: AT+CLASS** 679 - 680 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:428px" %) 681 -|(% style="background-color:#4f81bd; color:white; width:163px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:166px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:94px" %)**Response** 682 -|(% style="width:163px" %)AT+CLASS=?|(% style="width:166px" %)Get the Device Class.|(% style="width:94px" %)A((( 456 +|=(% colspan="3" %)AT+CLASS 457 +|**Command Example**|**Function**|**Response** 458 +|AT+CLASS=?|Get the Device Class.|A((( 683 683 OK 684 684 ))) 685 -| (% style="width:163px" %)AT+CLASS=C|(% style="width:166px" %)Set the Device Class.|(% style="width:94px" %)OK(((461 +|AT+CLASS=C|Set the Device Class.|OK((( 686 686 687 687 ))) 688 688 689 -(% style="display:none" %) 690 - 691 -(% style="color:red" %)**Notice:** 692 - 693 -* Run AT+FDR before running AT+CLASS=C 694 -* After change to Class=C, Before OTAA Join Successfule, the end node will still shows to use CLASS=A for OTAA Joined. It will use CLASS=C after OTAA Join Succeccful. 695 - 696 696 == 7.3 Duty Cycle Setting == 697 697 467 +Feature: Get or Set the ETSI Duty Cycle setting - 0=disable, 1=enable - Only for testing. 698 698 699 - Feature: Get or Set the ETSIDutyCycle setting** : 0**=disable, **1**=enable - Only for testing.469 +AT Command:AT+DCS 700 700 701 - 702 -(% style="color:blue" %)**AT Command: AT+DCS** 703 - 704 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:515.222px" %) 705 -|(% style="background-color:#4f81bd; color:white; width:165px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:239px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:107px" %)**Response** 706 -|(% style="width:165px" %)AT+DCS=?|(% style="width:239px" %)Get the ETSI Duty Cycle setting.|(% style="width:107px" %)1((( 471 +|=(% colspan="3" %)AT+DCS 472 +|**Command Example**|**Function**|**Response** 473 +|AT+DCS=?|Get the ETSI Duty Cycle setting.|1((( 707 707 OK 708 708 ))) 709 -| (% style="width:165px" %)AT+DCS=1|(% style="width:239px" %)Set the ETSI Duty Cycle setting.|(% style="width:107px" %)OK(((476 +|AT+DCS=1|Set the ETSI Duty Cycle setting.|OK((( 710 710 711 711 ))) 712 712 713 -(% style="display:none" %) (%%) 714 - 715 715 == 7.4 Data Rate == 716 716 482 +Feature: Get or Set the Data Rate. (0-7 corresponding to DR_X) . Note: while set Data Rate, please use set Adptive Data Rate, ADR=0 first. otherwise device will response to server's ADR command and change the DR to the setting from server 717 717 718 - Feature:Getor Set the Data Rate. (0-7 correspondingtoDR_X) .484 +AT Command: AT+DR 719 719 720 -(% style="color:red" %) 721 -**Notice:** 722 - 723 -* User need to set Adaptive Data Rate(ADR)=0 first. otherwise device will respond to server's ADR command and change the DR according to server auto-adjustment. 724 - 725 -* Data Rate specifies Spreading Factor. The mapping varies in different frequency bands. User can check this link for detail. [[rp2-1.0.3-lorawan-regional-parameters.pdf>>https://lora-alliance.org/resource_hub/rp2-1-0-3-lorawan-regional-parameters/]] 726 - 727 -(% style="color:blue" %)**AT Command: AT+DR** 728 - 729 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:409px" %) 730 -|(% style="background-color:#4f81bd; color:white; width:156px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:147px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:100px" %)**Response** 731 -|(% style="width:156px" %)AT+DR=?|(% style="width:147px" %)Get the Data Rate.|(% style="width:100px" %)5((( 486 +|=(% colspan="3" %)AT+DR 487 +|**Command Example**|**Function**|**Response** 488 +|AT+DR=?|Get the Data Rate.|5((( 732 732 OK 733 733 ))) 734 -| (% style="width:156px" %)AT+DR=2|(% style="width:147px" %)Set the Data Rate.|(% style="width:100px" %)OK(((491 +|AT+DR=2|Set the Data Rate.|OK((( 735 735 736 736 ))) 737 737 738 - (% style="color:blue" %)**Downlink Command: 0x2200aaFF**495 +Downlink Command: 0x2200aaFF 739 739 497 + 740 740 If the downlink payload=220001FF, it means setting the data rate to 1, while type code is 22 00 aa FF. 741 741 742 -* **Example 1**: Downlink Payload: **220001FF** ~/~/ Set AT+DR=1. 500 +* Example 1: Downlink Payload: 220001FF ~/~/ Set AT+DR=1. 501 +* Example 2: Downlink Payload: 220000FF ~/~/ Set AT+DR=0. 743 743 744 -* **Example 2**: Downlink Payload: **220000FF** ~/~/ Set AT+DR=0. 745 - 746 -(% style="display:none" %) (%%) 747 - 748 748 == 7.5 Frame Counter Downlink == 749 749 750 - 751 751 Feature: Get or Set the Frame Counter Downlink. 752 752 507 +AT Command:AT+FCD 753 753 754 -(% style="color:blue" %)**AT Command: AT+FCD** 755 - 756 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:693.222px" %) 757 -|(% style="background-color:#4f81bd; color:white; width:162px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:258px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:269px" %)**Response** 758 -|(% style="width:162px" %)AT+FCD=?|(% style="width:258px" %)Get the Frame Counter Downlink.|(% style="width:269px" %)0((( 509 +|=(% colspan="3" %)AT+FCD 510 +|**Command Example**|**Function**|**Response** 511 +|AT+FCD=?|Get the Frame Counter Downlink.|0((( 759 759 OK 760 760 ))) 761 -| (% style="width:162px" %)AT+FCD=10|(% style="width:258px" %)Set the Frame Counter Downlink.|(% style="width:269px" %)(System will write new value to FCD)(((514 +|AT+FCD=10|Set the Frame Counter Downlink.|(System will write new value to FCD)((( 762 762 OK 516 + 517 + 763 763 ))) 764 764 765 -(% style="display:none" %) (%%) 766 - 767 767 == 7.6 Frame Counter Uplink == 768 768 769 769 Feature: Get or Set the Frame Counter Uplink. 770 770 524 +AT Command:AT+FCU 771 771 772 -(% style="color:blue" %)**AT Command: AT+FCU** 773 - 774 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:534.222px" %) 775 -|(% style="background-color:#4f81bd; color:white; width:177px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:239px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:113px" %)**Response** 776 -|(% style="width:177px" %)AT+FCU=?|(% style="width:239px" %)Get the Frame Counter Uplink.|(% style="width:113px" %)0((( 526 +|=(% colspan="3" %)AT+FCU 527 +|**Command Example**|**Function**|**Response** 528 +|AT+FCU=?|Get the Frame Counter Uplink.|0((( 777 777 OK 778 778 ))) 779 -| (% style="width:177px" %)AT+FCU=10|(% style="width:239px" %)Set the Frame Counter Uplink.|(% style="width:113px" %)OK(((531 +|AT+FCU=10|Set the Frame Counter Uplink.|OK((( 780 780 781 781 ))) 782 782 783 -(% style="display:none" %) (%%) 784 - 785 785 == 7.7 Join Accept Delay1 == 786 786 787 - 788 788 Feature: Get or Set the Join Accept Delay between the end of the Tx and the Join Rx Window 1 in ms. 789 789 539 +AT Command:AT+JN1DL 790 790 791 -(% style="color:blue" %)**AT Command: AT+JN1DL** 792 - 793 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:537.222px" %) 794 -|(% style="background-color:#4f81bd; color:white; width:164px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:229px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:140px" %)**Response** 795 -|(% style="width:164px" %)AT+JN1DL=?|(% style="width:229px" %)Get the Join Accept Delay.|(% style="width:140px" %)5000((( 541 +|=(% colspan="3" %)AT+JN1DL 542 +|**Command Example**|**Function**|**Response** 543 +|AT+JN1DL=?|Get the Join Accept Delay.|5000((( 796 796 OK 797 797 ))) 798 -| (% style="width:164px" %)AT+JN1DL=10000|(% style="width:229px" %)Set the Join Accept Delay.|(% style="width:140px" %)OK(((546 +|AT+JN1DL=10000|Set the Join Accept Delay.|OK((( 799 799 800 800 ))) 801 801 802 -(% style="display:none" %) (%%) 803 - 804 804 == 7.8 Join Accept Delay2 == 805 805 806 - 807 807 Feature: Get or Set the Join Accept Delay between the end of the Tx and the Join Rx Window 2 in ms. 808 808 554 +AT Command:AT+JN2DL 809 809 810 -(% style="color:blue" %)**AT Command: AT+JN2DL** 811 - 812 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:538.222px" %) 813 -|(% style="background-color:#4f81bd; color:white; width:160px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:228px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:146px" %)**Response** 814 -|(% style="width:160px" %)AT+JN2DL=?|(% style="width:228px" %)Get the Join Accept Delay.|(% style="width:146px" %)6000((( 556 +|=(% colspan="3" %)AT+JN2DL 557 +|**Command Example**|**Function**|**Response** 558 +|AT+JN2DL=?|Get the Join Accept Delay.|6000((( 815 815 OK 816 816 ))) 817 -| (% style="width:160px" %)AT+JN2DL=20000|(% style="width:228px" %)Set the Join Accept Delay.|(% style="width:146px" %)OK(((561 +|AT+JN2DL=20000|Set the Join Accept Delay.|OK((( 818 818 819 819 ))) 820 820 821 -(% style="display:none" %) (%%) 822 - 823 823 == 7.9 Public Network Mode == 824 824 567 +Feature: Get or Set the public network mode. (0: off, 1: on) 825 825 826 - Feature:Getor Set the public networkmode. (0:off, 1: on).Aublic LoRaWANnetwork use 0x34 as syncword. Default Settings; PNM=1569 +AT Command:AT+PNM 827 827 828 -(% style="color:red" %)**Notice: If user build their own LoRaWAN server but still use syncword=0x34, this is still considered a public LoRaWAN network.** 829 - 830 - 831 -(% style="color:blue" %)**AT Command: AT+PNM** 832 - 833 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:667.222px" %) 834 -|(% style="background-color:#4f81bd; color:white; width:166px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:225px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:272px" %)**Response** 835 -|(% style="width:166px" %)AT+PNM=?|(% style="width:225px" %)Get the public network mode.|(% style="width:272px" %)1((( 571 +|=(% colspan="3" %)AT+PNM 572 +|**Command Example**|**Function**|**Response** 573 +|AT+PNM=?|Get the public network mode.|1((( 836 836 OK 837 837 ))) 838 -|(% style="width:166px" %)AT+PNM=1|(% style="width:225px" %)((( 839 -Set the public network mode. 840 - 841 -Set syncword=0x34 842 -)))|(% style="width:272px" %)(System will write new value to PNM)((( 576 +|AT+PNM=1|Set the public network mode.|(System will write new value to PNM)((( 843 843 OK 844 844 845 845 846 846 ))) 847 -|(% style="width:166px" %)AT+PNM=0|(% style="width:225px" %)Set to use private network autoset syncword=0x12|(% style="width:272px" %) 848 848 849 -(% style="display:none" %) (%%) 850 - 851 851 == 7.10 Receive Delay1 == 852 852 853 - 854 854 Feature: Get or Set the delay between the end of the Tx and the Rx Window 1 in ms 855 855 586 +AT Command:AT+RX1DL 856 856 857 -(% style="color:blue" %)**AT Command: AT+RX1DL** 858 - 859 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:408.222px" %) 860 -|(% style="background-color:#4f81bd; color:white; width:155px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:128px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:122px" %)**Response** 861 -|(% style="width:155px" %)AT+RX1DL=?|(% style="width:128px" %)Get the delay.|(% style="width:122px" %)1000((( 588 +|=(% colspan="3" %)AT+RX1DL 589 +|**Command Example**|**Function**|**Response** 590 +|AT+RX1DL=?|Get the delay.|1000((( 862 862 OK 863 863 ))) 864 -| (% style="width:155px" %)AT+RX1DL=1500|(% style="width:128px" %)Set the delay.|(% style="width:122px" %)OK(((593 +|AT+RX1DL=1500|Set the delay.|OK((( 865 865 866 866 ))) 867 867 868 - (%style="display:none"%) (%%)597 +== 7.11Receive Delay2 == 869 869 870 -== 7.11 Receive Delay2 == 871 - 872 - 873 873 Feature: Get or Set the delay between the end of the Tx and the Rx Window 2 in ms 874 874 601 +AT Command:AT+RX2DL 875 875 876 -(% style="color:blue" %)**AT Command: AT+RX2DL** 877 - 878 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:481.222px" %) 879 -|(% style="background-color:#4f81bd; color:white; width:175px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:152px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:150px" %)**Response** 880 -|(% style="width:175px" %)AT+RX2DL=?|(% style="width:152px" %)Get the delay.|(% style="width:150px" %)2000((( 603 +|=(% colspan="3" %)AT+RX2DL 604 +|**Command Example**|**Function**|**Response** 605 +|AT+RX2DL=?|Get the delay.|2000((( 881 881 OK 882 882 ))) 883 -| (% style="width:175px" %)AT+RX2DL=2500|(% style="width:152px" %)Set the delay.|(% style="width:150px" %)OK(((608 +|AT+RX2DL=2500|Set the delay.|OK((( 884 884 885 885 ))) 886 886 887 -(% style="display:none" %) (%%) 888 - 889 889 == 7.12 Rx2 Window Data Rate == 890 890 891 - 892 892 Feature: Get or Set the Rx2 window data rate (0-7 corresponding to DR_X) 893 893 616 +AT Command:AT+RX2DR 894 894 895 -(% style="color:blue" %)**AT Command: AT+RX2DR** 896 - 897 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:525.222px" %) 898 -|(% style="background-color:#4f81bd; color:white; width:160px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:232px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:130px" %)**Response** 899 -|(% style="width:160px" %)AT+RX2DR=?|(% style="width:232px" %)Get the Rx2 window data rate.|(% style="width:130px" %)2((( 618 +|=(% colspan="3" %)AT+RX2DR 619 +|**Command Example**|**Function**|**Response** 620 +|AT+RX2DR=?|Get the Rx2 window data rate.|2((( 900 900 OK 901 901 ))) 902 -| (% style="width:160px" %)AT+RX2DR=6|(% style="width:232px" %)Set the Rx2 window data rate.|(% style="width:130px" %)OK(((623 +|AT+RX2DR=6|Set the Rx2 window data rate.|OK((( 903 903 904 904 ))) 905 905 906 -(% style="display:none" %) (%%) 907 - 908 908 == 7.13 Rx2 Window Frequency == 909 909 910 - 911 911 Feature: Get or Set the Rx2 window frequency 912 912 631 +AT Command:AT+RX2FQ 913 913 914 -(% style="color:blue" %)**AT Command: AT+RX2FQ** 915 - 916 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:587.222px" %) 917 -|(% style="background-color:#4f81bd; color:white; width:183px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:240px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:160px" %)**Response** 918 -|(% style="width:183px" %)AT+RX2FQ=?|(% style="width:240px" %)Get the Rx2 window frequency.|(% style="width:160px" %)434665000((( 633 +|=(% colspan="3" %)AT+RX2FQ 634 +|**Command Example**|**Function**|**Response** 635 +|AT+RX2FQ=?|Get the Rx2 window frequency.|434665000((( 919 919 OK 920 920 ))) 921 -| (% style="width:183px" %)AT+RX2FQ=434665000|(% style="width:240px" %)Set the Rx2 window frequency.|(% style="width:160px" %)OK(((638 +|AT+RX2FQ=434665000|Set the Rx2 window frequency.|OK((( 922 922 923 923 ))) 924 924 925 -(% style="display:none" %) (%%) 926 - 927 927 == 7.14 Transmit Power == 928 928 644 +Feature: Get or Set the Transmit Power(0-5, MAX:0, MIN:5, according to LoRaWAN Spec, or 40=10dB, 41 = 11dB, …, 50 = 20dB which is out of LoRaWAN spec. ) 929 929 930 - Feature: Get or Set theTransmitPower(0-5, MAX:0, MIN:5, according to LoRaWAN Spec, or 40=10dBm, 41 = 11dBm, …, 50 = 20dBm which is out of LoRaWAN spec. )646 +AT Command:AT+TXP 931 931 932 -(% style="color:red" %)**Notice: Transmit Power might be changed by ADR from LoRaWAN server. So manually change TXP also remember to set AT+ADR=0 in sensor** 933 - 934 - 935 -(% style="color:blue" %)**AT Command: AT+TXP** 936 - 937 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:465.222px" %) 938 -|(% style="background-color:#4f81bd; color:white; width:161px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:189px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:112px" %)**Response** 939 -|(% style="width:161px" %)AT+TXP=?|(% style="width:189px" %)Get the Transmit Power.|(% style="width:112px" %)0((( 648 +|=(% colspan="3" %)AT+TXP 649 +|**Command Example**|**Function**|**Response** 650 +|AT+TXP=?|Get the Transmit Power.|0((( 940 940 OK 941 941 ))) 942 -| (% style="width:161px" %)AT+TXP=1|(% style="width:189px" %)Set the Transmit Power.|(% style="width:112px" %)OK(((653 +|AT+TXP=1|Set the Transmit Power.|OK((( 943 943 944 944 ))) 945 945 ... ... @@ -947,431 +947,195 @@ 947 947 948 948 If the downlink payload=22000100, it means setting the TXP to 0. 949 949 950 -* **Example 1**: Downlink Payload: **22000102** ~/~/ Set AT+TXP=2. 661 +* Example 1: Downlink Payload: 22000102 ~/~/ Set AT+TXP=2. 662 +* Example 2: Downlink Payload: 220000FF ~/~/ Set AT+TXP=0. 951 951 952 -* **Example 2**: Downlink Payload: **22000000** ~/~/ Set AT+TXP=0. 953 - 954 -(% style="display:none" %) (%%) 955 - 956 956 == 7.15 RSSI of the Last Received Packet == 957 957 958 - 959 959 Feature: Get or Set the Rx2 window frequency 960 960 668 +AT Command:AT+RSSI 961 961 962 -(% style="color:blue" %)**AT Command:AT+RSSI** 963 - 964 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:557.222px" %) 965 -|(% style="background-color:#4f81bd; color:white; width:164px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:289px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:100px" %)**Response** 966 -|(% style="width:164px" %)AT+RSSI=?|(% style="width:289px" %)Get the RSSI of the last received packet.|(% style="width:100px" %)0((( 670 +|=(% colspan="3" %)AT+RSSI 671 +|**Command Example**|**Function**|**Response** 672 +|AT+RSSI=?|Get the RSSI of the last received packet.|0((( 967 967 OK 968 968 ))) 969 969 970 -(% style="display:none" %) (%%) 971 - 972 972 == 7.16 SNR of the Last Received Packet == 973 973 974 - 975 975 Feature: Get the SNR of the last received packet 976 976 680 +AT Command:AT+SNR 977 977 978 -(% style="color:blue" %)**AT Command: AT+SNR** 979 - 980 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:571.222px" %) 981 -|(% style="background-color:#4f81bd; color:white; width:164px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:290px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:113px" %)**Response** 982 -|(% style="width:164px" %)AT+SNR=?|(% style="width:290px" %)Get the RSSI of the last received packet.|(% style="width:113px" %)0((( 682 +|=(% colspan="3" %)AT+SNR 683 +|**Command Example**|**Function**|**Response** 684 +|AT+SNR=?|Get the RSSI of the last received packet.|0((( 983 983 OK 984 984 ))) 985 985 986 -(% style="display:none" %) (%%) 987 - 988 988 == 7.17 Application Port == 989 989 990 - 991 991 Feature: Get or set the application port. 992 992 692 +AT Command: AT+PORT 993 993 994 -(% style="color:blue" %)**AT Command: AT+PORT** 995 - 996 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:459px" %) 997 -|(% style="background-color:#4f81bd; color:white; width:157px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:193px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:104px" %)**Response** 998 -|(% style="width:157px" %)AT+PORT=?|(% style="width:193px" %)Get the application port|(% style="width:104px" %)21((( 694 +|=(% colspan="3" %)AT+PORT 695 +|**Command Example**|**Function**|**Response** 696 +|AT+PORT=?|Get the application port|21((( 999 999 OK 1000 1000 ))) 1001 -| (% style="width:157px" %)AT+PORT=21|(% style="width:193px" %)Set the application port|(% style="width:104px" %)OK699 +|AT+PORT=21|Set the application port|OK 1002 1002 1003 - (% style="color:blue" %)**Downlink Command: 0x23**701 +Downlink Command: 0x23 1004 1004 1005 1005 Format: Command Code (0x23) followed by 1 bytes port value. 1006 1006 1007 1007 If the downlink payload=2301, it means set the application port to 1, while type code is 23. 1008 1008 1009 -* **Example 1**: Downlink Payload: **2301** ~/~/ set the application port to 1 707 +* Example 1: Downlink Payload: 2301 ~/~/ set the application port to 1 708 +* Example 2: Downlink Payload: 2305 ~/~/ set the application port to 5 1010 1010 1011 -* **Example 2**: Downlink Payload:** 2305** ~/~/ set the application port to 5 1012 - 1013 -(% style="display:none" %) (%%) 1014 - 1015 1015 == 7.18 Single Channel Mode == 1016 1016 1017 - 1018 1018 Feature:Get or Set Frequency (Unit: Hz) for Single Channel Mode. 1019 1019 714 +AT Command: AT+CHS 1020 1020 1021 -(% style="color:blue" %)**AT Command: AT+CHS** 1022 - 1023 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:584px" %) 1024 -|(% style="background-color:#4f81bd; color:white; width:182px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:295px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:101px" %)**Response** 1025 -|(% style="width:182px" %)AT+CHS=?|(% style="width:295px" %)Get Frequency for Single Channel Mode|(% style="width:101px" %)0((( 716 +|=(% colspan="3" %)AT+CHS 717 +|**Command Example**|**Function**|**Response** 718 +|AT+CHS=?|Get Frequency for Single Channel Mode|0((( 1026 1026 OK 1027 1027 ))) 1028 -| (% style="width:182px" %)AT+CHS=868100000|(% style="width:295px" %)Set Frequency for Single Channel Mode|(% style="width:101px" %)OK721 +|AT+CHS=868100000|Set Frequency for Single Channel Mode|OK 1029 1029 1030 -(% style="display:none" %) (%%) 1031 - 1032 1032 == 7.19 Eight Channel Mode == 1033 1033 1034 - 1035 1035 Feature: Get or Set eight channels mode,Only for US915,AU915,CN470. 1036 1036 727 +AT Command: AT+CHE 1037 1037 1038 -(% style="color:blue" %)**AT Command: AT+CHE** 1039 - 1040 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:710.222px" %) 1041 -|(% style="background-color:#4f81bd; color:white; width:160px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:198px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:349px" %)**Response** 1042 -|(% style="width:160px" %)AT+CHE=?|(% style="width:198px" %)Get eight channels mode|(% style="width:349px" %)1((( 729 +|=(% colspan="3" %)AT+CHE 730 +|**Command Example**|**Function**|**Response** 731 +|AT+CHE=?|Get eight channels mode|1((( 1043 1043 902.3 902.5 902.7 902.9 903.1 903.3 903.5 903.7 1044 1044 1045 1045 OK 1046 1046 ))) 1047 -| (% style="width:160px" %)AT+CHE=1|(% style="width:198px" %)Set eight channels mode|(% style="width:349px" %)OK736 +|AT+CHE=1|Set eight channels mode|OK 1048 1048 1049 - (% style="color:blue" %)**Downlink Command: 0x24(LHT65,LHT65N Downlink Command:0x07)**738 +Downlink Command: 0x24 1050 1050 1051 1051 Format: Command Code (0x24) followed by 1 bytes channel value. 1052 1052 1053 1053 If the downlink payload=2401, it means set channel mode to 1, while type code is 24. 1054 1054 1055 -* **Example 1**: Downlink Payload: 2401 ~/~/ set channel mode to 1 744 +* Example 1: Downlink Payload: 2401 ~/~/ set channel mode to 1 745 +* Example 2: Downlink Payload: 2405 ~/~/ set channel mode to 5 1056 1056 1057 -* **Example 2**: Downlink Payload: 2405 ~/~/ set channel mode to 5 1058 - 1059 -(% style="display:none" %) (%%) 1060 - 1061 1061 == 7.20 Get or Set RXwindows1 timeout == 1062 1062 749 +Feature:Get or Set the number of symbols to detect and timeout from RXwindow1(0 to 255). 1063 1063 1064 - Feature:Getor Set the number of symbols to detectandtimeout fromRXwindow1(0 to 255).751 +AT Command: AT+RX1WTO 1065 1065 1066 - 1067 -(% style="color:blue" %)**AT Command: AT+RX1WTO** 1068 - 1069 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:460.222px" %) 1070 -|(% style="background-color:#4f81bd; color:white; width:163px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:201px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:93px" %)**Response** 1071 -|(% style="width:163px" %)AT+RX1WTO=?|(% style="width:201px" %)Get RXwindows1 timeout|(% style="width:93px" %)14((( 753 +|=(% colspan="3" %)AT+ RX1WTO 754 +|**Command Example**|**Function**|**Response** 755 +|AT+RX1WTO=?|Get RXwindows1 timeout|14((( 1072 1072 OK 1073 1073 ))) 1074 -| (% style="width:163px" %)AT+RX1WTO=60|(% style="width:201px" %)Set RXwindows1 timeout|(% style="width:93px" %)OK758 +|AT+RX1WTO=60|Set RXwindows1 timeout|OK 1075 1075 1076 - (%style="display:none"%)(%%)760 +AT+RX1TWO 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. 1077 1077 1078 -((( 1079 -(% 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. 1080 -))) 762 +[[~[~[image:https://wiki.dragino.com/images/thumb/5/51/RX1WTO.JPG/600px-RX1WTO.JPG~|~|alt="RX1WTO.JPG" height="239" width="600"~]~]>>url:https://wiki.dragino.com/index.php/File:RX1WTO.JPG]] 1081 1081 1082 -[[image:image-20220526162535-1.png]] 1083 - 1084 -((( 1085 1085 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. 1086 -))) 1087 1087 1088 -**Example:** 1089 -~1. Set AT+RX1WTO=0, AT+RX1DL=5000, the window opening time is: 53.699ms 1090 - 1091 -[[image:image-20240906095336-1.png||height="404" width="759"]] 1092 - 1093 - 1094 -2. Set AT+RX1WTO=128, AT+RX1DL=5000, the window opening time is: 149.644ms 1095 - 1096 -[[image:image-20240906095433-2.png||height="403" width="756"]] 1097 - 1098 - 1099 -3. Set AT+RX1WTO=128, AT+RX1DL=5000, the window opening time is: 298.221ms 1100 - 1101 -[[image:image-20240906095527-3.png||height="400" width="749"]] 1102 - 1103 - 1104 1104 == 7.21 Get or Set RXwindows2 timeout == 1105 1105 768 +Feature:Get or Set the number of symbols to detect and timeout from RXwindow2(0 to 255). 1106 1106 1107 - Feature:Getor Set the number of symbols to detectandtimeout fromRXwindow2(0 to 255).770 +AT Command: AT+RX2WTO 1108 1108 1109 - 1110 -(% style="color:blue" %)**AT Command: AT+RX2WTO** 1111 - 1112 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:448px" %) 1113 -|(% style="background-color:#4f81bd; color:white; width:162px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:192px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:90px" %)**Response** 1114 -|(% style="width:162px" %)AT+RX2WTO=?|(% style="width:192px" %)Get RXwindows2 timeout|(% style="width:90px" %)7((( 772 +|=(% colspan="3" %)AT+ RX2WTO 773 +|**Command Example**|**Function**|**Response** 774 +|AT+RX2WTO=?|Get RXwindows2 timeout|7((( 1115 1115 OK 1116 1116 ))) 1117 -| (% style="width:162px" %)AT+RX2WTO=20|(% style="width:192px" %)Set RXwindows2 timeout|(% style="width:90px" %)OK777 +|AT+RX2WTO=20|Set RXwindows2 timeout|OK 1118 1118 1119 -**Example:** 1120 -~1. Set AT+RX2WTO=0, AT+RX2DL=6000, the window opening time is: 48.435ms 1121 - 1122 -(% style="display:none" %) (%%) [[image:image-20240906095619-4.png||height="375" width="703"]] 1123 - 1124 - 1125 -2. Set AT+RX2WTO=128, AT+RX2DL=6000, the window opening time is: 3011ms 1126 - 1127 -[[image:image-20240906095726-5.png||height="381" width="714"]] 1128 - 1129 - 1130 -3. Set AT+RX2WTO=255, AT+RX2DL=6000, the window opening time is: 3009ms 1131 - 1132 -[[image:image-20240906095811-6.png||height="380" width="711"]] 1133 - 1134 - 1135 1135 == 7.22 Setting up uplinkdwelltime (as923, au915) == 1136 1136 1137 - 1138 1138 Feature: Get or Set uplinkdwelltime 1139 1139 783 +AT Command: AT+DWELLT 1140 1140 1141 -(% style="color:blue" %)**AT Command: AT+DWELLT** 1142 - 1143 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:419px" %) 1144 -|(% style="background-color:#4f81bd; color:white; width:162px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:157px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:95px" %)**Response** 1145 -|(% style="width:162px" %)AT+DWELLT=?|(% style="width:157px" %)Get uplinkdwelltime|(% style="width:95px" %)1((( 785 +|=(% colspan="3" %)AT+DWELLT 786 +|**Command Example**|**Function**|**Response** 787 +|AT+DWELLT=?|Get uplinkdwelltime|1((( 1146 1146 OK 1147 1147 ))) 1148 -| (% style="width:162px" %)AT+DWELLT=0|(% style="width:157px" %)Set uplinkdwelltime|(% style="width:95px" %)OK790 +|AT+DWELLT=0|Set uplinkdwelltime|OK 1149 1149 1150 - (% style="color:blue" %)**Downlink Command: 0x25**792 +Downlink Command: 0x25 1151 1151 1152 1152 Format: Command Code (0x25) followed by 1 bytes state value. 1153 1153 1154 1154 If the downlink payload=2501, it means set uplinkdwelltime to 1, while type code is 25. 1155 1155 1156 -* **Example 1**: Downlink Payload: **2501** ~/~/ set uplinkdwelltime to 1 798 +* Example 1: Downlink Payload: 2501 ~/~/ set uplinkdwelltime to 1 799 +* Example 2: Downlink Payload: 2500 ~/~/ set uplinkdwelltime to 0 1157 1157 1158 -* **Example 2**: Downlink Payload: **2500** ~/~/ set uplinkdwelltime to 0 1159 - 1160 -(% style="display:none" %) (%%) 1161 - 1162 1162 == 7.23 Set Packet Receiving Response Level == 1163 1163 1164 - 1165 1165 Feature: Get or Set packet receiving response level. This feature is used to set compatible with different LoRaWAN servers. If RPL doesn;t match , user will see strange message in the server portal. 1166 1166 805 +RPL value: 1167 1167 1168 -(% style="color:blue" %)**RPL value:** 807 +* AT+RPL=0: Device won't immediately reply any downlink commands from platform. 808 +* AT+RPL=1: Device will immediately reply message to Unconfirmed Data Down. Payload is 0x00. 809 +* AT+RPL=2: Device will immediately reply message to Confirmed Data Down. Payload is 0x00 and requied response header for this command. 810 +* AT+RPL=3: Device will immediately reply message to MAC Command. Payload is 0x00 and requied response header for this command. 811 +* AT+RPL=4: Device will immediately reply message to Confirmed Data Down & MAC Command. Payload is 0x00 and requied response header for these two commands. 1169 1169 1170 - * **AT+RPL=0:** Devicewon't immediatelyreply any downlink commandsfrom platform.813 +Case Analyes: 1171 1171 1172 -* **AT+RPL=1:** Device will immediately reply message to Unconfirmed Data Down. Payload is 0x00. 1173 - 1174 -* **AT+RPL=2:** Device will immediately reply message to Confirmed Data Down. Payload is 0x00 and requied response header for this command. 1175 - 1176 -* **AT+RPL=3:** Device will immediately reply message to MAC Command. Payload is 0x00 and requied response header for this command. 1177 - 1178 -* **AT+RPL=4: **Device will immediately reply message to Confirmed Data Down & MAC Command. Payload is 0x00 and requied response header for these two commands. 1179 - 1180 -(% style="color:blue" %)**Case Analyes:** 1181 - 1182 1182 * For Class A devices, AT+RPL=0 is ok. that is defaut settings in software. 1183 - 1184 1184 * For Class C devices used in ChirpStack, need to set AT+RPL=4 because Chirpstack require immedietely reply message to MAC Command. 1185 - 1186 1186 * For Class C devices used in TTI, need to set AT+RPL=4 because TTI require immediately reply message to Confirmed Data Down & MAC Command. 1187 1187 1188 - (% style="color:blue" %)**AT Command: AT+RPL**819 +AT Command: AT+RPL 1189 1189 1190 -(% border="1"cellspacing="4" style="background-color:#f2f2f2; width:536.222px" %)1191 -| (% style="background-color:#4f81bd; color:white; width:160px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:263px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:109px" %)**Response**1192 -| (% style="width:160px" %)AT+RPL=?|(% style="width:263px" %)Get packet receiving response level|(% style="width:109px" %)1(((821 +|=(% colspan="3" %)AT+RPL 822 +|**Command Example**|**Function**|**Response** 823 +|AT+RPL=?|Get packet receiving response level|1((( 1193 1193 OK 1194 1194 ))) 1195 -| (% style="width:160px" %)AT+RPL=0|(% style="width:263px" %)Set packet receiving response level|(% style="width:109px" %)OK826 +|AT+RPL=0|Set packet receiving response level|OK 1196 1196 1197 - (% style="color:blue" %)**Downlink Command: 0x21**828 +Downlink Command: 0x21 1198 1198 1199 1199 Format: Command Code (0x21) followed by 1 bytes level value. 1200 1200 1201 1201 If the downlink payload=2101, it means set packet receiving response level to 1, while type code is 21. 1202 1202 1203 -* **Example 1**: Downlink Payload: **2101** ~/~/ set packet receiving response level to 1 834 +* Example 1: Downlink Payload: 2101 ~/~/ set packet receiving response level to 1 835 +* Example 2: Downlink Payload: 2102 ~/~/ set packet receiving response level to 2 1204 1204 1205 -* **Example 2**: Downlink Payload: **2102** ~/~/ set packet receiving response level to 2 1206 - 1207 -(% style="display:none" %) (%%) 1208 - 1209 -== 7.24 Controls NBTrans in unconfirmed uplink mode(LWS007 NBTrans:Set retransmission packets) == 1210 - 1211 - 1212 -(% style="color:blue" %)**AT Command: AT+SETMAXNBTRANS ** 1213 - 1214 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:589px" %) 1215 -|(% style="background-color:#4f81bd; color:white; width:227px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:300px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:87px" %)**Response** 1216 -|(% style="width:227px" %)AT+SETMAXNBTRANS=1,0|(% style="width:300px" %)Value1: set the maximum NBTrans.|(% style="width:87px" %)1((( 1217 -OK 1218 -))) 1219 -|(% style="width:227px" %)AT+SETMAXNBTRANS=?,1|(% style="width:300px" %)((( 1220 -value2: 0: uplink fcnt doesn't change for each NBTrans; 1221 - 1222 -1: uplink fcnt increase by 1 for each NBTrans. 1223 -)))|(% style="width:87px" %)((( 1224 -1 1225 - 1226 -OK 1227 -))) 1228 - 1229 -(% style="color:blue" %)**Downlink Command: 0x33** 1230 - 1231 -Format: Command Code (0x33) followed by 2 bytes mode value. 1232 - 1233 -If the downlink payload=330100, it means set end node to use confirm mode, while type code is 33. 1234 - 1235 -* Example 1: Downlink Payload: 330100 ~/~/ Set AT+SETMAXNBTRANS=1,0 1236 - 1237 -* Example 2: Downlink Payload: 330201 ~/~/ Set AT+SETMAXNBTRANS=2,1 1238 - 1239 -(% style="display:none" %) (%%) 1240 - 1241 -== 7.25 Device offline rejoining (LWS007) == 1242 - 1243 - 1244 -(% style="color:blue" %)**AT Command: AT+DDETECT** 1245 - 1246 -AT+DDETECT=<Flag>,<ACK_Timout_1>,<ACK_Timout_2> (Default Value: AT+DDETECT=1,1440,2880) 1247 - 1248 -* ACK_Timout_1: Unit: min 1249 - 1250 -* ACK_Timout_2: Unit: min 1251 - 1252 -(% border="1" style="background-color:#f2f2f2; width:562px" %) 1253 -|(% style="background-color:#4f81bd; color:white; width:160px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:272px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:89px" %)**Response** 1254 -|(% style="width:160px" %)((( 1255 -AT+DDETECT=1,1440,2880 1256 - 1257 -value1 1258 -)))|(% style="width:272px" %)Enable online detect|(% style="width:89px" %)((( 1259 -1 1260 - 1261 -OK 1262 -))) 1263 -|(% style="width:160px" %)((( 1264 -AT+DDETECT=1,?,2880 1265 - 1266 -value2 1267 -)))|(% style="width:272px" %)Online detection packet sending time|(% style="width:89px" %)((( 1268 - 1269 - 1270 -OK 1271 -))) 1272 -|(% style="width:160px" %)((( 1273 -AT+DDETECT=1,1440,? 1274 - 1275 -value3 1276 -)))|(% style="width:272px" %)Process rejoin|(% style="width:89px" %)((( 1277 - 1278 - 1279 -OK 1280 -))) 1281 - 1282 -(% style="color:blue" %)**Downlink Command: 0x32** 1283 - 1284 -Format: Command Code (0x32) followed by 2 bytes mode value. 1285 - 1286 -If the downlink payload=320105A00B40, it means set end node to use confirm mode, while type code is 32. 1287 - 1288 -* **Example 1:** Downlink Payload: 320105A00B40 ~/~/ Set AT+DDETECT=1,1440,2880 1289 - 1290 -* 1291 -** 0x01** : Flag** 1292 - 1293 - **0x05A0 **: ACK_Timout_1 : 1440minutes (24 hours) 1294 - 1295 - **0x0B40 **: ACK_Timout_2 : 2880minutes (48 hours) 1296 - 1297 -* **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. 1298 - 1299 -(% style="display:none" %) (%%) 1300 - 1301 -== 7.26 Request the server to send an ACK == 1302 - 1303 - 1304 -Feature: Mode for sending data for which acknowledgment was not received. LoraWAN Network Server(eg. The Things NetWork/ChirpStack/AWS/...). 1305 - 1306 -(% style="color:blue" %)**AT Command: AT+PNACKMD** 1307 - 1308 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:889px" %) 1309 -|(% style="background-color:#4f81bd; color:white; width:160px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:627px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:100px" %)**Response** 1310 -|(% style="width:160px" %)AT+PNACKMD=1|(% style="width:627px" %)If the node uploads the ACK as confirm, it will request the LoraWAN Network Server to send an ACK. If the LoraWAN Network 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:100px" %)1((( 1311 -OK 1312 -))) 1313 -|(% style="width:160px" %)AT+PNACKMD=0|(% style="width:627px" %)off request the LoraWAN Network Server to send an ACK|(% style="width:100px" %)((( 1314 -0 1315 -OK 1316 -))) 1317 - 1318 -(% style="display:none" %) (%%) (% style="color:blue" %)**Downlink Command: 0x34** 1319 - 1320 -0X34 01 ~/~/Same As AT+PNACKMD=1 1321 - 1322 -0x34 00 ~/~/Same As AT+PNACKMD=0 1323 - 1324 - 1325 -== 7.27 Adjust network rejoining interval == 1326 - 1327 - 1328 -(% style="color:blue" %)**AT Command: AT+RJTDC** 1329 - 1330 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:889px" %) 1331 -|(% style="background-color:#4f81bd; color:white; width:165px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:357px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:361px" %)**Response** 1332 -|(% style="width:165px" %)AT+RJTDC=?|(% style="width:357px" %)Show the ReJoin data transmission interval in min|(% style="width:361px" %)30((( 1333 -OK 1334 - 1335 -the interval is 30 min 1336 -))) 1337 -|(% style="width:165px" %)AT+RJTDC=60|(% style="width:357px" %)Set the ReJoin data transmission interval in min|(% style="width:361px" %)OK((( 1338 -Set the ReJoin data transmission interval to 60 min 1339 -))) 1340 - 1341 -(% style="color:blue" %)**Downlink Command: 0x26** 1342 - 1343 -Format: Command Code (0x26) followed by 2 bytes mode value. 1344 - 1345 -If the downlink payload=26000A, it means set end node to use confirm mode, while type code is 26. 1346 - 1347 -* **Example 1:** Downlink Payload: 26000A ~/~/ Set AT+RJTDC=10 1348 - 1349 -* **Example 2: **Downlink Payload: 260002 ~/~/ Set AT+RJTDC=2 1350 - 1351 -(% style="display:none" %) (%%) 1352 - 1353 1353 = 8. AT Commands Combination = 1354 1354 1355 1355 == 8.1 Set a fix RX2DR for downlink window == 1356 1356 841 +* AT+ADR=0 ~-~-> Disable ADR first 842 +* AT+RX2DR=xxxx ~-~-> Set xxxx to your wanted DataRate 1357 1357 1358 -* (% style="color:blue" %)**AT+ADR=0 **(%%) **~/~/** Disable ADR first 1359 - 1360 -* (% style="color:blue" %)**AT+RX2DR=xxxx** (%%) **~/~/** Set xxxx to your wanted DataRate 1361 - 1362 -(% style="display:none" %) (%%) 1363 - 1364 1364 == 8.2 Use Downlink Command to set a fix uplink DR == 1365 1365 846 +Downlink Command: 0x22000500 1366 1366 1367 - (% style="color:blue"%)**Downlink Command:0x22000500**848 +Same as: 1368 1368 1369 -**Same as:** 1370 - 1371 -* AT+ADR=0 [[Reference>>||anchor="H7.1AdaptiveDataRate"]] 1372 - 1373 -* AT+DR=5 [[Reference>>||anchor="H7.4DataRate"]] 1374 - 1375 -* AT+TXP=0 [[Reference>>||anchor="H7.14TransmitPower"]] 1376 - 1377 - 850 +* AT+ADR=0 [[Reference>>url:https://wiki.dragino.com/index.php/End_Device_Downlink_Command#Adaptive_Data_Rate]] 851 +* AT+DR=5 [[Reference>>url:https://wiki.dragino.com/index.php/End_Device_Downlink_Command#Data_Rate]] 852 +* AT+TXP=0 [[Reference>>url:https://wiki.dragino.com/index.php/End_Device_Downlink_Command#Transmit_Power]]
- image-20220511120050-1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -136.3 KB - Content
- image-20220526162535-1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Xiaoling - Size
-
... ... @@ -1,1 +1,0 @@ 1 -149.4 KB - Content
- image-20240906095336-1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.kai - Size
-
... ... @@ -1,1 +1,0 @@ 1 -111.0 KB - Content
- image-20240906095433-2.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.kai - Size
-
... ... @@ -1,1 +1,0 @@ 1 -113.2 KB - Content
- image-20240906095527-3.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.kai - Size
-
... ... @@ -1,1 +1,0 @@ 1 -111.6 KB - Content
- image-20240906095619-4.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.kai - Size
-
... ... @@ -1,1 +1,0 @@ 1 -112.4 KB - Content
- image-20240906095726-5.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.kai - Size
-
... ... @@ -1,1 +1,0 @@ 1 -114.0 KB - Content
- image-20240906095811-6.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.kai - Size
-
... ... @@ -1,1 +1,0 @@ 1 -112.8 KB - Content