Version 24.1 by Xiaoling on 2022/05/27 17:57

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
29 = 3. Support End Node and firmware version =
30
31 (% border="1" style="background-color:#ffffcc; color:green; width:966px" %)
32 |=(% colspan="3" style="width: 963px;" %)(((
33 Dragino STM32 base hardware Firmware / LoRaWAN stack list
34 )))
35 |(% style="width:187px" %)(((
36 **Model**
37 )))|(% style="width:330px" %)(((
38 **Description**
39 )))|(% style="width:445px" %)(((
40 **Firmware Version <~-~-> Stack Version**
41 )))
42 |(% style="width:187px" %)(((
43 [[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]],
44 )))|(% style="width:330px" %)(((
45 Open Source Generic LoRaWAN Sensor Node
46 )))|(% style="width:445px" %)(((
47 (((
48 LSN50 v1.6.0 <~-~-> DR-LWS-003;
49 )))
50
51 (((
52 (((
53 LSN50 v1.7.0 <~-~-> DR-LWS-005; ~-~-> Support since this version
54 )))
55 )))
56 )))
57 |(% style="width:187px" %)(((
58 [[LGT92>>url:http://www.dragino.com/products/lora-lorawan-end-node/item/142-lgt-92.html]],
59 )))|(% style="width:330px" %)(((
60 LoRaWAN GPS Tracker
61 )))|(% style="width:445px" %)(((
62 (((
63 LGT92 v1.6.3 <~-~-> DR-LWS-003;
64 )))
65
66 (((
67 (((
68 LGT92 v1.6.4 <~-~-> DR-LWS-005;~-~-> Support since this version
69 )))
70 )))
71 )))
72 |(% style="width:187px" %)(((
73 [[LBT1>>url:http://www.dragino.com/products/lora-lorawan-end-node/item/165-lbt1.html]],
74 )))|(% style="width:330px" %)(((
75 LoRaWAN BLE Indoor Tracker
76 )))|(% style="width:445px" %)(((
77 LBT1 v1.0 <~-~-> DR-LWS-005;
78 )))
79 |(% style="width:187px" %)(((
80 [[RS485-LN>>url:http://www.dragino.com/products/lora-lorawan-end-node/item/154-rs485-ln.html]],
81 )))|(% style="width:330px" %)(((
82 LoRaWAN RS485 Modbus Converter
83 )))|(% style="width:445px" %)(((
84 RS485-LN v1.3 <~-~-> DR-LWS-005;
85 )))
86 |(% style="width:187px" %)(((
87 [[LHT65>>url:http://www.dragino.com/products/lora-lorawan-end-node/item/151-lht65.html]],
88 )))|(% style="width:330px" %)(((
89 LoRaWAN Temperature & Humidity Sensor
90 )))|(% style="width:445px" %)(((
91 (((
92 LHT65 v1.7 <~-~-> DR-LWS-003;
93 )))
94
95 (((
96 (((
97 LHT65 v1.8.0 <~-~-> DR-LWS-005;~-~-> Support since this version
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
355 == 5.4 Device Address ==
356
357 Feature: Get or Set the Device Address.
358
359 {{info}}
360 **AT Command: AT+DADDR**
361 {{/info}}
362
363 (% border="1" style="background-color:#ffffcc; color:green; width:795.222px" %)
364 |=(% colspan="3" style="width: 792px;" %)AT+DADDR
365 |(% style="width:192px" %)**Command Example**|(% style="width:241px" %)**Function**|(% style="width:359px" %)**Response**
366 |(% style="width:192px" %)AT+DADDR=?|(% style="width:241px" %)Get the Application Session Key.|(% style="width:359px" %)(While Error in format, return AT_PARAM_ERROR)(((
367 A8 40 41 FF
368
369 OK
370 )))
371 |(% style="width:192px" %)AT+DADDR=A8 40 41 FF|(% style="width:241px" %)Set the Application Session Key.|(% style="width:359px" %)OK
372
373
374 == 5.5 Device EUI ==
375
376 Feature: Get or Set the Device EUI.
377
378 {{info}}
379 **AT Command: AT+DEUI**
380 {{/info}}
381
382 (% border="1" style="background-color:#ffffcc; color:green; width:1035.22px" %)
383 |=(% colspan="3" style="width: 1032px;" %)AT+DEUI
384 |(% style="width:250px" %)**Command Example**|(% style="width:147px" %)**Function**|(% style="width:634px" %)**Response**
385 |(% style="width:250px" %)AT+DEUI=?|(% style="width:147px" %)Get the Device EUI.|(% style="width:634px" %)00 44 34 22 33 45 55 55(((
386 OK
387 )))
388 |(% 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)(((
389 OK
390 )))
391
392
393 == 5.6 Network ID ==
394
395 Feature: Get or Set the Network ID.(You can enter this command change only after successful network connection)
396
397 {{info}}
398 **AT Command: AT+NWKID**
399 {{/info}}
400
401 (% border="1" style="background-color:#ffffcc; color:green; width:448.222px" %)
402 |=(% colspan="3" style="width: 445px;" %)AT+NWKID
403 |(% style="width:191px" %)**Command Example**|(% style="width:153px" %)**Function**|(% style="width:101px" %)**Response**
404 |(% style="width:191px" %)AT+NWKID=?|(% style="width:153px" %)Get the Network ID.|(% style="width:101px" %)a8 40 41 ff(((
405 OK
406 )))
407 |(% style="width:191px" %)AT+NWKID=A8 40 41 FF|(% style="width:153px" %)Set the Network ID.|(% style="width:101px" %)OK
408
409
410 == 5.7 Network Session Key ==
411
412 Feature: Get or Set the Network Session Key
413
414 {{info}}
415 **AT Command: AT+NWKSKEY**
416 {{/info}}
417
418 (% border="1" style="background-color:#ffffcc; color:green; width:1017.22px" %)
419 |=(% colspan="3" style="width: 1014px;" %)AT+NWKSKEY
420 |(% style="width:455px" %)**Command Example**|(% style="width:215px" %)**Function**|(% style="width:343px" %)**Response**
421 |(% 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(((
422 OK
423 )))
424 |(% 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
425
426
427 = 6. Joining and sending date on LoRaWAN network =
428
429 == 6.1 Confirm Mode ==
430
431 Feature: Get or Set the confirmation mode (0-1).
432
433 {{info}}
434 **AT Command: AT+CFM**
435 {{/info}}
436
437 (% border="1" style="background-color:#ffffcc; color:green; width:710.222px" %)
438 |=(% colspan="3" style="width: 707px;" %)AT+CFM
439 |(% style="width:155px" %)**Command Example**|(% style="width:205px" %)**Function**|(% style="width:346px" %)**Response**
440 |(% style="width:155px" %)AT+CFM=?|(% style="width:205px" %)Get the confirmation mode|(% style="width:346px" %)0(((
441 OK
442 )))
443 |(% style="width:155px" %)AT+CFM=1|(% style="width:205px" %)Set the confirmation mode|(% style="width:346px" %)OK
444 |(% style="width:155px" %)AT+CFM=2|(% style="width:205px" %)Set the confirmation mode|(% style="width:346px" %)While Error in format, return AT_PARAM_ERROR
445
446 Downlink Command: 0x05
447
448 Format: Command Code (0x05) followed by 2 bytes mode value.
449
450 If the downlink payload=0501, it means set end node to use confirm mode, while type code is 05.
451
452 * Example 1: Downlink Payload: 0501 ~/~/ Set AT+CFM=1
453 * Example 2: Downlink Payload: 0500 ~/~/ Set AT+CFM=0
454
455 == 6.2 Confirm Status ==
456
457 Feature: Get confirmation status of the last AT+SEND (0-1).
458
459 {{info}}
460 **AT Command: AT+CFS**
461 {{/info}}
462
463 (% border="1" style="background-color:#ffffcc; color:green; width:534.222px" %)
464 |=(% colspan="3" style="width: 531px;" %)AT+CFS
465 |(% style="width:156px" %)**Command Example**|(% style="width:193px" %)**Function**|(% style="width:178px" %)**Response**
466 |(% style="width:156px" %)AT+CFS=?|(% style="width:193px" %)Get confirmation status|(% style="width:178px" %)0(((
467 OK
468 )))
469
470 == 6.3 Join LoRa® Network ==
471
472 Feature: Join network.
473
474 {{info}}
475 **AT Command: AT+JOIN**
476 {{/info}}
477
478 (% border="1" style="background-color:#ffffcc; color:green; width:647.222px" %)
479 |=(% colspan="3" style="width: 644px;" %)AT+JOIN
480 |(% style="width:163px" %)**Command Example**|(% style="width:147px" %)**Function**|(% style="width:334px" %)**Response**
481 |(% style="width:163px" %)AT+JOIN ?|(% style="width:147px" %)Get imformation.|(% style="width:334px" %)AT+JOIN: Join network(((
482 OK
483
484 While Error in format, return AT_BUSY_ERROR
485 )))
486
487 == 6.4 LoRa® Network Join Mode ==
488
489 Feature: Get or Set the Network Join Mode. (0: ABP, 1: OTAA).
490
491 {{info}}
492 **AT Command: AT+NJM**
493 {{/info}}
494
495 (% border="1" style="background-color:#ffffcc; color:green; width:753.222px" %)
496 |=(% colspan="3" style="width: 750px;" %)AT+NJM
497 |(% style="width:162px" %)**Command Example**|(% style="width:227px" %)**Function**|(% style="width:361px" %)**Response**
498 |(% style="width:162px" %)AT+NJM=?|(% style="width:227px" %)Get the Network Join Mode|(% style="width:361px" %)1(((
499 OK
500 )))
501 |(% style="width:162px" %)AT+NJM=0|(% style="width:227px" %)Set the Network Join Mode|(% style="width:361px" %)OK
502 |(% 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
503
504 {{info}}
505 **Downlink Command: 0x20**
506 {{/info}}
507
508 Format: Command Code (0x20) followed by 1 bytes mode value.
509
510 If the downlink payload=2000, it means set the Network Join Mode, while type code is 20.
511
512 * **Example 1: **Downlink Payload: **2000** ~/~/ Set AT+NJM=O
513 * **Example 2:** Downlink Payload: **2001** ~/~/ Set AT+NJM=1
514
515 == 6.5 LoRa® Network Join Status ==
516
517 Feature: LoRa® Network Join Status.
518
519 {{info}}
520 **AT Command: AT+NJS**
521 {{/info}}
522
523 (% border="1" style="background-color:#ffffcc; color:green; width:498.222px" %)
524 |=(% colspan="3" style="width: 495px;" %)AT+NJS
525 |(% style="width:169px" %)**Command Example**|(% style="width:164px" %)**Function**|(% style="width:161px" %)**Response**
526 |(% style="width:169px" %)AT+NJS=?|(% style="width:164px" %)Get the join status.|(% style="width:161px" %)0(((
527 OK
528 )))
529
530 == 6.6 Print Last Received Data in Raw Format ==
531
532 Feature: Print Last Received Data in Raw Format<port:data>.
533
534 {{info}}
535 **AT Command: AT+RECV**
536 {{/info}}
537
538 (% border="1" style="background-color:#ffffcc; color:green; width:587.222px" %)
539 |=(% colspan="3" style="width: 584px;" %)AT+RECV
540 |(% style="width:161px" %)**Command Example**|(% style="width:272px" %)**Function**|(% style="width:150px" %)**Response**
541 |(% style="width:161px" %)AT+RECV=?|(% style="width:272px" %)print last received data in raw format.|(% style="width:150px" %)0:(((
542 OK
543 )))
544
545 == 6.7 Print Last Received Data in Binary Format ==
546
547 Feature: Print Last Received Data in Binary Format<port:data>.
548
549 {{info}}
550 **AT Command: AT+RECVB**
551 {{/info}}
552
553 (% border="1" style="background-color:#ffffcc; color:green; width:793.222px" %)
554 |=(% colspan="3" style="width: 790px;" %)AT+RECVB
555 |(% style="width:173px" %)**Command Example**|(% style="width:497px" %)**Function**|(% style="width:120px" %)**Response**
556 |(% style="width:173px" %)AT+RECVB=?|(% style="width:497px" %)print last received data in binary format (with hexadecimal values).|(% style="width:120px" %)2: 0010(((
557 OK
558 )))
559
560 == 6.8 Send Text Data ==
561
562 Feature: Send Text Data<port:data>.
563
564 {{info}}
565 **AT Command: AT+SEND**
566 {{/info}}
567
568 (% border="1" style="background-color:#ffffcc; color:green; width:991.222px" %)
569 |=(% colspan="3" style="width: 988px;" %)AT+SEND
570 |(% style="width:201px" %)**Command Example**|(% style="width:340px" %)**Function**|(% style="width:446px" %)**Response**
571 |(% style="width:201px" %)AT+SEND=12:hello world|(% style="width:340px" %)Send text data along with the application port.|(% style="width:446px" %)OK(((
572 While Error in format, return
573
574 AT_BUSY_ERROR/AT_BUSY_ERROR/AT_NO_NETWORK_JOINED
575
576
577 )))
578
579 == 6.9 Send Hexadecimal Data ==
580
581 Feature: Send hexadecimal data along with the application port.
582
583 {{info}}
584 **AT Command: AT+SENDB**
585 {{/info}}
586
587 (% border="1" style="background-color:#ffffcc; color:green; width:1120.22px" %)
588 |=(% colspan="3" style="width: 1117px;" %)AT+SENDB
589 |(% style="width:257px" %)**Command Example**|(% style="width:406px" %)**Function**|(% style="width:453px" %)**Response**
590 |(% style="width:257px" %)AT+SENDB=12:abcdef0123456789|(% style="width:406px" %)Send hexadecimal data along with the application port.|(% style="width:453px" %)OK
591 |(% 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(((
592 AT_PARAM_ERROR AT_BUSY_ERROR/AT_NO_NETWORK_JOINED
593
594
595 )))
596
597 = 7. LoRaWAN network management =
598
599 == 7.1 Adaptive Data Rate ==
600
601 Feature: Get or Set the Adaptive Data Rate setting. (0: off, 1: on).
602
603 {{info}}
604 **AT Command: AT+ADR**
605 {{/info}}
606
607 (% border="1" style="background-color:#ffffcc; color:green; width:683.222px" %)
608 |=(% colspan="3" style="width: 680px;" %)AT+ADR
609 |(% style="width:162px" %)**Command Example**|(% style="width:266px" %)**Function**|(% style="width:250px" %)**Response**
610 |(% style="width:162px" %)AT+ADR=?|(% style="width:266px" %)Get the Adaptive Data Rate setting.|(% style="width:250px" %)1(((
611 OK
612 )))
613 |(% style="width:162px" %)AT+ADR=0|(% style="width:266px" %)Set the Adaptive Data Rate setting.|(% style="width:250px" %)OK
614 |(% style="width:162px" %)AT+ADR=2|(% style="width:266px" %)Set the Adaptive Data Rate setting.|(% style="width:250px" %)While Error in format, return(((
615 AT_PARAM_ERROR
616 )))
617
618 {{info}}
619 **Downlink Command: 0x22**
620 {{/info}}
621
622
623 If the downlink payload=2201, it means setting the adaptive data rate to 1, while type code is 22.
624
625 * **Example 1**: Downlink Payload: **2201** ~/~/ Set AT+ADR=1.
626 * **Example 2**: Downlink Payload: **2200FFFF** ~/~/ Set AT+ADR=0.
627
628 == 7.2 LoRa® Class ==
629
630 Feature: Get or Set the Device Class(Currently only support class A, class C).
631
632 {{info}}
633 **AT Command:AT+CLASS**
634 {{/info}}
635
636 (% border="1" style="background-color:#ffffcc; color:green; width:507.222px" %)
637 |=(% colspan="3" style="width: 504px;" %)AT+CLASS
638 |(% style="width:163px" %)**Command Example**|(% style="width:166px" %)**Function**|(% style="width:175px" %)**Response**
639 |(% style="width:163px" %)AT+CLASS=?|(% style="width:166px" %)Get the Device Class.|(% style="width:175px" %)A(((
640 OK
641 )))
642 |(% style="width:163px" %)AT+CLASS=C|(% style="width:166px" %)Set the Device Class.|(% style="width:175px" %)OK(((
643
644 )))
645
646 == 7.3 Duty Cycle Setting ==
647
648 Feature: Get or Set the ETSI Duty Cycle setting - 0=disable, 1=enable - Only for testing.
649
650 {{info}}
651 **AT Command:AT+DCS**
652 {{/info}}
653
654 (% border="1" style="background-color:#ffffcc; color:green; width:515.222px" %)
655 |=(% colspan="3" style="width: 512px;" %)AT+DCS
656 |(% style="width:165px" %)**Command Example**|(% style="width:239px" %)**Function**|(% style="width:107px" %)**Response**
657 |(% style="width:165px" %)AT+DCS=?|(% style="width:239px" %)Get the ETSI Duty Cycle setting.|(% style="width:107px" %)1(((
658 OK
659 )))
660 |(% style="width:165px" %)AT+DCS=1|(% style="width:239px" %)Set the ETSI Duty Cycle setting.|(% style="width:107px" %)OK(((
661
662 )))
663
664 == 7.4 Data Rate ==
665
666 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
667
668 {{info}}
669 **AT Command: AT+DR**
670 {{/info}}
671
672 (% border="1" style="background-color:#ffffcc; color:green; width:466.222px" %)
673 |=(% colspan="3" style="width: 463px;" %)AT+DR
674 |(% style="width:156px" %)**Command Example**|(% style="width:167px" %)**Function**|(% style="width:140px" %)**Response**
675 |(% style="width:156px" %)AT+DR=?|(% style="width:167px" %)Get the Data Rate.|(% style="width:140px" %)5(((
676 OK
677 )))
678 |(% style="width:156px" %)AT+DR=2|(% style="width:167px" %)Set the Data Rate.|(% style="width:140px" %)OK(((
679
680 )))
681
682 {{info}}
683 **Downlink Command: 0x2200aaFF**
684 {{/info}}
685
686
687 If the downlink payload=220001FF, it means setting the data rate to 1, while type code is 22 00 aa FF.
688
689 * **Example 1**: Downlink Payload: **220001FF** ~/~/ Set AT+DR=1.
690 * **Example 2**: Downlink Payload: **220000FF** ~/~/ Set AT+DR=0.
691
692 == 7.5 Frame Counter Downlink ==
693
694 Feature: Get or Set the Frame Counter Downlink.
695
696 {{info}}
697 **AT Command:AT+FCD**
698 {{/info}}
699
700 (% border="1" style="background-color:#ffffcc; color:green; width:693.222px" %)
701 |=(% colspan="3" style="width: 690px;" %)AT+FCD
702 |(% style="width:162px" %)**Command Example**|(% style="width:258px" %)**Function**|(% style="width:269px" %)**Response**
703 |(% style="width:162px" %)AT+FCD=?|(% style="width:258px" %)Get the Frame Counter Downlink.|(% style="width:269px" %)0(((
704 OK
705 )))
706 |(% style="width:162px" %)AT+FCD=10|(% style="width:258px" %)Set the Frame Counter Downlink.|(% style="width:269px" %)(System will write new value to FCD)(((
707 OK
708
709
710 )))
711
712 == 7.6 Frame Counter Uplink ==
713
714 Feature: Get or Set the Frame Counter Uplink.
715
716 {{info}}
717 **AT Command:AT+FCU**
718 {{/info}}
719
720 (% border="1" style="background-color:#ffffcc; color:green; width:534.222px" %)
721 |=(% colspan="3" style="width: 531px;" %)AT+FCU
722 |(% style="width:177px" %)**Command Example**|(% style="width:239px" %)**Function**|(% style="width:113px" %)**Response**
723 |(% style="width:177px" %)AT+FCU=?|(% style="width:239px" %)Get the Frame Counter Uplink.|(% style="width:113px" %)0(((
724 OK
725 )))
726 |(% style="width:177px" %)AT+FCU=10|(% style="width:239px" %)Set the Frame Counter Uplink.|(% style="width:113px" %)OK(((
727
728 )))
729
730 == 7.7 Join Accept Delay1 ==
731
732 Feature: Get or Set the Join Accept Delay between the end of the Tx and the Join Rx Window 1 in ms.
733
734 {{info}}
735 **AT Command:AT+JN1DL**
736 {{/info}}
737
738 (% border="1" style="background-color:#ffffcc; color:green; width:537.222px" %)
739 |=(% colspan="3" style="width: 534px;" %)AT+JN1DL
740 |(% style="width:164px" %)**Command Example**|(% style="width:229px" %)**Function**|(% style="width:140px" %)**Response**
741 |(% style="width:164px" %)AT+JN1DL=?|(% style="width:229px" %)Get the Join Accept Delay.|(% style="width:140px" %)5000(((
742 OK
743 )))
744 |(% style="width:164px" %)AT+JN1DL=10000|(% style="width:229px" %)Set the Join Accept Delay.|(% style="width:140px" %)OK(((
745
746 )))
747
748 == 7.8 Join Accept Delay2 ==
749
750 Feature: Get or Set the Join Accept Delay between the end of the Tx and the Join Rx Window 2 in ms.
751
752 {{info}}
753 **AT Command:AT+JN2DL**
754 {{/info}}
755
756 (% border="1" style="background-color:#ffffcc; color:green; width:538.222px" %)
757 |=(% colspan="3" style="width: 535px;" %)AT+JN2DL
758 |(% style="width:160px" %)**Command Example**|(% style="width:228px" %)**Function**|(% style="width:146px" %)**Response**
759 |(% style="width:160px" %)AT+JN2DL=?|(% style="width:228px" %)Get the Join Accept Delay.|(% style="width:146px" %)6000(((
760 OK
761 )))
762 |(% style="width:160px" %)AT+JN2DL=20000|(% style="width:228px" %)Set the Join Accept Delay.|(% style="width:146px" %)OK(((
763
764 )))
765
766 == 7.9 Public Network Mode ==
767
768 Feature: Get or Set the public network mode. (0: off, 1: on)
769
770 {{info}}
771 **AT Command:AT+PNM**
772 {{/info}}
773
774 (% border="1" style="background-color:#ffffcc; color:green; width:667.222px" %)
775 |=(% colspan="3" style="width: 664px;" %)AT+PNM
776 |(% style="width:166px" %)**Command Example**|(% style="width:225px" %)**Function**|(% style="width:272px" %)**Response**
777 |(% style="width:166px" %)AT+PNM=?|(% style="width:225px" %)Get the public network mode.|(% style="width:272px" %)1(((
778 OK
779 )))
780 |(% style="width:166px" %)AT+PNM=1|(% style="width:225px" %)Set the public network mode.|(% style="width:272px" %)(System will write new value to PNM)(((
781 OK
782
783
784 )))
785
786 == 7.10 Receive Delay1 ==
787
788 Feature: Get or Set the delay between the end of the Tx and the Rx Window 1 in ms
789
790 {{info}}
791 **AT Command:AT+RX1DL**
792 {{/info}}
793
794 (% border="1" style="background-color:#ffffcc; color:green; width:408.222px" %)
795 |=(% colspan="3" style="width: 405px;" %)AT+RX1DL
796 |(% style="width:155px" %)**Command Example**|(% style="width:128px" %)**Function**|(% style="width:122px" %)**Response**
797 |(% style="width:155px" %)AT+RX1DL=?|(% style="width:128px" %)Get the delay.|(% style="width:122px" %)1000(((
798 OK
799 )))
800 |(% style="width:155px" %)AT+RX1DL=1500|(% style="width:128px" %)Set the delay.|(% style="width:122px" %)OK(((
801
802 )))
803
804 == 7.11 Receive Delay2 ==
805
806 Feature: Get or Set the delay between the end of the Tx and the Rx Window 2 in ms
807
808 {{info}}
809 **AT Command:AT+RX2DL**
810 {{/info}}
811
812 (% border="1" style="background-color:#ffffcc; color:green; width:481.222px" %)
813 |=(% colspan="3" style="width: 478px;" %)AT+RX2DL
814 |(% style="width:175px" %)**Command Example**|(% style="width:152px" %)**Function**|(% style="width:150px" %)**Response**
815 |(% style="width:175px" %)AT+RX2DL=?|(% style="width:152px" %)Get the delay.|(% style="width:150px" %)2000(((
816 OK
817 )))
818 |(% style="width:175px" %)AT+RX2DL=2500|(% style="width:152px" %)Set the delay.|(% style="width:150px" %)OK(((
819
820 )))
821
822 == 7.12 Rx2 Window Data Rate ==
823
824 Feature: Get or Set the Rx2 window data rate (0-7 corresponding to DR_X)
825
826 {{info}}
827 **AT Command:AT+RX2DR**
828 {{/info}}
829
830 (% border="1" style="background-color:#ffffcc; color:green; width:525.222px" %)
831 |=(% colspan="3" style="width: 522px;" %)AT+RX2DR
832 |(% style="width:160px" %)**Command Example**|(% style="width:232px" %)**Function**|(% style="width:130px" %)**Response**
833 |(% style="width:160px" %)AT+RX2DR=?|(% style="width:232px" %)Get the Rx2 window data rate.|(% style="width:130px" %)2(((
834 OK
835 )))
836 |(% style="width:160px" %)AT+RX2DR=6|(% style="width:232px" %)Set the Rx2 window data rate.|(% style="width:130px" %)OK(((
837
838 )))
839
840 == 7.13 Rx2 Window Frequency ==
841
842 Feature: Get or Set the Rx2 window frequency
843
844 {{info}}
845 **AT Command:AT+RX2FQ**
846 {{/info}}
847
848 (% border="1" style="background-color:#ffffcc; color:green; width:587.222px" %)
849 |=(% colspan="3" style="width: 584px;" %)AT+RX2FQ
850 |(% style="width:183px" %)**Command Example**|(% style="width:240px" %)**Function**|(% style="width:160px" %)**Response**
851 |(% style="width:183px" %)AT+RX2FQ=?|(% style="width:240px" %)Get the Rx2 window frequency.|(% style="width:160px" %)434665000(((
852 OK
853 )))
854 |(% style="width:183px" %)AT+RX2FQ=434665000|(% style="width:240px" %)Set the Rx2 window frequency.|(% style="width:160px" %)OK(((
855
856 )))
857
858 == 7.14 Transmit Power ==
859
860 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. )
861
862 {{info}}
863 **AT Command:AT+TXP**
864 {{/info}}
865
866 (% border="1" style="background-color:#ffffcc; color:green; width:465.222px" %)
867 |=(% colspan="3" style="width: 462px;" %)AT+TXP
868 |(% style="width:161px" %)**Command Example**|(% style="width:189px" %)**Function**|(% style="width:112px" %)**Response**
869 |(% style="width:161px" %)AT+TXP=?|(% style="width:189px" %)Get the Transmit Power.|(% style="width:112px" %)0(((
870 OK
871 )))
872 |(% style="width:161px" %)AT+TXP=1|(% style="width:189px" %)Set the Transmit Power.|(% style="width:112px" %)OK(((
873
874 )))
875
876 Downlink Payload. The 4th byte of 0x22 downlink.
877
878 If the downlink payload=22000100, it means setting the TXP to 0.
879
880 * **Example 1**: Downlink Payload: **22000102** ~/~/ Set AT+TXP=2.
881 * **Example 2**: Downlink Payload: **220000FF** ~/~/ Set AT+TXP=0.
882
883 == 7.15 RSSI of the Last Received Packet ==
884
885 Feature: Get or Set the Rx2 window frequency
886
887 {{info}}
888 **AT Command:AT+RSSI**
889 {{/info}}
890
891 (% border="1" style="background-color:#ffffcc; color:green; width:557.222px" %)
892 |=(% colspan="3" style="width: 554px;" %)AT+RSSI
893 |(% style="width:164px" %)**Command Example**|(% style="width:289px" %)**Function**|(% style="width:100px" %)**Response**
894 |(% style="width:164px" %)AT+RSSI=?|(% style="width:289px" %)Get the RSSI of the last received packet.|(% style="width:100px" %)0(((
895 OK
896 )))
897
898 == 7.16 SNR of the Last Received Packet ==
899
900 Feature: Get the SNR of the last received packet
901
902 {{info}}
903 **AT Command:AT+SNR**
904 {{/info}}
905
906 (% border="1" style="background-color:#ffffcc; color:green; width:571.222px" %)
907 |=(% colspan="3" style="width: 568px;" %)AT+SNR
908 |(% style="width:164px" %)**Command Example**|(% style="width:290px" %)**Function**|(% style="width:113px" %)**Response**
909 |(% style="width:164px" %)AT+SNR=?|(% style="width:290px" %)Get the RSSI of the last received packet.|(% style="width:113px" %)0(((
910 OK
911 )))
912
913 == 7.17 Application Port ==
914
915 Feature: Get or set the application port.
916
917 {{info}}
918 **AT Command: AT+PORT**
919 {{/info}}
920
921 (% border="1" style="background-color:#ffffcc; color:green; width:500.222px" %)
922 |=(% colspan="3" style="width: 497px;" %)AT+PORT
923 |(% style="width:157px" %)**Command Example**|(% style="width:204px" %)**Function**|(% style="width:135px" %)**Response**
924 |(% style="width:157px" %)AT+PORT=?|(% style="width:204px" %)Get the application port|(% style="width:135px" %)21(((
925 OK
926 )))
927 |(% style="width:157px" %)AT+PORT=21|(% style="width:204px" %)Set the application port|(% style="width:135px" %)OK
928
929 {{info}}
930 **Downlink Command: 0x23**
931 {{/info}}
932
933 Format: Command Code (0x23) followed by 1 bytes port value.
934
935 If the downlink payload=2301, it means set the application port to 1, while type code is 23.
936
937 * **Example 1**: Downlink Payload: **2301** ~/~/ set the application port to 1
938 * **Example 2**: Downlink Payload:** 2305** ~/~/ set the application port to 5
939
940 == 7.18 Single Channel Mode ==
941
942 Feature:Get or Set Frequency (Unit: Hz) for Single Channel Mode.
943
944 {{info}}
945 **AT Command: AT+CHS**
946 {{/info}}
947
948 (% border="1" style="background-color:#ffffcc; color:green; width:603.222px" %)
949 |=(% colspan="3" style="width: 600px;" %)AT+CHS
950 |(% style="width:182px" %)**Command Example**|(% style="width:295px" %)**Function**|(% style="width:122px" %)**Response**
951 |(% style="width:182px" %)AT+CHS=?|(% style="width:295px" %)Get Frequency for Single Channel Mode|(% style="width:122px" %)0(((
952 OK
953 )))
954 |(% style="width:182px" %)AT+CHS=868100000|(% style="width:295px" %)Set Frequency for Single Channel Mode|(% style="width:122px" %)OK
955
956 == 7.19 Eight Channel Mode ==
957
958 Feature: Get or Set eight channels mode,Only for US915,AU915,CN470.
959
960 {{info}}
961 **AT Command: AT+CHE**
962 {{/info}}
963
964 (% border="1" style="background-color:#ffffcc; color:green; width:710.222px" %)
965 |=(% colspan="3" style="width: 707px;" %)AT+CHE
966 |(% style="width:160px" %)**Command Example**|(% style="width:198px" %)**Function**|(% style="width:349px" %)**Response**
967 |(% style="width:160px" %)AT+CHE=?|(% style="width:198px" %)Get eight channels mode|(% style="width:349px" %)1(((
968 902.3 902.5 902.7 902.9 903.1 903.3 903.5 903.7
969
970 OK
971 )))
972 |(% style="width:160px" %)AT+CHE=1|(% style="width:198px" %)Set eight channels mode|(% style="width:349px" %)OK
973
974 {{info}}
975 **Downlink Command: 0x24**
976 {{/info}}
977
978 Format: Command Code (0x24) followed by 1 bytes channel value.
979
980 If the downlink payload=2401, it means set channel mode to 1, while type code is 24.
981
982 * **Example 1**: Downlink Payload: 2401 ~/~/ set channel mode to 1
983 * **Example 2**: Downlink Payload: 2405 ~/~/ set channel mode to 5
984
985 == 7.20 Get or Set RXwindows1 timeout ==
986
987 Feature:Get or Set the number of symbols to detect and timeout from RXwindow1(0 to 255).
988
989 {{info}}
990 **AT Command: AT+RX1WTO**
991 {{/info}}
992
993 (% border="1" style="background-color:#ffffcc; color:green; width:460.222px" %)
994 |=(% colspan="3" style="width: 457px;" %)AT+ RX1WTO
995 |(% style="width:163px" %)**Command Example**|(% style="width:201px" %)**Function**|(% style="width:93px" %)**Response**
996 |(% style="width:163px" %)AT+RX1WTO=?|(% style="width:201px" %)Get RXwindows1 timeout|(% style="width:93px" %)14(((
997 OK
998 )))
999 |(% style="width:163px" %)AT+RX1WTO=60|(% style="width:201px" %)Set RXwindows1 timeout|(% style="width:93px" %)OK
1000
1001 (((
1002 **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.
1003 )))
1004
1005 [[image:image-20220526162535-1.png]]
1006
1007 (((
1008 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.
1009
1010
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"]]