Version 38.18 by Xiaoling on 2022/05/31 09:01

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