Version 60.4 by Xiaoling on 2023/03/27 13:59

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