Version 20.1 by Xiaoling on 2022/05/27 17:47

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