Version 38.74 by Xiaoling on 2022/05/31 09:18

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