Version 38.32 by Xiaoling on 2022/05/31 09:10

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