Version 34.1 by Xiaoling on 2022/05/27 18:02

Show last authors
1 **Contents:**
2
3 {{toc/}}
4
5
6
7 = 1. Introduction =
8
9 Dragino LoRaWAN End Node support two types of AT Commands and Downlink Commands:
10
11 * **Common Commands:** They should be available for each sensor, such as: change uplink interval, reset device.
12 * **Sensor Related Commands:** Only for special sensor, such as control relay, poll RS485 device.
13
14 (((
15 **This page shows the common commands since Dragino LoRaWAN stack DR-LWS-005. Make sure the end node support stack higher than DR-LWS-005 before checking this page.**
16
17 )))
18
19 = 2. How to use AT Commands or Downlink command =
20
21 * For AT Command , See Devices User Manual for Device. The user manual can be found in each product page of [[Dragino Official Website>>url:http://www.dragino.com/]]
22 * For LoRaWAN Downlink: The gateway transfer downlink command in HEX format. This page shows the HEX format downlink code for each command. but some servers use base64 as downlink code. Below are reference for how to use downlink command:
23 ** Use HEX format to send a downlink: [[TTN v3>>doc:Main.Notes for TTN.WebHome]]
24 ** Use Base64 format to send a downlink: [[Chirpstack>>doc:Main.Notes for ChirpStack.WebHome]].
25 ** See use note for more serves [[Servers Note>>doc:Main.WebHome]](IoT LoRaWAN Server)
26
27 = 3. Support End Node and firmware version =
28
29 (% border="1" style="background-color:#ffffcc; color:green; width:966px" %)
30 |=(% colspan="3" style="width: 963px;" %)(((
31 Dragino STM32 base hardware Firmware / LoRaWAN stack list
32 )))
33 |(% style="width:187px" %)(((
34 **Model**
35 )))|(% style="width:330px" %)(((
36 **Description**
37 )))|(% style="width:445px" %)(((
38 **Firmware Version <~-~-> Stack Version**
39 )))
40 |(% style="width:187px" %)(((
41 [[LSN50-v1>>url:http://www.dragino.com/products/lora-lorawan-end-node/item/128-lsn50.html]], [[LSN50-V2>>url:http://www.dragino.com/products/lora-lorawan-end-node/item/155-lsn50-v2.html]],
42 )))|(% style="width:330px" %)(((
43 Open Source Generic LoRaWAN Sensor Node
44 )))|(% style="width:445px" %)(((
45 (((
46 LSN50 v1.6.0 <~-~-> DR-LWS-003;
47 )))
48
49 (((
50 (((
51 LSN50 v1.7.0 <~-~-> DR-LWS-005; ~-~-> Support since this version
52 )))
53 )))
54 )))
55 |(% style="width:187px" %)(((
56 [[LGT92>>url:http://www.dragino.com/products/lora-lorawan-end-node/item/142-lgt-92.html]],
57 )))|(% style="width:330px" %)(((
58 LoRaWAN GPS Tracker
59 )))|(% style="width:445px" %)(((
60 (((
61 LGT92 v1.6.3 <~-~-> DR-LWS-003;
62 )))
63
64 (((
65 (((
66 LGT92 v1.6.4 <~-~-> DR-LWS-005;~-~-> Support since this version
67 )))
68 )))
69 )))
70 |(% style="width:187px" %)(((
71 [[LBT1>>url:http://www.dragino.com/products/lora-lorawan-end-node/item/165-lbt1.html]],
72 )))|(% style="width:330px" %)(((
73 LoRaWAN BLE Indoor Tracker
74 )))|(% style="width:445px" %)(((
75 LBT1 v1.0 <~-~-> DR-LWS-005;
76 )))
77 |(% style="width:187px" %)(((
78 [[RS485-LN>>url:http://www.dragino.com/products/lora-lorawan-end-node/item/154-rs485-ln.html]],
79 )))|(% style="width:330px" %)(((
80 LoRaWAN RS485 Modbus Converter
81 )))|(% style="width:445px" %)(((
82 RS485-LN v1.3 <~-~-> DR-LWS-005;
83 )))
84 |(% style="width:187px" %)(((
85 [[LHT65>>url:http://www.dragino.com/products/lora-lorawan-end-node/item/151-lht65.html]],
86 )))|(% style="width:330px" %)(((
87 LoRaWAN Temperature & Humidity Sensor
88 )))|(% style="width:445px" %)(((
89 (((
90 LHT65 v1.7 <~-~-> DR-LWS-003;
91 )))
92
93 (((
94 (((
95 LHT65 v1.8.0 <~-~-> DR-LWS-005;~-~-> Support since this version
96 )))
97 )))
98 )))
99
100 = 4. System Management Commands =
101
102 == 4.1 Change Uplink Interval ==
103
104 Feature: Change LoRaWAN End Node Transmit Interval.
105
106 (% class="box infomessage" %)
107 (((
108 **AT Command: AT+TDC**
109 )))
110
111 (% border="1" style="background-color:#ffffcc; color:green; width:727.222px" %)
112 |=(% colspan="3" style="width: 724px;" %)AT+TDC
113 |(% style="width:165px" %)**Command Example**|(% style="width:227px" %)**Function**|(% style="width:329px" %)**Response**
114 |(% style="width:165px" %)AT+TDC=?|(% style="width:227px" %)Show current transmit Interval|(% style="width:329px" %)30000(((
115 OK
116
117 the interval is 30000ms = 30s
118 )))
119 |(% style="width:165px" %)AT+TDC=60000|(% style="width:227px" %)Set Transmit Interval|(% style="width:329px" %)OK(((
120 Set transmit interval to 60000ms = 60 seconds
121 )))
122
123 {{info}}
124 **Downlink Command: 0x01**
125 {{/info}}
126
127 (((
128 Format: Command Code (0x01) followed by 3 bytes time value.
129 )))
130
131 (((
132 If the downlink payload=0100003C, it means set the END Node’s Transmit Interval to 0x00003C=60(S), while type code is 01.
133 )))
134
135 * **Example 1**: Downlink Payload:** 0100001E** ~/~/ Set Transmit Interval (TDC) = 30 seconds
136 * **Example 2**: Downlink Payload:** 0100003C** ~/~/ Set Transmit Interval (TDC) = 60 seconds
137
138 == 4.2 Reboot End Node ==
139
140 Feature: Reboot End Node to perform a new OTAA or ABP Join.
141
142 {{info}}
143 **AT Command: ATZ**
144 {{/info}}
145
146 (% border="1" style="background-color:#ffffcc; color:green; width:727.222px" %)
147 |=(% colspan="3" %)ATZ: Trig a reset of the MCU
148 |**Command Example**|**Function**|**Response**
149 |ATZ|Reset MCU|(((
150 Device reset and show booting info
151
152 LSN50 Device/LoRa ST Module
153
154 Image Version: XX
155
156 Frequency Band: XX
157
158 DevEui= XX XX XX XX XX XX XX XX
159
160 <followed by the Tx and Rx information>
161 )))
162
163 {{info}}
164 **Downlink Command: 0x04**
165 {{/info}}
166
167 (((
168 Format: Command Code (0x04) followed by FF.
169 )))
170
171 (((
172 If the downlink payload=**04FF**, the end node will reboot.
173
174
175 )))
176
177 == 4.3 Reset to factory Default ==
178
179 Feature: Reset the parameters to Factory Default, factory default value depends on the firmware settings, the OTAA and ABP keys will reserve after this command.
180
181 {{info}}
182 **AT Command: AT+FDR**
183 {{/info}}
184
185 (% border="1" style="background-color:#ffffcc; color:green; width:831.222px" %)
186 |=(% colspan="3" style="width: 828px;" %)Reset to factory default
187 |(% style="width:181px" %)**Command Example**|(% style="width:181px" %)**Function**|(% style="width:465px" %)**Response**
188 |(% style="width:181px" %)AT+FDR|(% style="width:181px" %)Reset to factory default|(% style="width:465px" %)(((
189 Device reset to factory default parameters and show booting info
190
191 LSN50 Device/LoRa ST Module
192
193 Image Version: XX
194
195 Frequency Band: XX
196
197 DevEui= XX XX XX XX XX XX XX XX
198
199 Please set the parameters or reset Device to apply change
200 )))
201
202 {{info}}
203 **Downlink Command: 0x04**
204 {{/info}}
205
206 (((
207 Format: Command Code (0x04) followed by FE.
208 )))
209
210 (((
211 If the downlink payload=**04FE**, Reset Parameters to Factory Default, Keys Reserve.
212 )))
213
214
215 == 4.4 Show Firmware Version ==
216
217 Feature: Show firmware version. No downlink command yet.
218
219 {{info}}
220 **AT Command: AT+VER**
221 {{/info}}
222
223 (% border="1" style="background-color:#ffffcc; color:green; width:586px" %)
224 |=(% colspan="3" style="width: 583px;" %)AT+VER: Image Version and Frequency Band
225 |(% style="width:170px" %)**Command Example**|(% style="width:300px" %)**Function**|(% style="width:113px" %)**Response**
226 |(% style="width:170px" %)AT+VER=?|(% style="width:300px" %)Show Image version and Frequency Band|(% style="width:113px" %)(((
227 1.3 EU868
228
229 OK
230 )))
231
232 {{info}}
233 **Downlink Command: 0x26 (Valid in 006 stack)**
234 {{/info}}
235
236 (((
237 Downlink Format: 0x26
238 )))
239
240 (((
241 Device will reply with firmware version info, device info. frequency band info. detail please check device user manual. Total 5 bytes Example: If device is of firmware version 1.1.0 Upload: xx ~-~- yy ~-~- zz ~-~- 110 total 5 bytes
242 )))
243
244 (((
245 **xx: Software Type:**
246 )))
247
248 * 0x00 01: LGT92 Version
249 * 0x00 02: LBT1
250 * 0x00 03: LSE01/LDDS75/LDDS20/LSPH01/LLMS01/LSNPK01
251
252 (((
253 **yy: Frequency Band:**
254 )))
255
256 * 0x01: EU868
257 * 0x02: US915
258 * 0x03: IN865
259 * 0x04: AU915
260 * 0x05: KZ865
261 * 0x06: RU864
262 * 0x07: AS923
263 * 0x08: AS923-1
264 * 0x09: AS923-2
265 * 0xa0: AS923-3
266
267 (((
268 **zz: Subband**
269 )))
270
271 firmware version: v1.1.0 ~-~-> 110
272
273
274 == 4.5 Show System Configure ==
275
276 Feature: Show All configure. No downlink command yet.
277
278 {{info}}
279 **AT Command: AT+CFG**
280 {{/info}}
281
282 (% border="1" style="background-color:#ffffcc; color:green; width:599.222px" %)
283 |=(% colspan="3" style="width: 596px;" %)AT+CFG: Print all configurations
284 |(% style="width:160px" %)**Command Example**|(% style="width:154px" %)**Function**|(% style="width:280px" %)**Response**
285 |(% style="width:160px" %)AT+CFG|(% style="width:154px" %)Show all configures|(% style="width:280px" %)(((
286 AT+DEUI = XX XX XX XX XX XX XX XX
287
288 AT+DADDR=XXXXXXXX
289
290 ……….
291
292 AT+RX2WTO=X
293
294 AT+CHS=868100000
295
296 OK
297 )))
298
299
300 = 5. Keys, IDs and EUIs management =
301
302 == 5.1 Application EUI ==
303
304 Feature: Get or Set the Application EUI.
305
306 {{info}}
307 **AT Command: AT+APPEUI**
308 {{/info}}
309
310 (% border="1" style="background-color:#ffffcc; color:green; width:686.222px" %)
311 |=(% colspan="3" style="width: 683px;" %)AT+APPEUI
312 |(% style="width:305px" %)**Command Example**|(% style="width:186px" %)**Function**|(% style="width:191px" %)**Response**
313 |(% style="width:305px" %)AT+APPEUI=?|(% style="width:186px" %)Get the Application EUI|(% style="width:191px" %)00 b3 d5 00 00 00 00 00(((
314 OK
315 )))
316 |(% style="width:305px" %)AT+APPEUI=00 b3 d5 7e f0 00 4d 34|(% style="width:186px" %)Set the Application EUI|(% style="width:191px" %)OK
317
318
319 == 5.2 Application Key ==
320
321 Feature: Get or Set the Application Key.
322
323 {{info}}
324 **AT Command: AT+APPKEY**
325 {{/info}}
326
327 (% border="1" style="background-color:#ffffcc; color:green; width:976.222px" %)
328 |=(% colspan="3" style="width: 973px;" %)AT+APPKEY
329 |(% style="width:441px" %)**Command Example**|(% style="width:180px" %)**Function**|(% style="width:350px" %)**Response**
330 |(% 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(((
331 OK
332 )))
333 |(% 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
334
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
375 == 5.5 Device EUI ==
376
377 Feature: Get or Set the Device EUI.
378
379 {{info}}
380 **AT Command: AT+DEUI**
381 {{/info}}
382
383 (% border="1" style="background-color:#ffffcc; color:green; width:1035.22px" %)
384 |=(% colspan="3" style="width: 1032px;" %)AT+DEUI
385 |(% style="width:250px" %)**Command Example**|(% style="width:147px" %)**Function**|(% style="width:634px" %)**Response**
386 |(% style="width:250px" %)AT+DEUI=?|(% style="width:147px" %)Get the Device EUI.|(% style="width:634px" %)00 44 34 22 33 45 55 55(((
387 OK
388 )))
389 |(% 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)(((
390 OK
391 )))
392
393
394
395 == 5.6 Network ID ==
396
397 Feature: Get or Set the Network ID.(You can enter this command change only after successful network connection)
398
399 {{info}}
400 **AT Command: AT+NWKID**
401 {{/info}}
402
403 (% border="1" style="background-color:#ffffcc; color:green; width:448.222px" %)
404 |=(% colspan="3" style="width: 445px;" %)AT+NWKID
405 |(% style="width:191px" %)**Command Example**|(% style="width:153px" %)**Function**|(% style="width:101px" %)**Response**
406 |(% style="width:191px" %)AT+NWKID=?|(% style="width:153px" %)Get the Network ID.|(% style="width:101px" %)a8 40 41 ff(((
407 OK
408 )))
409 |(% style="width:191px" %)AT+NWKID=A8 40 41 FF|(% style="width:153px" %)Set the Network ID.|(% style="width:101px" %)OK
410
411 == 5.7 Network Session Key ==
412
413 Feature: Get or Set the Network Session Key
414
415 {{info}}
416 **AT Command: AT+NWKSKEY**
417 {{/info}}
418
419 (% border="1" style="background-color:#ffffcc; color:green; width:1017.22px" %)
420 |=(% colspan="3" style="width: 1014px;" %)AT+NWKSKEY
421 |(% style="width:455px" %)**Command Example**|(% style="width:215px" %)**Function**|(% style="width:343px" %)**Response**
422 |(% 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(((
423 OK
424 )))
425 |(% 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
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"]]