Version 50.19 by Xiaoling on 2022/07/13 13:58

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 = 3. Support End Node and firmware version =
31
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
107 == 4.1 Change Uplink Interval ==
108
109
110 Feature: Change LoRaWAN End Node Transmit Interval.
111
112
113 (% style="color:blue" %)**AT Command: AT+TDC**
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 (((
128
129
130 (% style="color:blue" %)**Downlink Command: 0x01**
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
143 == 4.2 Reboot End Node ==
144
145
146 Feature: Reboot End Node to perform a new OTAA or ABP Join.
147
148
149 (% style="color:blue" %)**AT Command: ATZ**
150
151 (% border="1" style="background-color:#ffffcc; color:green; width:727.222px" %)
152 |=(% colspan="3" %)ATZ: Trig a reset of the MCU
153 |**Command Example**|**Function**|**Response**
154 |ATZ|Reset MCU|(((
155 Device reset and show booting info
156
157 LSN50 Device/LoRa ST Module
158
159 Image Version: XX
160
161 Frequency Band: XX
162
163 DevEui= XX XX XX XX XX XX XX XX
164
165 <followed by the Tx and Rx information>
166 )))
167
168 (% style="color:blue" %)**Downlink Command: 0x04**
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
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
186 (% style="color:blue" %)**AT Command: AT+FDR**
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 (% style="color:blue" %)**Downlink Command: 0x04**
206
207 (((
208 Format: Command Code (0x04) followed by FE.
209 )))
210
211 (((
212 If the downlink payload=**04FE**, Reset Parameters to Factory Default, Keys Reserve.
213 )))
214
215
216 == 4.4 Show Firmware Version ==
217
218
219 Feature: Show firmware version. No downlink command yet.
220
221
222 (% style="color:blue" %)**AT Command: AT+VER**
223
224 (% border="1" style="background-color:#ffffcc; color:green; width:586px" %)
225 |=(% colspan="3" style="width: 583px;" %)AT+VER: Image Version and Frequency Band
226 |(% style="width:170px" %)**Command Example**|(% style="width:300px" %)**Function**|(% style="width:113px" %)**Response**
227 |(% style="width:170px" %)AT+VER=?|(% style="width:300px" %)Show Image version and Frequency Band|(% style="width:113px" %)(((
228 1.3 EU868
229
230 OK
231 )))
232
233 (% style="color:blue" %)**Downlink Command: 0x26 (Valid in 006 stack)**
234
235 (((
236 Downlink Format: 0x26
237 )))
238
239 (((
240 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
241 )))
242
243 (((
244
245
246
247 **xx: Software Type:**
248 )))
249
250 * 0x00 01: LGT92 Version
251 * 0x00 02: LBT1
252 * 0x00 03: LSE01/LDDS75/LDDS20/LSPH01/LLMS01/LSNPK01
253
254 (((
255
256
257
258 **yy: Frequency Band:**
259 )))
260
261 * 0x01: EU868
262 * 0x02: US915
263 * 0x03: IN865
264 * 0x04: AU915
265 * 0x05: KZ865
266 * 0x06: RU864
267 * 0x07: AS923
268 * 0x08: AS923-1
269 * 0x09: AS923-2
270 * 0xa0: AS923-3
271
272 (((
273
274
275
276 **zz: Subband**
277 )))
278
279 firmware version: v1.1.0 ~-~-> 110
280
281
282 == 4.5 Show System Configure ==
283
284
285 Feature: Show All configure. No downlink command yet.
286
287
288 (% style="color:blue" %)**AT Command: AT+CFG**
289
290 (% border="1" style="background-color:#ffffcc; color:green; width:599.222px" %)
291 |=(% colspan="3" style="width: 596px;" %)AT+CFG: Print all configurations
292 |(% style="width:160px" %)**Command Example**|(% style="width:154px" %)**Function**|(% style="width:280px" %)**Response**
293 |(% style="width:160px" %)AT+CFG|(% style="width:154px" %)Show all configures|(% style="width:280px" %)(((
294 AT+DEUI = XX XX XX XX XX XX XX XX
295
296 AT+DADDR=XXXXXXXX
297
298 ……….
299
300 AT+RX2WTO=X
301
302 AT+CHS=868100000
303
304 OK
305 )))
306
307
308 = 5. Keys, IDs and EUIs management =
309
310
311 == 5.1 Application EUI ==
312
313
314 Feature: Get or Set the Application EUI.
315
316
317 (% style="color:blue" %)**AT Command: AT+APPEUI**
318
319 (% border="1" style="background-color:#ffffcc; color:green; width:686.222px" %)
320 |=(% colspan="3" style="width: 683px;" %)AT+APPEUI
321 |(% style="width:305px" %)**Command Example**|(% style="width:186px" %)**Function**|(% style="width:191px" %)**Response**
322 |(% style="width:305px" %)AT+APPEUI=?|(% style="width:186px" %)Get the Application EUI|(% style="width:191px" %)00 b3 d5 00 00 00 00 00(((
323 OK
324 )))
325 |(% style="width:305px" %)AT+APPEUI=00 b3 d5 7e f0 00 4d 34|(% style="width:186px" %)Set the Application EUI|(% style="width:191px" %)OK
326
327
328 == 5.2 Application Key ==
329
330
331 Feature: Get or Set the Application Key.
332
333
334 (% style="color:blue" %)**AT Command: AT+APPKEY**
335
336 (% border="1" style="background-color:#ffffcc; color:green; width:976.222px" %)
337 |=(% colspan="3" style="width: 973px;" %)AT+APPKEY
338 |(% style="width:441px" %)**Command Example**|(% style="width:180px" %)**Function**|(% style="width:350px" %)**Response**
339 |(% 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(((
340 OK
341 )))
342 |(% 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
343
344
345 == 5.3 Application Session Key ==
346
347
348 Feature: Get or Set the Application Session Key.
349
350
351 (% style="color:blue" %)**AT Command: AT+APPSKEY**
352
353 (% border="1" style="background-color:#ffffcc; color:green; width:1040.22px" %)
354 |=(% colspan="3" style="width: 1037px;" %)AT+APPSKEY
355 |(% style="width:451px" %)**Command Example**|(% style="width:231px" %)**Function**|(% style="width:354px" %)**Response**
356 |(% 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(((
357 OK
358 )))
359 |(% 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)(((
360 OK
361 )))
362
363
364 == 5.4 Device Address ==
365
366
367 Feature: Get or Set the Device Address.
368
369
370 (% style="color:blue" %)**AT Command: AT+DADDR**
371
372 (% border="1" style="background-color:#ffffcc; color:green; width:795.222px" %)
373 |=(% colspan="3" style="width: 792px;" %)AT+DADDR
374 |(% style="width:192px" %)**Command Example**|(% style="width:241px" %)**Function**|(% style="width:359px" %)**Response**
375 |(% style="width:192px" %)AT+DADDR=?|(% style="width:241px" %)Get the Application Session Key.|(% style="width:359px" %)(While Error in format, return AT_PARAM_ERROR)(((
376 A8 40 41 FF
377
378 OK
379 )))
380 |(% style="width:192px" %)AT+DADDR=A8 40 41 FF|(% style="width:241px" %)Set the Application Session Key.|(% style="width:359px" %)OK
381
382
383 == 5.5 Device EUI ==
384
385
386 Feature: Get or Set the Device EUI.
387
388
389 (% style="color:blue" %)**AT Command: AT+DEUI**
390
391 (% border="1" style="background-color:#ffffcc; color:green; width:1035.22px" %)
392 |=(% colspan="3" style="width: 1032px;" %)AT+DEUI
393 |(% style="width:250px" %)**Command Example**|(% style="width:147px" %)**Function**|(% style="width:634px" %)**Response**
394 |(% style="width:250px" %)AT+DEUI=?|(% style="width:147px" %)Get the Device EUI.|(% style="width:634px" %)00 44 34 22 33 45 55 55(((
395 OK
396 )))
397 |(% 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)(((
398 OK
399 )))
400
401
402 == 5.6 Network ID ==
403
404
405 Feature: Get or Set the Network ID.(You can enter this command change only after successful network connection)
406
407
408 (% style="color:blue" %)**AT Command: AT+NWKID**
409
410 (% border="1" style="background-color:#ffffcc; color:green; width:448.222px" %)
411 |=(% colspan="3" style="width: 445px;" %)AT+NWKID
412 |(% style="width:191px" %)**Command Example**|(% style="width:153px" %)**Function**|(% style="width:101px" %)**Response**
413 |(% style="width:191px" %)AT+NWKID=?|(% style="width:153px" %)Get the Network ID.|(% style="width:101px" %)a8 40 41 ff(((
414 OK
415 )))
416 |(% style="width:191px" %)AT+NWKID=A8 40 41 FF|(% style="width:153px" %)Set the Network ID.|(% style="width:101px" %)OK
417
418
419 == 5.7 Network Session Key ==
420
421
422 Feature: Get or Set the Network Session Key
423
424
425 (% style="color:blue" %)**AT Command: AT+NWKSKEY**
426
427 (% border="1" style="background-color:#ffffcc; color:green; width:1017.22px" %)
428 |=(% colspan="3" style="width: 1014px;" %)AT+NWKSKEY
429 |(% style="width:455px" %)**Command Example**|(% style="width:215px" %)**Function**|(% style="width:343px" %)**Response**
430 |(% style="width:455px" %)AT+NWKSKEY=?|(% style="width:215px" %)Get the Network Session Key.|(% style="width:343px" %)00 4f 19 25 52 ce 97 09 d7 fa 84 71 db 51 02 92(((
431 OK
432 )))
433 |(% style="width:455px" %)AT+NWKSKEY=A8 40 41 FF FF 12 34 56 00 01 02 04 05 06 06 07|(% style="width:215px" %)Set the Network Session Key.|(% style="width:343px" %)OK
434
435
436 = 6. Joining and sending date on LoRaWAN network =
437
438
439 == 6.1 Confirm Mode ==
440
441
442 === 6.1.1  AT+CFM command before DR-LWS007 software stack ===
443
444
445 Feature: Get or Set the confirmation mode (0-1).
446
447
448 (% style="color:blue" %)**AT Command: AT+CFM**
449
450 (% border="1" style="background-color:#ffffcc; color:green; width:710.222px" %)
451 |=(% colspan="3" style="width: 707px;" %)AT+CFM
452 |(% style="width:155px" %)**Command Example**|(% style="width:205px" %)**Function**|(% style="width:346px" %)**Response**
453 |(% style="width:155px" %)AT+CFM=?|(% style="width:205px" %)Get the confirmation mode|(% style="width:346px" %)0(((
454 OK
455 )))
456 |(% style="width:155px" %)AT+CFM=1|(% style="width:205px" %)Set the confirmation mode|(% style="width:346px" %)OK
457 |(% style="width:155px" %)AT+CFM=2|(% style="width:205px" %)Set the confirmation mode|(% style="width:346px" %)While Error in format, return AT_PARAM_ERROR
458
459 (% style="color:blue" %)**Downlink Command: 0x05**
460
461 Format: Command Code (0x05) followed by 2 bytes mode value.
462
463 If the downlink payload=0501, it means set end node to use confirm mode, while type code is 05.
464
465 * Example 1: Downlink Payload: 0501 ~/~/ Set AT+CFM=1
466 * Example 2: Downlink Payload: 0500 ~/~/ Set AT+CFM=0
467
468
469
470 === 6.1.2  AT+CFM command since DR-LWS007 software stack ===
471
472
473 (% style="color:blue" %)**AT Command: AT+CFM**
474
475 (% border="1" style="background-color:#ffffcc; color:green; width:710.222px" %)
476 |=(% colspan="3" style="width: 707px;" %)AT+CFM
477 |(% style="width:160px" %)**Command Example**|(% style="width:198px" %)**Function**|(% style="width:349px" %)**Response**
478 |(% style="width:160px" %)(((
479 AT+CFM=1,0,0
480
481 value1
482 )))|(% style="width:198px" %)confirmed uplink|(% style="width:349px" %)(((
483 1
484
485 OK
486 )))
487 |(% style="width:160px" %)(((
488 AT+CFM=0,?,0
489
490 value2
491 )))|(% style="width:198px" %)set max retry , range: 0 ~~ 7|(% style="width:349px" %)(((
492 0~~7
493
494 OK
495 )))
496 |(% style="width:160px" %)(((
497 AT+CFM=0,0,1
498
499 value3
500 )))|(% style="width:198px" %)uplink fcnt increase by 1 for each retry|(% style="width:349px" %)(((
501 1
502
503 OK
504 )))
505
506 (% style="color:blue" %)**Downlink Command: 0x05**
507
508 Format: Command Code (0x05) followed by 2 bytes mode value.
509
510 If the downlink payload=05010101, it means set end node to use confirm mode, while type code is 05.
511
512 * Example 1: Downlink Payload: 05010101 ~/~/ Set AT+CFM=1,1,1
513 * Example 2: Downlink Payload: 05000700 ~/~/ Set AT+CFM=0,7,0
514
515
516
517 == 6.2 Confirm Status ==
518
519
520 Feature: Get confirmation status of the last AT+SEND (0-1).
521
522
523 (% style="color:blue" %)**AT Command: AT+CFS**
524
525 (% border="1" style="background-color:#ffffcc; color:green; width:534.222px" %)
526 |=(% colspan="3" style="width: 531px;" %)AT+CFS
527 |(% style="width:156px" %)**Command Example**|(% style="width:193px" %)**Function**|(% style="width:178px" %)**Response**
528 |(% style="width:156px" %)AT+CFS=?|(% style="width:193px" %)Get confirmation status|(% style="width:178px" %)0(((
529 OK
530 )))
531
532
533 == 6.3 Join LoRa® Network ==
534
535
536 Feature: Join network.
537
538
539 (% style="color:blue" %)**AT Command: AT+JOIN**
540
541 (% border="1" style="background-color:#ffffcc; color:green; width:647.222px" %)
542 |=(% colspan="3" style="width: 644px;" %)AT+JOIN
543 |(% style="width:163px" %)**Command Example**|(% style="width:147px" %)**Function**|(% style="width:334px" %)**Response**
544 |(% style="width:163px" %)AT+JOIN ?|(% style="width:147px" %)Get imformation.|(% style="width:334px" %)AT+JOIN: Join network(((
545 OK
546
547 While Error in format, return AT_BUSY_ERROR
548 )))
549
550
551 == 6.4 LoRa® Network Join Mode ==
552
553
554 Feature: Get or Set the Network Join Mode. (0: ABP, 1: OTAA).
555
556
557 (% style="color:blue" %)**AT Command: AT+NJM**
558
559 (% border="1" style="background-color:#ffffcc; color:green; width:753.222px" %)
560 |=(% colspan="3" style="width: 750px;" %)AT+NJM
561 |(% style="width:162px" %)**Command Example**|(% style="width:227px" %)**Function**|(% style="width:361px" %)**Response**
562 |(% style="width:162px" %)AT+NJM=?|(% style="width:227px" %)Get the Network Join Mode|(% style="width:361px" %)1(((
563 OK
564 )))
565 |(% style="width:162px" %)AT+NJM=0|(% style="width:227px" %)Set the Network Join Mode|(% style="width:361px" %)OK
566 |(% 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
567
568 (% style="color:blue" %)**Downlink Command: 0x20**
569
570 Format: Command Code (0x20) followed by 1 bytes mode value.
571
572 If the downlink payload=2000, it means set the Network Join Mode, while type code is 20.
573
574 * **Example 1: **Downlink Payload: **2000** ~/~/ Set AT+NJM=0
575 * **Example 2:** Downlink Payload: **2001** ~/~/ Set AT+NJM=1
576
577
578
579 == 6.5 LoRa® Network Join Status ==
580
581
582 Feature: LoRa® Network Join Status.
583
584
585 (% style="color:blue" %)**AT Command: AT+NJS**
586
587 (% border="1" style="background-color:#ffffcc; color:green; width:498.222px" %)
588 |=(% colspan="3" style="width: 495px;" %)AT+NJS
589 |(% style="width:169px" %)**Command Example**|(% style="width:164px" %)**Function**|(% style="width:161px" %)**Response**
590 |(% style="width:169px" %)AT+NJS=?|(% style="width:164px" %)Get the join status.|(% style="width:161px" %)0(((
591 OK
592 )))
593
594
595 == 6.6 Print Last Received Data in Raw Format ==
596
597
598 Feature: Print Last Received Data in Raw Format<port:data>.
599
600
601 (% style="color:blue" %)**AT Command: AT+RECV**
602
603 (% border="1" style="background-color:#ffffcc; color:green; width:587.222px" %)
604 |=(% colspan="3" style="width: 584px;" %)AT+RECV
605 |(% style="width:161px" %)**Command Example**|(% style="width:272px" %)**Function**|(% style="width:150px" %)**Response**
606 |(% style="width:161px" %)AT+RECV=?|(% style="width:272px" %)print last received data in raw format.|(% style="width:150px" %)0:(((
607 OK
608 )))
609
610
611 == 6.7 Print Last Received Data in Binary Format ==
612
613
614 Feature: Print Last Received Data in Binary Format<port:data>.
615
616
617 (% style="color:blue" %)**AT Command: AT+RECVB**
618
619 (% border="1" style="background-color:#ffffcc; color:green; width:793.222px" %)
620 |=(% colspan="3" style="width: 790px;" %)AT+RECVB
621 |(% style="width:173px" %)**Command Example**|(% style="width:497px" %)**Function**|(% style="width:120px" %)**Response**
622 |(% style="width:173px" %)AT+RECVB=?|(% style="width:497px" %)print last received data in binary format (with hexadecimal values).|(% style="width:120px" %)2: 0010(((
623 OK
624 )))
625
626
627 == 6.8 Send Text Data ==
628
629
630 Feature: Send Text Data<port:data>.
631
632
633 (% style="color:blue" %)**AT Command: AT+SEND**
634
635 (% border="1" style="background-color:#ffffcc; color:green; width:991.222px" %)
636 |=(% colspan="3" style="width: 988px;" %)AT+SEND
637 |(% style="width:201px" %)**Command Example**|(% style="width:340px" %)**Function**|(% style="width:446px" %)**Response**
638 |(% style="width:201px" %)AT+SEND=12:hello world|(% style="width:340px" %)Send text data along with the application port.|(% style="width:446px" %)OK(((
639 While Error in format, return
640
641 AT_BUSY_ERROR/AT_BUSY_ERROR/AT_NO_NETWORK_JOINED
642
643
644 )))
645
646
647 == 6.9 Send Hexadecimal Data ==
648
649
650 Feature: Send hexadecimal data along with the application port.
651
652
653 (% style="color:blue" %)**AT Command: AT+SENDB**
654
655 (% border="1" style="background-color:#ffffcc; color:green; width:1120.22px" %)
656 |=(% colspan="3" style="width: 1117px;" %)AT+SENDB
657 |(% style="width:257px" %)**Command Example**|(% style="width:406px" %)**Function**|(% style="width:453px" %)**Response**
658 |(% style="width:257px" %)AT+SENDB=12:abcdef0123456789|(% style="width:406px" %)Send hexadecimal data along with the application port.|(% style="width:453px" %)OK
659 |(% 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(((
660 AT_PARAM_ERROR AT_BUSY_ERROR/AT_NO_NETWORK_JOINED
661
662
663 )))
664
665
666 = 7. LoRaWAN network management =
667
668
669 == 7.1 Adaptive Data Rate ==
670
671
672 Feature: Get or Set the Adaptive Data Rate setting. (0: off, 1: on).
673
674
675 (% style="color:blue" %)**AT Command: AT+ADR**
676
677 (% border="1" style="background-color:#ffffcc; color:green; width:683.222px" %)
678 |=(% colspan="3" style="width: 680px;" %)AT+ADR
679 |(% style="width:162px" %)**Command Example**|(% style="width:266px" %)**Function**|(% style="width:250px" %)**Response**
680 |(% style="width:162px" %)AT+ADR=?|(% style="width:266px" %)Get the Adaptive Data Rate setting.|(% style="width:250px" %)1(((
681 OK
682 )))
683 |(% style="width:162px" %)AT+ADR=0|(% style="width:266px" %)Set the Adaptive Data Rate setting.|(% style="width:250px" %)OK
684 |(% style="width:162px" %)AT+ADR=2|(% style="width:266px" %)Set the Adaptive Data Rate setting.|(% style="width:250px" %)While Error in format, return(((
685 AT_PARAM_ERROR
686 )))
687
688 (% style="color:blue" %)**Downlink Command: 0x22**
689
690 If the downlink payload=2201, it means setting the adaptive data rate to 1, while type code is 22.
691
692 * **Example 1**: Downlink Payload: **2201**  ~/~/ Set AT+ADR=1.
693 * **Example 2**: Downlink Payload: **2200FFFF** ~/~/ Set AT+ADR=0.
694
695
696
697 == 7.2 LoRa® Class ==
698
699
700 Feature: Get or Set the Device Class(Currently only support class A, class C).
701
702
703 (% style="color:blue" %)**AT Command:AT+CLASS**
704
705 (% border="1" style="background-color:#ffffcc; color:green; width:507.222px" %)
706 |=(% colspan="3" style="width: 504px;" %)AT+CLASS
707 |(% style="width:163px" %)**Command Example**|(% style="width:166px" %)**Function**|(% style="width:175px" %)**Response**
708 |(% style="width:163px" %)AT+CLASS=?|(% style="width:166px" %)Get the Device Class.|(% style="width:175px" %)A(((
709 OK
710 )))
711 |(% style="width:163px" %)AT+CLASS=C|(% style="width:166px" %)Set the Device Class.|(% style="width:175px" %)OK(((
712
713 )))
714
715
716 == 7.3 Duty Cycle Setting ==
717
718
719 Feature: Get or Set the ETSI Duty Cycle setting - 0=disable, 1=enable - Only for testing.
720
721
722 (% style="color:blue" %)**AT Command:AT+DCS**
723
724 (% border="1" style="background-color:#ffffcc; color:green; width:515.222px" %)
725 |=(% colspan="3" style="width: 512px;" %)AT+DCS
726 |(% style="width:165px" %)**Command Example**|(% style="width:239px" %)**Function**|(% style="width:107px" %)**Response**
727 |(% style="width:165px" %)AT+DCS=?|(% style="width:239px" %)Get the ETSI Duty Cycle setting.|(% style="width:107px" %)1(((
728 OK
729 )))
730 |(% style="width:165px" %)AT+DCS=1|(% style="width:239px" %)Set the ETSI Duty Cycle setting.|(% style="width:107px" %)OK(((
731
732 )))
733
734
735 == 7.4 Data Rate ==
736
737
738 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
739
740
741 (% style="color:blue" %)**AT Command: AT+DR**
742
743 (% border="1" style="background-color:#ffffcc; color:green; width:466.222px" %)
744 |=(% colspan="3" style="width: 463px;" %)AT+DR
745 |(% style="width:156px" %)**Command Example**|(% style="width:167px" %)**Function**|(% style="width:140px" %)**Response**
746 |(% style="width:156px" %)AT+DR=?|(% style="width:167px" %)Get the Data Rate.|(% style="width:140px" %)5(((
747 OK
748 )))
749 |(% style="width:156px" %)AT+DR=2|(% style="width:167px" %)Set the Data Rate.|(% style="width:140px" %)OK(((
750
751 )))
752
753 (% style="color:blue" %)**Downlink Command: 0x2200aaFF**
754
755 If the downlink payload=220001FF, it means setting the data rate to 1, while type code is 22 00 aa FF.
756
757 * **Example 1**: Downlink Payload: **220001FF** ~/~/ Set AT+DR=1.
758 * **Example 2**: Downlink Payload: **220000FF** ~/~/ Set AT+DR=0.
759
760
761
762 == 7.5 Frame Counter Downlink ==
763
764
765 Feature: Get or Set the Frame Counter Downlink.
766
767
768 (% style="color:blue" %)**AT Command:AT+FCD**
769
770 (% border="1" style="background-color:#ffffcc; color:green; width:693.222px" %)
771 |=(% colspan="3" style="width: 690px;" %)AT+FCD
772 |(% style="width:162px" %)**Command Example**|(% style="width:258px" %)**Function**|(% style="width:269px" %)**Response**
773 |(% style="width:162px" %)AT+FCD=?|(% style="width:258px" %)Get the Frame Counter Downlink.|(% style="width:269px" %)0(((
774 OK
775 )))
776 |(% style="width:162px" %)AT+FCD=10|(% style="width:258px" %)Set the Frame Counter Downlink.|(% style="width:269px" %)(System will write new value to FCD)(((
777 OK
778 )))
779
780
781 == 7.6 Frame Counter Uplink ==
782
783 Feature: Get or Set the Frame Counter Uplink.
784
785
786 (% style="color:blue" %)**AT Command:AT+FCU**
787
788 (% border="1" style="background-color:#ffffcc; color:green; width:534.222px" %)
789 |=(% colspan="3" style="width: 531px;" %)AT+FCU
790 |(% style="width:177px" %)**Command Example**|(% style="width:239px" %)**Function**|(% style="width:113px" %)**Response**
791 |(% style="width:177px" %)AT+FCU=?|(% style="width:239px" %)Get the Frame Counter Uplink.|(% style="width:113px" %)0(((
792 OK
793 )))
794 |(% style="width:177px" %)AT+FCU=10|(% style="width:239px" %)Set the Frame Counter Uplink.|(% style="width:113px" %)OK(((
795
796 )))
797
798
799 == 7.7 Join Accept Delay1 ==
800
801
802 Feature: Get or Set the Join Accept Delay between the end of the Tx and the Join Rx Window 1 in ms.
803
804
805 (% style="color:blue" %)**AT Command:AT+JN1DL**
806
807 (% border="1" style="background-color:#ffffcc; color:green; width:537.222px" %)
808 |=(% colspan="3" style="width: 534px;" %)AT+JN1DL
809 |(% style="width:164px" %)**Command Example**|(% style="width:229px" %)**Function**|(% style="width:140px" %)**Response**
810 |(% style="width:164px" %)AT+JN1DL=?|(% style="width:229px" %)Get the Join Accept Delay.|(% style="width:140px" %)5000(((
811 OK
812 )))
813 |(% style="width:164px" %)AT+JN1DL=10000|(% style="width:229px" %)Set the Join Accept Delay.|(% style="width:140px" %)OK(((
814
815 )))
816
817
818 == 7.8 Join Accept Delay2 ==
819
820 Feature: Get or Set the Join Accept Delay between the end of the Tx and the Join Rx Window 2 in ms.
821
822
823 (% style="color:blue" %)**AT Command:AT+JN2DL**
824
825 (% border="1" style="background-color:#ffffcc; color:green; width:538.222px" %)
826 |=(% colspan="3" style="width: 535px;" %)AT+JN2DL
827 |(% style="width:160px" %)**Command Example**|(% style="width:228px" %)**Function**|(% style="width:146px" %)**Response**
828 |(% style="width:160px" %)AT+JN2DL=?|(% style="width:228px" %)Get the Join Accept Delay.|(% style="width:146px" %)6000(((
829 OK
830 )))
831 |(% style="width:160px" %)AT+JN2DL=20000|(% style="width:228px" %)Set the Join Accept Delay.|(% style="width:146px" %)OK(((
832
833 )))
834
835
836 == 7.9 Public Network Mode ==
837
838
839 Feature: Get or Set the public network mode. (0: off, 1: on). A Public LoRaWAN network use 0x34 as syncword. Default Settings; PNM=1
840
841 (% style="color:red" %)Notice: If user build their own LoRaWAN server but still use syncword=0x34, this is still considered a public LoRaWAN network
842
843
844 (% style="color:blue" %)**AT Command:AT+PNM**
845
846 (% border="1" style="background-color:#ffffcc; color:green; width:667.222px" %)
847 |=(% colspan="3" style="width: 664px;" %)AT+PNM
848 |(% style="width:166px" %)**Command Example**|(% style="width:225px" %)**Function**|(% style="width:272px" %)**Response**
849 |(% style="width:166px" %)AT+PNM=?|(% style="width:225px" %)Get the public network mode.|(% style="width:272px" %)1(((
850 OK
851 )))
852 |(% style="width:166px" %)AT+PNM=1|(% style="width:225px" %)(((
853 Set the public network mode.
854
855 Set syncword=0x34
856 )))|(% style="width:272px" %)(System will write new value to PNM)(((
857 OK
858
859
860 )))
861 |(% style="width:166px" %)AT+PNM=0|(% style="width:225px" %)Set to use private network autoset syncword=0x12|(% style="width:272px" %)
862
863
864 == 7.10 Receive Delay1 ==
865
866
867 Feature: Get or Set the delay between the end of the Tx and the Rx Window 1 in ms
868
869
870 (% style="color:blue" %)**AT Command:AT+RX1DL**
871
872 (% border="1" style="background-color:#ffffcc; color:green; width:408.222px" %)
873 |=(% colspan="3" style="width: 405px;" %)AT+RX1DL
874 |(% style="width:155px" %)**Command Example**|(% style="width:128px" %)**Function**|(% style="width:122px" %)**Response**
875 |(% style="width:155px" %)AT+RX1DL=?|(% style="width:128px" %)Get the delay.|(% style="width:122px" %)1000(((
876 OK
877 )))
878 |(% style="width:155px" %)AT+RX1DL=1500|(% style="width:128px" %)Set the delay.|(% style="width:122px" %)OK(((
879
880 )))
881
882
883
884 == 7.11 Receive Delay2 ==
885
886
887 Feature: Get or Set the delay between the end of the Tx and the Rx Window 2 in ms
888
889
890 (% style="color:blue" %)**AT Command:AT+RX2DL**
891
892 (% border="1" style="background-color:#ffffcc; color:green; width:481.222px" %)
893 |=(% colspan="3" style="width: 478px;" %)AT+RX2DL
894 |(% style="width:175px" %)**Command Example**|(% style="width:152px" %)**Function**|(% style="width:150px" %)**Response**
895 |(% style="width:175px" %)AT+RX2DL=?|(% style="width:152px" %)Get the delay.|(% style="width:150px" %)2000(((
896 OK
897 )))
898 |(% style="width:175px" %)AT+RX2DL=2500|(% style="width:152px" %)Set the delay.|(% style="width:150px" %)OK(((
899
900 )))
901
902
903
904 == 7.12 Rx2 Window Data Rate ==
905
906
907 Feature: Get or Set the Rx2 window data rate (0-7 corresponding to DR_X)
908
909
910 (% style="color:blue" %)**AT Command:AT+RX2DR**
911
912 (% border="1" style="background-color:#ffffcc; color:green; width:525.222px" %)
913 |=(% colspan="3" style="width: 522px;" %)AT+RX2DR
914 |(% style="width:160px" %)**Command Example**|(% style="width:232px" %)**Function**|(% style="width:130px" %)**Response**
915 |(% style="width:160px" %)AT+RX2DR=?|(% style="width:232px" %)Get the Rx2 window data rate.|(% style="width:130px" %)2(((
916 OK
917 )))
918 |(% style="width:160px" %)AT+RX2DR=6|(% style="width:232px" %)Set the Rx2 window data rate.|(% style="width:130px" %)OK(((
919
920 )))
921
922
923
924 == 7.13 Rx2 Window Frequency ==
925
926
927 Feature: Get or Set the Rx2 window frequency
928
929
930 (% style="color:blue" %)**AT Command:AT+RX2FQ**
931
932 (% border="1" style="background-color:#ffffcc; color:green; width:587.222px" %)
933 |=(% colspan="3" style="width: 584px;" %)AT+RX2FQ
934 |(% style="width:183px" %)**Command Example**|(% style="width:240px" %)**Function**|(% style="width:160px" %)**Response**
935 |(% style="width:183px" %)AT+RX2FQ=?|(% style="width:240px" %)Get the Rx2 window frequency.|(% style="width:160px" %)434665000(((
936 OK
937 )))
938 |(% style="width:183px" %)AT+RX2FQ=434665000|(% style="width:240px" %)Set the Rx2 window frequency.|(% style="width:160px" %)OK(((
939
940 )))
941
942
943
944 == 7.14 Transmit Power ==
945
946
947 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. )
948
949
950 (% style="color:blue" %)**AT Command:AT+TXP**
951
952 (% border="1" style="background-color:#ffffcc; color:green; width:465.222px" %)
953 |=(% colspan="3" style="width: 462px;" %)AT+TXP
954 |(% style="width:161px" %)**Command Example**|(% style="width:189px" %)**Function**|(% style="width:112px" %)**Response**
955 |(% style="width:161px" %)AT+TXP=?|(% style="width:189px" %)Get the Transmit Power.|(% style="width:112px" %)0(((
956 OK
957 )))
958 |(% style="width:161px" %)AT+TXP=1|(% style="width:189px" %)Set the Transmit Power.|(% style="width:112px" %)OK(((
959
960 )))
961
962 Downlink Payload. The 4th byte of 0x22 downlink.
963
964 If the downlink payload=22000100, it means setting the TXP to 0.
965
966 * **Example 1**: Downlink Payload: **22000102** ~/~/ Set AT+TXP=2.
967 * **Example 2**: Downlink Payload: **220000FF** ~/~/ Set AT+TXP=0.
968
969
970
971
972 == 7.15 RSSI of the Last Received Packet ==
973
974
975 Feature: Get or Set the Rx2 window frequency
976
977
978 (% style="color:blue" %)**AT Command:AT+RSSI**
979
980 (% border="1" style="background-color:#ffffcc; color:green; width:557.222px" %)
981 |=(% colspan="3" style="width: 554px;" %)AT+RSSI
982 |(% style="width:164px" %)**Command Example**|(% style="width:289px" %)**Function**|(% style="width:100px" %)**Response**
983 |(% style="width:164px" %)AT+RSSI=?|(% style="width:289px" %)Get the RSSI of the last received packet.|(% style="width:100px" %)0(((
984 OK
985 )))
986
987
988
989 == 7.16 SNR of the Last Received Packet ==
990
991
992 Feature: Get the SNR of the last received packet
993
994
995 (% style="color:blue" %)**AT Command:AT+SNR**
996
997 (% border="1" style="background-color:#ffffcc; color:green; width:571.222px" %)
998 |=(% colspan="3" style="width: 568px;" %)AT+SNR
999 |(% style="width:164px" %)**Command Example**|(% style="width:290px" %)**Function**|(% style="width:113px" %)**Response**
1000 |(% style="width:164px" %)AT+SNR=?|(% style="width:290px" %)Get the RSSI of the last received packet.|(% style="width:113px" %)0(((
1001 OK
1002 )))
1003
1004
1005
1006 == 7.17 Application Port ==
1007
1008
1009 Feature: Get or set the application port.
1010
1011
1012 (% style="color:blue" %)**AT Command: AT+PORT**
1013
1014 (% border="1" style="background-color:#ffffcc; color:green; width:500.222px" %)
1015 |=(% colspan="3" style="width: 497px;" %)AT+PORT
1016 |(% style="width:157px" %)**Command Example**|(% style="width:204px" %)**Function**|(% style="width:135px" %)**Response**
1017 |(% style="width:157px" %)AT+PORT=?|(% style="width:204px" %)Get the application port|(% style="width:135px" %)21(((
1018 OK
1019 )))
1020 |(% style="width:157px" %)AT+PORT=21|(% style="width:204px" %)Set the application port|(% style="width:135px" %)OK
1021
1022
1023 (% style="color:blue" %)**Downlink Command: 0x23**
1024
1025 Format: Command Code (0x23) followed by 1 bytes port value.
1026
1027 If the downlink payload=2301, it means set the application port to 1, while type code is 23.
1028
1029 * **Example 1**: Downlink Payload: **2301** ~/~/ set the application port to 1
1030 * **Example 2**: Downlink Payload:** 2305** ~/~/ set the application port to 5
1031
1032
1033
1034
1035 == 7.18 Single Channel Mode ==
1036
1037
1038 Feature:Get or Set Frequency (Unit: Hz) for Single Channel Mode.
1039
1040
1041 (% style="color:blue" %)**AT Command: AT+CHS**
1042
1043 (% border="1" style="background-color:#ffffcc; color:green; width:603.222px" %)
1044 |=(% colspan="3" style="width: 600px;" %)AT+CHS
1045 |(% style="width:182px" %)**Command Example**|(% style="width:295px" %)**Function**|(% style="width:122px" %)**Response**
1046 |(% style="width:182px" %)AT+CHS=?|(% style="width:295px" %)Get Frequency for Single Channel Mode|(% style="width:122px" %)0(((
1047 OK
1048 )))
1049 |(% style="width:182px" %)AT+CHS=868100000|(% style="width:295px" %)Set Frequency for Single Channel Mode|(% style="width:122px" %)OK
1050
1051
1052
1053 == 7.19 Eight Channel Mode ==
1054
1055 Feature: Get or Set eight channels mode,Only for US915,AU915,CN470.
1056
1057
1058 (% style="color:blue" %)**AT Command: AT+CHE**
1059
1060 (% border="1" style="background-color:#ffffcc; color:green; width:710.222px" %)
1061 |=(% colspan="3" style="width: 707px;" %)AT+CHE
1062 |(% style="width:160px" %)**Command Example**|(% style="width:198px" %)**Function**|(% style="width:349px" %)**Response**
1063 |(% style="width:160px" %)AT+CHE=?|(% style="width:198px" %)Get eight channels mode|(% style="width:349px" %)1(((
1064 902.3 902.5 902.7 902.9 903.1 903.3 903.5 903.7
1065
1066 OK
1067 )))
1068 |(% style="width:160px" %)AT+CHE=1|(% style="width:198px" %)Set eight channels mode|(% style="width:349px" %)OK
1069
1070
1071 (% style="color:blue" %)**Downlink Command: 0x24**
1072
1073 Format: Command Code (0x24) followed by 1 bytes channel value.
1074
1075 If the downlink payload=2401, it means set channel mode to 1, while type code is 24.
1076
1077 * **Example 1**: Downlink Payload: 2401 ~/~/ set channel mode to 1
1078 * **Example 2**: Downlink Payload: 2405 ~/~/ set channel mode to 5
1079
1080
1081
1082
1083 == 7.20 Get or Set RXwindows1 timeout ==
1084
1085
1086 Feature: Get or Set the number of symbols to detect and timeout from RXwindow1(0 to 255).
1087
1088
1089 (% style="color:blue" %)**AT Command: AT+RX1WTO**
1090
1091 (% border="1" style="background-color:#ffffcc; color:green; width:460.222px" %)
1092 |=(% colspan="3" style="width: 457px;" %)AT+ RX1WTO
1093 |(% style="width:163px" %)**Command Example**|(% style="width:201px" %)**Function**|(% style="width:93px" %)**Response**
1094 |(% style="width:163px" %)AT+RX1WTO=?|(% style="width:201px" %)Get RXwindows1 timeout|(% style="width:93px" %)14(((
1095 OK
1096 )))
1097 |(% style="width:163px" %)AT+RX1WTO=60|(% style="width:201px" %)Set RXwindows1 timeout|(% style="width:93px" %)OK
1098
1099 (((
1100
1101
1102 **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.
1103
1104
1105 )))
1106
1107 [[image:image-20220526162535-1.png]]
1108
1109
1110 (((
1111 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.
1112
1113
1114 )))
1115
1116 == 7.21 Get or Set RXwindows2 timeout ==
1117
1118
1119 Feature: Get or Set the number of symbols to detect and timeout from RXwindow2(0 to 255).
1120
1121
1122 (% style="color:blue" %)**AT Command: AT+RX2WTO**
1123
1124 (% border="1" style="background-color:#ffffcc; color:green; width:497.222px" %)
1125 |=(% colspan="3" style="width: 494px;" %)AT+ RX2WTO
1126 |(% style="width:190px" %)**Command Example**|(% style="width:199px" %)**Function**|(% style="width:104px" %)**Response**
1127 |(% style="width:190px" %)AT+RX2WTO=?|(% style="width:199px" %)Get RXwindows2 timeout|(% style="width:104px" %)7(((
1128 OK
1129 )))
1130 |(% style="width:190px" %)AT+RX2WTO=20|(% style="width:199px" %)Set RXwindows2 timeout|(% style="width:104px" %)OK
1131
1132
1133
1134 == 7.22 Setting up uplinkdwelltime (as923, au915) ==
1135
1136
1137 Feature: Get or Set uplinkdwelltime
1138
1139
1140 (% style="color:blue" %)**AT Command: AT+DWELLT**
1141
1142 (% border="1" style="background-color:#ffffcc; color:green; width:497.222px" %)
1143 |=(% colspan="3" style="width: 494px;" %)AT+DWELLT
1144 |(% style="width:183px" %)**Command Example**|(% style="width:179px" %)**Function**|(% style="width:131px" %)**Response**
1145 |(% style="width:183px" %)AT+DWELLT=?|(% style="width:179px" %)Get uplinkdwelltime|(% style="width:131px" %)1(((
1146 OK
1147 )))
1148 |(% style="width:183px" %)AT+DWELLT=0|(% style="width:179px" %)Set uplinkdwelltime|(% style="width:131px" %)OK
1149
1150
1151 (% style="color:blue" %)**Downlink Command: 0x25**
1152
1153 Format: Command Code (0x25) followed by 1 bytes state value.
1154
1155 If the downlink payload=2501, it means set uplinkdwelltime to 1, while type code is 25.
1156
1157 * **Example 1**: Downlink Payload: **2501** ~/~/ set uplinkdwelltime to 1
1158 * **Example 2**: Downlink Payload: **2500** ~/~/ set uplinkdwelltime to 0
1159
1160
1161
1162
1163 == 7.23 Set Packet Receiving Response Level ==
1164
1165
1166 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.
1167
1168
1169 RPL value:
1170
1171 * **AT+RPL=0:** Device won't immediately reply any downlink commands from platform.
1172 * **AT+RPL=1:** Device will immediately reply message to Unconfirmed Data Down. Payload is 0x00.
1173 * **AT+RPL=2:** Device will immediately reply message to Confirmed Data Down. Payload is 0x00 and requied response header for this command.
1174 * **AT+RPL=3:** Device will immediately reply message to MAC Command. Payload is 0x00 and requied response header for this command.
1175 * **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.
1176
1177
1178
1179 Case Analyes:
1180
1181 * For Class A devices, AT+RPL=0 is ok. that is defaut settings in software.
1182 * For Class C devices used in ChirpStack, need to set AT+RPL=4 because Chirpstack require immedietely reply message to MAC Command.
1183 * 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.
1184
1185
1186
1187 (% style="color:blue" %)**AT Command: AT+RPL**
1188
1189 (% border="1" style="background-color:#ffffcc; color:green; width:536.222px" %)
1190 |=(% colspan="3" style="width: 533px;" %)AT+RPL
1191 |(% style="width:160px" %)**Command Example**|(% style="width:263px" %)**Function**|(% style="width:109px" %)**Response**
1192 |(% style="width:160px" %)AT+RPL=?|(% style="width:263px" %)Get packet receiving response level|(% style="width:109px" %)1(((
1193 OK
1194 )))
1195 |(% style="width:160px" %)AT+RPL=0|(% style="width:263px" %)Set packet receiving response level|(% style="width:109px" %)OK
1196
1197
1198 (% style="color:blue" %)**Downlink Command: 0x21**
1199
1200 Format: Command Code (0x21) followed by 1 bytes level value.
1201
1202 If the downlink payload=2101, it means set packet receiving response level to 1, while type code is 21.
1203
1204 * **Example 1**: Downlink Payload: **2101** ~/~/ set packet receiving response level to 1
1205 * **Example 2**: Downlink Payload: **2102** ~/~/ set packet receiving response level to 2
1206
1207
1208
1209
1210 == 7.24 Controls NBTrans in unconfirmed uplink mode(LWS007 NBTrans:Set retransmission packets) ==
1211
1212
1213 (% style="color:blue" %)**AT Command: AT+SETMAXNBTRANS **
1214
1215 (% border="1" style="background-color:#ffffcc; color:green; width:536.222px" %)
1216 |=(% colspan="3" style="width: 533px;" %)AT+**SETMAXNBTRANS**
1217 |(% style="width:160px" %)**Command Example**|(% style="width:263px" %)**Function**|(% style="width:109px" %)**Response**
1218 |(% style="width:160px" %)**AT+SETMAXNBTRANS=1,0**|(% style="width:263px" %)Value1: set the maximum NBTrans.|(% style="width:109px" %)1(((
1219 OK
1220 )))
1221 |(% 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" %)(((
1222 1
1223
1224 OK
1225 )))
1226
1227
1228 (% style="color:blue" %)**Downlink Command: 0x33**
1229
1230 Format: Command Code (0x33) followed by 2 bytes mode value.
1231
1232 If the downlink payload=330100, it means set end node to use confirm mode, while type code is 33.
1233
1234 * Example 1: Downlink Payload: 330100 ~/~/ Set AT+SETMAXNBTRANS=1,0
1235 * Example 2: Downlink Payload: 330201 ~/~/ Set AT+SETMAXNBTRANS=2,1
1236
1237
1238
1239
1240 == 7.25 Device offline rejoining (LWS007) ==
1241
1242
1243 (% style="color:blue" %)**AT Command: AT+DDETECT**
1244
1245 (% border="1" style="background-color:#ffffcc; color:green; width:710.222px" %)
1246 |=(% colspan="3" style="width: 707px;" %)AT+**DDETECT**
1247 |(% style="width:160px" %)**Command Example**|(% style="width:198px" %)**Function**|(% style="width:349px" %)**Response**
1248 |(% style="width:160px" %)(((
1249 AT+DDETECT=1,1440,2880
1250
1251 value1
1252 )))|(% style="width:198px" %)Enable online detect|(% style="width:349px" %)(((
1253 1
1254
1255 OK
1256 )))
1257 |(% style="width:160px" %)(((
1258 AT+DDETECT=1,?,2880
1259
1260 value2
1261 )))|(% style="width:198px" %)Online detection packet sending time|(% style="width:349px" %)(((
1262
1263
1264 OK
1265 )))
1266 |(% style="width:160px" %)(((
1267 AT+DDETECT=1,1440,?
1268
1269 value3
1270 )))|(% style="width:198px" %)Process rejoin|(% style="width:349px" %)(((
1271
1272
1273 OK
1274 )))
1275
1276
1277 (% style="color:blue" %)**Downlink Command: 0x33**
1278
1279 Format: Command Code (0x32) followed by 2 bytes mode value.
1280
1281 If the downlink payload=320105A00B40, it means set end node to use confirm mode, while type code is 33.
1282
1283 * Example 1: Downlink Payload: 320105A00B40 ~/~/ Set AT+DDETECT=1,1440,2880
1284
1285
1286
1287
1288 == 7.26 Request the server to send an ACK ==
1289
1290
1291 (% style="color:blue" %)**AT Command: AT+PNACKMD**
1292
1293 (% border="1" style="background-color:#ffffcc; color:green; width:536.222px" %)
1294 |=(% colspan="3" style="width: 533px;" %)**AT+PNACKMD**
1295 |(% style="width:160px" %)**Command Example**|(% style="width:263px" %)**Function**|(% style="width:109px" %)**Response**
1296 |(% 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(((
1297 OK
1298 )))
1299 |(% style="width:160px" %)**AT+PNACKMD=0**|(% style="width:263px" %)off request the server to send an ACK|(% style="width:109px" %)(((
1300 0
1301
1302 OK
1303 )))
1304
1305
1306
1307 == 7.27 Adjust network rejoining interval ==
1308
1309
1310 (% style="color:blue" %)**AT Command: AT+RJTDC**
1311
1312 (% border="1" style="background-color:#ffffcc; color:green; width:727.222px" %)
1313 |=(% colspan="3" style="width: 724px;" %)AT+RJTDC
1314 |(% style="width:165px" %)**Command Example**|(% style="width:227px" %)**Function**|(% style="width:329px" %)**Response**
1315 |(% style="width:165px" %)AT+RJTDC=?|(% style="width:227px" %)Show the ReJoin data transmission interval in min|(% style="width:329px" %)30000(((
1316 OK
1317
1318 the interval is 30000ms = 30s
1319 )))
1320 |(% style="width:165px" %)AT+RJTDC=60000|(% style="width:227px" %)Set the ReJoin data transmission interval in min|(% style="width:329px" %)OK(((
1321 Set the ReJoin data transmission interval to 60000ms = 60 seconds
1322 )))
1323
1324
1325 (% style="color:blue" %)**Downlink Command: 0x26**
1326
1327 Format: Command Code (0x26) followed by 2 bytes mode value.
1328
1329 If the downlink payload=26000A, it means set end node to use confirm mode, while type code is 26.
1330
1331 * Example 1: Downlink Payload: 26000A ~/~/ Set AT+RJTDC=10
1332 * Example 2: Downlink Payload: 260002 ~/~/ Set AT+RJTDC=2
1333
1334
1335
1336
1337 = 8. AT Commands Combination =
1338
1339 == 8.1 Set a fix RX2DR for downlink window ==
1340
1341 * **AT+ADR=0 **~-~-> Disable ADR first
1342 * **AT+RX2DR=xxxx** ~-~-> Set xxxx to your wanted DataRate
1343
1344 == 8.2 Use Downlink Command to set a fix uplink DR ==
1345
1346
1347 (% style="color:blue" %)**Downlink Command: 0x22000500**
1348
1349
1350 Same as:
1351
1352 * AT+ADR=0  [[Reference>>||anchor="H7.1AdaptiveDataRate"]]
1353 * AT+DR=5  [[Reference>>||anchor="H7.4DataRate"]]
1354 * AT+TXP=0  [[Reference>>||anchor="H7.14TransmitPower"]]