Version 50.2 by Xiaoling on 2022/07/13 11:39

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