<
From version < 60.13 >
edited by Xiaoling
on 2023/03/27 14:12
To version < 38.80 >
edited by Xiaoling
on 2022/05/31 09:19
>
Change comment: There is no comment for this version

Summary

Details

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