Version 39.1 by Bei Jinggeng on 2022/06/10 10:47

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