Version 38.78 by Xiaoling on 2022/05/31 09:19

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