Version 37.1 by Xiaoling on 2022/05/27 18:07

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
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
102
103 = 4. System Management Commands =
104
105 == 4.1 Change Uplink Interval ==
106
107 Feature: Change LoRaWAN End Node Transmit Interval.
108
109 (% class="box infomessage" %)
110 (((
111 **AT Command: AT+TDC**
112 )))
113
114 (% border="1" style="background-color:#ffffcc; color:green; width:727.222px" %)
115 |=(% colspan="3" style="width: 724px;" %)AT+TDC
116 |(% style="width:165px" %)**Command Example**|(% style="width:227px" %)**Function**|(% style="width:329px" %)**Response**
117 |(% style="width:165px" %)AT+TDC=?|(% style="width:227px" %)Show current transmit Interval|(% style="width:329px" %)30000(((
118 OK
119
120 the interval is 30000ms = 30s
121 )))
122 |(% style="width:165px" %)AT+TDC=60000|(% style="width:227px" %)Set Transmit Interval|(% style="width:329px" %)OK(((
123 Set transmit interval to 60000ms = 60 seconds
124 )))
125
126 {{info}}
127 **Downlink Command: 0x01**
128 {{/info}}
129
130 (((
131 Format: Command Code (0x01) followed by 3 bytes time value.
132 )))
133
134 (((
135 If the downlink payload=0100003C, it means set the END Node’s Transmit Interval to 0x00003C=60(S), while type code is 01.
136 )))
137
138 * **Example 1**: Downlink Payload:** 0100001E** ~/~/ Set Transmit Interval (TDC) = 30 seconds
139 * **Example 2**: Downlink Payload:** 0100003C** ~/~/ Set Transmit Interval (TDC) = 60 seconds
140
141 == 4.2 Reboot End Node ==
142
143 Feature: Reboot End Node to perform a new OTAA or ABP Join.
144
145 {{info}}
146 **AT Command: ATZ**
147 {{/info}}
148
149 (% border="1" style="background-color:#ffffcc; color:green; width:727.222px" %)
150 |=(% colspan="3" %)ATZ: Trig a reset of the MCU
151 |**Command Example**|**Function**|**Response**
152 |ATZ|Reset MCU|(((
153 Device reset and show booting info
154
155 LSN50 Device/LoRa ST Module
156
157 Image Version: XX
158
159 Frequency Band: XX
160
161 DevEui= XX XX XX XX XX XX XX XX
162
163 <followed by the Tx and Rx information>
164 )))
165
166 {{info}}
167 **Downlink Command: 0x04**
168 {{/info}}
169
170 (((
171 Format: Command Code (0x04) followed by FF.
172 )))
173
174 (((
175 If the downlink payload=**04FF**, the end node will reboot.
176
177
178 )))
179
180 == 4.3 Reset to factory Default ==
181
182 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.
183
184 {{info}}
185 **AT Command: AT+FDR**
186 {{/info}}
187
188 (% border="1" style="background-color:#ffffcc; color:green; width:831.222px" %)
189 |=(% colspan="3" style="width: 828px;" %)Reset to factory default
190 |(% style="width:181px" %)**Command Example**|(% style="width:181px" %)**Function**|(% style="width:465px" %)**Response**
191 |(% style="width:181px" %)AT+FDR|(% style="width:181px" %)Reset to factory default|(% style="width:465px" %)(((
192 Device reset to factory default parameters and show booting info
193
194 LSN50 Device/LoRa ST Module
195
196 Image Version: XX
197
198 Frequency Band: XX
199
200 DevEui= XX XX XX XX XX XX XX XX
201
202 Please set the parameters or reset Device to apply change
203 )))
204
205 {{info}}
206 **Downlink Command: 0x04**
207 {{/info}}
208
209 (((
210 Format: Command Code (0x04) followed by FE.
211 )))
212
213 (((
214 If the downlink payload=**04FE**, Reset Parameters to Factory Default, Keys Reserve.
215 )))
216
217
218 == 4.4 Show Firmware Version ==
219
220 Feature: Show firmware version. No downlink command yet.
221
222 {{info}}
223 **AT Command: AT+VER**
224 {{/info}}
225
226 (% border="1" style="background-color:#ffffcc; color:green; width:586px" %)
227 |=(% colspan="3" style="width: 583px;" %)AT+VER: Image Version and Frequency Band
228 |(% style="width:170px" %)**Command Example**|(% style="width:300px" %)**Function**|(% style="width:113px" %)**Response**
229 |(% style="width:170px" %)AT+VER=?|(% style="width:300px" %)Show Image version and Frequency Band|(% style="width:113px" %)(((
230 1.3 EU868
231
232 OK
233 )))
234
235 {{info}}
236 **Downlink Command: 0x26 (Valid in 006 stack)**
237 {{/info}}
238
239 (((
240 Downlink Format: 0x26
241 )))
242
243 (((
244 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
245 )))
246
247 (((
248 **xx: Software Type:**
249 )))
250
251 * 0x00 01: LGT92 Version
252 * 0x00 02: LBT1
253 * 0x00 03: LSE01/LDDS75/LDDS20/LSPH01/LLMS01/LSNPK01
254
255 (((
256 **yy: Frequency Band:**
257 )))
258
259 * 0x01: EU868
260 * 0x02: US915
261 * 0x03: IN865
262 * 0x04: AU915
263 * 0x05: KZ865
264 * 0x06: RU864
265 * 0x07: AS923
266 * 0x08: AS923-1
267 * 0x09: AS923-2
268 * 0xa0: AS923-3
269
270 (((
271 **zz: Subband**
272 )))
273
274 firmware version: v1.1.0 ~-~-> 110
275
276
277 == 4.5 Show System Configure ==
278
279 Feature: Show All configure. No downlink command yet.
280
281 {{info}}
282 **AT Command: AT+CFG**
283 {{/info}}
284
285 (% border="1" style="background-color:#ffffcc; color:green; width:599.222px" %)
286 |=(% colspan="3" style="width: 596px;" %)AT+CFG: Print all configurations
287 |(% style="width:160px" %)**Command Example**|(% style="width:154px" %)**Function**|(% style="width:280px" %)**Response**
288 |(% style="width:160px" %)AT+CFG|(% style="width:154px" %)Show all configures|(% style="width:280px" %)(((
289 AT+DEUI = XX XX XX XX XX XX XX XX
290
291 AT+DADDR=XXXXXXXX
292
293 ……….
294
295 AT+RX2WTO=X
296
297 AT+CHS=868100000
298
299 OK
300 )))
301
302 = 5. Keys, IDs and EUIs management =
303
304 == 5.1 Application EUI ==
305
306 Feature: Get or Set the Application EUI.
307
308 {{info}}
309 **AT Command: AT+APPEUI**
310 {{/info}}
311
312 (% border="1" style="background-color:#ffffcc; color:green; width:686.222px" %)
313 |=(% colspan="3" style="width: 683px;" %)AT+APPEUI
314 |(% style="width:305px" %)**Command Example**|(% style="width:186px" %)**Function**|(% style="width:191px" %)**Response**
315 |(% style="width:305px" %)AT+APPEUI=?|(% style="width:186px" %)Get the Application EUI|(% style="width:191px" %)00 b3 d5 00 00 00 00 00(((
316 OK
317 )))
318 |(% style="width:305px" %)AT+APPEUI=00 b3 d5 7e f0 00 4d 34|(% style="width:186px" %)Set the Application EUI|(% style="width:191px" %)OK
319
320 == 5.2 Application Key ==
321
322 Feature: Get or Set the Application Key.
323
324 {{info}}
325 **AT Command: AT+APPKEY**
326 {{/info}}
327
328 (% border="1" style="background-color:#ffffcc; color:green; width:976.222px" %)
329 |=(% colspan="3" style="width: 973px;" %)AT+APPKEY
330 |(% style="width:441px" %)**Command Example**|(% style="width:180px" %)**Function**|(% style="width:350px" %)**Response**
331 |(% 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(((
332 OK
333 )))
334 |(% 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
335
336 == 5.3 Application Session Key ==
337
338 Feature: Get or Set the Application Session Key.
339
340 {{info}}
341 **AT Command: AT+APPSKEY**
342 {{/info}}
343
344 (% border="1" style="background-color:#ffffcc; color:green; width:1040.22px" %)
345 |=(% colspan="3" style="width: 1037px;" %)AT+APPSKEY
346 |(% style="width:451px" %)**Command Example**|(% style="width:231px" %)**Function**|(% style="width:354px" %)**Response**
347 |(% 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(((
348 OK
349 )))
350 |(% 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)(((
351 OK
352 )))
353
354 == 5.4 Device Address ==
355
356 Feature: Get or Set the Device Address.
357
358 {{info}}
359 **AT Command: AT+DADDR**
360 {{/info}}
361
362 (% border="1" style="background-color:#ffffcc; color:green; width:795.222px" %)
363 |=(% colspan="3" style="width: 792px;" %)AT+DADDR
364 |(% style="width:192px" %)**Command Example**|(% style="width:241px" %)**Function**|(% style="width:359px" %)**Response**
365 |(% style="width:192px" %)AT+DADDR=?|(% style="width:241px" %)Get the Application Session Key.|(% style="width:359px" %)(While Error in format, return AT_PARAM_ERROR)(((
366 A8 40 41 FF
367
368 OK
369 )))
370 |(% style="width:192px" %)AT+DADDR=A8 40 41 FF|(% style="width:241px" %)Set the Application Session Key.|(% style="width:359px" %)OK
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"]]