Version 50.15 by Xiaoling on 2022/07/13 13:41

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