Version 29.1 by Xiaoling on 2022/05/27 17:59

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