Last modified by Mengting Qiu on 2025/07/08 16:32

From version 81.17
edited by Mengting Qiu
on 2025/07/01 15:37
Change comment: There is no comment for this version
To version 63.41
edited by Xiaoling
on 2023/05/29 14:51
Change comment: There is no comment for this version

Summary

Details

Page properties
Author
... ... @@ -1,1 +1,1 @@
1 -XWiki.ting
1 +XWiki.Xiaoling
Content
... ... @@ -10,7 +10,6 @@
10 10  Dragino LoRaWAN End Node support two types of AT Commands and Downlink Commands:
11 11  
12 12  * (% style="color:blue" %)**Common Commands:** (%%) They should be available for each sensor, such as: change uplink interval, reset device.
13 -
14 14  * (% style="color:blue" %)**Sensor Related Commands:** (%%) Only for special sensor, such as control relay, poll RS485 device.
15 15  
16 16  (((
... ... @@ -18,14 +18,10 @@
18 18  )))
19 19  
20 20  
21 -
22 -
23 -
24 24  = 2. How to use AT Commands or Downlink command =
25 25  
26 26  
27 -* **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 Products User Manual>>http://wiki.dragino.com/xwiki/bin/view/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/]]**.
28 -
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/]]
29 29  * **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:
30 30  ** Use HEX format to send a downlink: [[TTN v3>>Notes for TTN]]
31 31  ** 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]]?
... ... @@ -112,7 +112,7 @@
112 112  
113 113  (% style="color:blue" %)**AT Command: AT+TDC**
114 114  
115 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:727.222px" %)
110 +(% border="1" style="background-color:#f2f2f2; width:727.222px" %)
116 116  |(% style="background-color:#4f81bd; color:white; width:165px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:227px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:329px" %)**Response**
117 117  |(% style="width:165px" %)AT+TDC=?|(% style="width:227px" %)Show current transmit Interval|(% style="width:329px" %)30000(((
118 118  OK
... ... @@ -134,7 +134,6 @@
134 134  )))
135 135  
136 136  * **Example 1**: Downlink Payload:** 0100001E**  ~/~/ Set Transmit Interval (TDC) = 30 seconds
137 -
138 138  * **Example 2**: Downlink Payload:** 0100003C**  ~/~/ Set Transmit Interval (TDC) = 60 seconds
139 139  
140 140  (% style="display:none" %) (%%)
... ... @@ -147,7 +147,7 @@
147 147  
148 148  (% style="color:blue" %)**AT Command: ATZ  ~/~/ **(%%)Trig a reset of the MCU
149 149  
150 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:546px" %)
144 +(% border="1" style="background-color:#f2f2f2; width:546px" %)
151 151  |(% style="background-color:#4f81bd; color:white; width:157px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:92px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:294px" %)**Response**
152 152  |(% style="width:157px" %)ATZ|(% style="width:92px" %)Reset MCU|(% style="width:294px" %)(((
153 153  Device reset and show booting info
... ... @@ -182,7 +182,7 @@
182 182  
183 183  (% style="color:blue" %)**AT Command: AT+FDR  ~/~/  **(%%)Reset to factory default
184 184  
185 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:789px" %)
179 +(% border="1" style="background-color:#f2f2f2; width:789px" %)
186 186  |(% style="background-color:#4f81bd; color:white; width:154px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:175px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:456px" %)**Response**
187 187  |(% style="width:154px" %)AT+FDR|(% style="width:175px" %)Reset to factory default|(% style="width:456px" %)(((
188 188  Device reset to factory default parameters and show booting info
... ... @@ -217,7 +217,7 @@
217 217  
218 218  (% style="color:blue" %)**AT Command: AT+VER  ~/~/   **(%%)Image Version and Frequency Band
219 219  
220 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:542px" %)
214 +(% border="1" style="background-color:#f2f2f2; width:542px" %)
221 221  |(% style="background-color:#4f81bd; color:white; width:157px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:295px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:86px" %)**Response**
222 222  |(% style="width:157px" %)AT+VER=?|(% style="width:295px" %)Show Image version and Frequency Band|(% style="width:86px" %)(((
223 223  1.3 EU868
... ... @@ -228,11 +228,11 @@
228 228  (% style="color:blue" %)**Downlink Command: 0x26 (Valid in 006 stack)**
229 229  
230 230  (((
231 -Format: Command Code (0x26) followed by 1 byte.
225 +Downlink Format: 0x26
232 232  )))
233 233  
234 234  (((
235 -If the downlink payload=**2601, **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(  FPort= 5 usually).
229 +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
236 236  )))
237 237  
238 238  (((
... ... @@ -258,9 +258,9 @@
258 258  * 0x05: KZ865
259 259  * 0x06: RU864
260 260  * 0x07: AS923
261 -* 0x08: AS923-2
262 -* 0x09: AS923-3
263 -* 0xa0: AS923-4
255 +* 0x08: AS923-1
256 +* 0x09: AS923-2
257 +* 0xa0: AS923-3
264 264  
265 265  (((
266 266  
... ... @@ -279,7 +279,7 @@
279 279  
280 280  (% style="color:blue" %)**AT Command: AT+CFG  ~/~/ **(%%)Print all configurations
281 281  
282 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:599.222px" %)
276 +(% border="1" style="background-color:#f2f2f2; width:599.222px" %)
283 283  |(% style="background-color:#4f81bd; color:white; width:160px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:154px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:280px" %)**Response**
284 284  |(% style="width:160px" %)AT+CFG|(% style="width:154px" %)Show all configures|(% style="width:280px" %)(((
285 285  AT+DEUI = XX XX XX XX XX XX XX XX
... ... @@ -292,52 +292,6 @@
292 292  
293 293  (% style="display:none" %) (%%)
294 294  
295 -== 4.6 Get or Set time synchronization method(The network server must support LoRaWAN v1.0.3) ==
296 -
297 -
298 -Feature: Set the system time synchronization.
299 -
300 -(% style="color:blue" %)**AT Command: AT+SYNCMOD**
301 -
302 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:727.222px" %)
303 -|(% style="background-color:#4f81bd; color:white; width:165px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:227px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:329px" %)**Response**
304 -|(% style="width:165px" %)AT+SYNCMOD=?|(% style="width:227px" %)Get the current time synchronization configuration|(% style="width:329px" %)(((
305 -1,0(Default)
306 -
307 -(((
308 -OK
309 -)))
310 -)))
311 -|(% style="width:165px" %)AT+SYNCMOD=1,8|(% style="width:227px" %)Set the time to UTC+8 time display.|(% style="width:329px" %)OK
312 -
313 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:727.222px" %)
314 -|(% style="background-color:#4f81bd; color:white; width:165px" %)**Command format**|(% style="background-color:#4f81bd; color:white; width:227px" %)**Parameters**|(% style="background-color:#4f81bd; color:white; width:329px" %)**Explanation**
315 -|(% colspan="1" rowspan="2" style="width:165px" %)(((
316 -
317 -
318 -AT+SYNCMOD=a,b
319 -)))|(% style="width:227px" %)a: Set the system time synchronization|(% style="width:329px" %)(((
320 -0: Disenable system time synchronization.
321 -
322 -1: Enable system time synchronization.
323 -)))
324 -|(% style="width:227px" %)b: Set local time (24 zones)|(% style="width:329px" %)-12~~12
325 -
326 -(((
327 -Example: AT+SYNCMOD=1,8  ~/~/Set the time to UTC+8 time display.
328 -
329 -(% style="color:blue" %)**Downlink Command: 28 aa bb**
330 -
331 -
332 -
333 -Example:  downlink 0x280108 ~-~-~-~-->AT+SYNCMOD=1,8
334 -)))
335 -
336 -Note: This command takes effect after the node is reset, or after downlink 0x2601(query device status).
337 -
338 -
339 -
340 -
341 341  = 5. Keys, IDs and EUIs management =
342 342  
343 343  == 5.1 Application EUI ==
... ... @@ -348,12 +348,12 @@
348 348  
349 349  (% style="color:blue" %)**AT Command: AT+APPEUI**
350 350  
351 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:643px" %)
352 -|(% style="background-color:#4f81bd; color:white; width:272px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:182px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:184px" %)**Response**
353 -|(% style="width:272px" %)AT+APPEUI=?|(% style="width:182px" %)Get the Application EUI|(% style="width:184px" %)00 b3 d5 00 00 00 00 00(((
299 +(% border="1" style="background-color:#f2f2f2; width:686.222px" %)
300 +|(% style="background-color:#4f81bd; color:white; width:305px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:186px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:191px" %)**Response**
301 +|(% style="width:305px" %)AT+APPEUI=?|(% style="width:186px" %)Get the Application EUI|(% style="width:191px" %)00 b3 d5 00 00 00 00 00(((
354 354  OK
355 355  )))
356 -|(% style="width:272px" %)AT+APPEUI=00 b3 d5 7e f0 00 4d 34|(% style="width:182px" %)Set the Application EUI|(% style="width:184px" %)OK
304 +|(% style="width:305px" %)AT+APPEUI=00 b3 d5 7e f0 00 4d 34|(% style="width:186px" %)Set the Application EUI|(% style="width:191px" %)OK
357 357  
358 358  (% style="display:none" %) (%%)
359 359  
... ... @@ -365,7 +365,7 @@
365 365  
366 366  (% style="color:blue" %)**AT Command: AT+APPKEY**
367 367  
368 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:976.222px" %)
316 +(% border="1" style="background-color:#f2f2f2; width:976.222px" %)
369 369  |(% style="background-color:#4f81bd; color:white; width:441px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:180px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:350px" %)**Response**
370 370  |(% 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(((
371 371  OK
... ... @@ -382,7 +382,7 @@
382 382  
383 383  (% style="color:blue" %)**AT Command: AT+APPSKEY**
384 384  
385 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:1040.22px" %)
333 +(% border="1" style="background-color:#f2f2f2; width:1040.22px" %)
386 386  |(% style="background-color:#4f81bd; color:white; width:451px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:231px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:354px" %)**Response**
387 387  |(% 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(((
388 388  OK
... ... @@ -401,7 +401,7 @@
401 401  
402 402  (% style="color:blue" %)**AT Command: AT+DADDR**
403 403  
404 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:795.222px" %)
352 +(% border="1" style="background-color:#f2f2f2; width:795.222px" %)
405 405  |(% style="background-color:#4f81bd; color:white; width:192px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:241px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:359px" %)**Response**
406 406  |(% style="width:192px" %)AT+DADDR=?|(% style="width:241px" %)Get the Application Session Key.|(% style="width:359px" %)(While Error in format, return AT_PARAM_ERROR)(((
407 407  A8 40 41 FF
... ... @@ -420,7 +420,7 @@
420 420  
421 421  (% style="color:blue" %)**AT Command: AT+DEUI**
422 422  
423 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:1035.22px" %)
371 +(% border="1" style="background-color:#f2f2f2; width:1035.22px" %)
424 424  |(% style="background-color:#4f81bd; color:white; width:250px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:147px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:634px" %)**Response**
425 425  |(% style="width:250px" %)AT+DEUI=?|(% style="width:147px" %)Get the Device EUI.|(% style="width:634px" %)00 44 34 22 33 45 55 55(((
426 426  OK
... ... @@ -439,7 +439,7 @@
439 439  
440 440  (% style="color:blue" %)**AT Command: AT+NWKID**
441 441  
442 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:448.222px" %)
390 +(% border="1" style="background-color:#f2f2f2; width:448.222px" %)
443 443  |(% style="background-color:#4f81bd; color:white; width:191px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:153px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:101px" %)**Response**
444 444  |(% style="width:191px" %)AT+NWKID=?|(% style="width:153px" %)Get the Network ID.|(% style="width:101px" %)a8 40 41 ff(((
445 445  OK
... ... @@ -456,7 +456,7 @@
456 456  
457 457  (% style="color:blue" %)**AT Command: AT+NWKSKEY**
458 458  
459 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:1017.22px" %)
407 +(% border="1" style="background-color:#f2f2f2; width:1017.22px" %)
460 460  |(% style="background-color:#4f81bd; color:white; width:455px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:215px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:343px" %)**Response**
461 461  |(% 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(((
462 462  OK
... ... @@ -477,7 +477,7 @@
477 477  
478 478  (% style="color:blue" %)**AT Command: AT+CFM**
479 479  
480 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:710.222px" %)
428 +(% border="1" style="background-color:#f2f2f2; width:710.222px" %)
481 481  |(% style="background-color:#4f81bd; color:white; width:155px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:205px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:346px" %)**Response**
482 482  |(% style="width:155px" %)AT+CFM=?|(% style="width:205px" %)Get the confirmation mode|(% style="width:346px" %)0(((
483 483  OK
... ... @@ -487,12 +487,11 @@
487 487  
488 488  (% style="color:blue" %)**Downlink Command: 0x05**
489 489  
490 -Format: Command Code (0x05) followed by 1 byte mode value.
438 +Format: Command Code (0x05) followed by 2 bytes mode value.
491 491  
492 492  If the downlink payload=0501, it means set end node to use confirm mode, while type code is 05.
493 493  
494 494  * **Example 1:** Downlink Payload: 0501  ~/~/ Set AT+CFM=1
495 -
496 496  * **Example 2:** Downlink Payload: 0500  ~/~/ Set AT+CFM=0
497 497  
498 498  (% style="display:none" %) (%%)
... ... @@ -502,13 +502,13 @@
502 502  
503 503  (% style="color:blue" %)**AT Command: AT+CFM**
504 504  
505 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:462px" %)
506 -|(% style="background-color:#4f81bd; color:white; width:160px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:198px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:100px" %)**Response**
452 +(% border="1" style="background-color:#f2f2f2; width:710.222px" %)
453 +|(% style="background-color:#4f81bd; color:white; width:160px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:198px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:349px" %)**Response**
507 507  |(% style="width:160px" %)(((
508 508  AT+CFM=1,0,0
509 509  
510 510  value1
511 -)))|(% style="width:198px" %)confirmed uplink|(% style="width:100px" %)(((
458 +)))|(% style="width:198px" %)confirmed uplink|(% style="width:349px" %)(((
512 512  1
513 513  
514 514  OK
... ... @@ -517,7 +517,7 @@
517 517  AT+CFM=0,?,0
518 518  
519 519  value2
520 -)))|(% style="width:198px" %)set max retry , range: 0 ~~ 7|(% style="width:100px" %)(((
467 +)))|(% style="width:198px" %)set max retry , range: 0 ~~ 7|(% style="width:349px" %)(((
521 521  0~~7
522 522  
523 523  OK
... ... @@ -526,7 +526,7 @@
526 526  AT+CFM=0,0,1
527 527  
528 528  value3
529 -)))|(% style="width:198px" %)uplink fcnt increase by 1 for each retry|(% style="width:100px" %)(((
476 +)))|(% style="width:198px" %)uplink fcnt increase by 1 for each retry|(% style="width:349px" %)(((
530 530  1
531 531  
532 532  OK
... ... @@ -534,12 +534,11 @@
534 534  
535 535  (% style="color:blue" %)**Downlink Command: 0x05**
536 536  
537 -Format: Command Code (0x05) followed by 3 bytes mode value.
484 +Format: Command Code (0x05) followed by 2 bytes mode value.
538 538  
539 539  If the downlink payload=05010101, it means set end node to use confirm mode, while type code is 05.
540 540  
541 541  * **Example 1:** Downlink Payload: 05010101  ~/~/ Set AT+CFM=1,1,1
542 -
543 543  * **Example 2:** Downlink Payload: 05000700  ~/~/ Set AT+CFM=0,7,0
544 544  
545 545  (% style="display:none" %) (%%)
... ... @@ -552,7 +552,7 @@
552 552  
553 553  (% style="color:blue" %)**AT Command: AT+CFS**
554 554  
555 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:463px" %)
501 +(% border="1" style="background-color:#f2f2f2; width:463px" %)
556 556  |(% style="background-color:#4f81bd; color:white; width:156px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:193px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:107px" %)**Response**
557 557  |(% style="width:156px" %)AT+CFS=?|(% style="width:193px" %)Get confirmation status|(% style="width:107px" %)0(((
558 558  OK
... ... @@ -568,7 +568,7 @@
568 568  
569 569  (% style="color:blue" %)**AT Command: AT+JOIN**
570 570  
571 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:647.222px" %)
517 +(% border="1" style="background-color:#f2f2f2; width:647.222px" %)
572 572  |(% style="background-color:#4f81bd; color:white; width:163px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:147px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:334px" %)**Response**
573 573  |(% style="width:163px" %)AT+JOIN ?|(% style="width:147px" %)Get imformation.|(% style="width:334px" %)AT+JOIN: Join network(((
574 574  OK
... ... @@ -585,7 +585,7 @@
585 585  
586 586  (% style="color:blue" %)**AT Command: AT+NJM**
587 587  
588 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:753.222px" %)
534 +(% border="1" style="background-color:#f2f2f2; width:753.222px" %)
589 589  |(% style="background-color:#4f81bd; color:white; width:162px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:227px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:361px" %)**Response**
590 590  |(% style="width:162px" %)AT+NJM=?|(% style="width:227px" %)Get the Network Join Mode|(% style="width:361px" %)1(((
591 591  OK
... ... @@ -600,7 +600,6 @@
600 600  If the downlink payload=2000, it means set the Network Join Mode, while type code is 20.
601 601  
602 602  * **Example 1: **Downlink Payload: **2000                  ** ~/~/ Set AT+NJM=0
603 -
604 604  * **Example 2:** Downlink Payload: **2001**  ~/~/ Set AT+NJM=1
605 605  
606 606  (% style="display:none" %) (%%)
... ... @@ -613,9 +613,9 @@
613 613  
614 614  (% style="color:blue" %)**AT Command: AT+NJS**
615 615  
616 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:435px" %)
617 -|(% style="background-color:#4f81bd; color:white; width:169px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:164px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:97px" %)**Response**
618 -|(% style="width:169px" %)AT+NJS=?|(% style="width:164px" %)Get the join status.|(% style="width:97px" %)0(((
561 +(% border="1" style="background-color:#f2f2f2; width:498.222px" %)
562 +|(% style="background-color:#4f81bd; color:white; width:169px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:164px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:161px" %)**Response**
563 +|(% style="width:169px" %)AT+NJS=?|(% style="width:164px" %)Get the join status.|(% style="width:161px" %)0(((
619 619  OK
620 620  )))
621 621  
... ... @@ -629,9 +629,9 @@
629 629  
630 630  (% style="color:blue" %)**AT Command: AT+RECV**
631 631  
632 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:543px" %)
633 -|(% style="background-color:#4f81bd; color:white; width:161px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:272px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:104px" %)**Response**
634 -|(% style="width:161px" %)AT+RECV=?|(% style="width:272px" %)print last received data in raw format.|(% style="width:104px" %)0:(((
577 +(% border="1" style="background-color:#f2f2f2; width:587.222px" %)
578 +|(% style="background-color:#4f81bd; color:white; width:161px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:272px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:150px" %)**Response**
579 +|(% style="width:161px" %)AT+RECV=?|(% style="width:272px" %)print last received data in raw format.|(% style="width:150px" %)0:(((
635 635  OK
636 636  )))
637 637  
... ... @@ -645,7 +645,7 @@
645 645  
646 646  (% style="color:blue" %)**AT Command: AT+RECVB**
647 647  
648 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:793.222px" %)
593 +(% border="1" style="background-color:#f2f2f2; width:793.222px" %)
649 649  |(% style="background-color:#4f81bd; color:white; width:173px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:497px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:120px" %)**Response**
650 650  |(% style="width:173px" %)AT+RECVB=?|(% style="width:497px" %)print last received data in binary format (with hexadecimal values).|(% style="width:120px" %)2: 0010(((
651 651  OK
... ... @@ -653,7 +653,7 @@
653 653  
654 654  (% style="display:none" %) (%%)
655 655  
656 -== 6.8 Send Text Data(Note: The format of this command of LA66 is subject to the manual) ==
601 +== 6.8 Send Text Data ==
657 657  
658 658  
659 659  Feature: Send Text Data<port:data>.
... ... @@ -661,7 +661,7 @@
661 661  
662 662  (% style="color:blue" %)**AT Command: AT+SEND**
663 663  
664 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:991.222px" %)
609 +(% border="1" style="background-color:#f2f2f2; width:991.222px" %)
665 665  |(% style="background-color:#4f81bd; color:white; width:201px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:340px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:446px" %)**Response**
666 666  |(% style="width:201px" %)AT+SEND=12:hello world|(% style="width:340px" %)Send text data along with the application port.|(% style="width:446px" %)OK(((
667 667  While Error in format, return
... ... @@ -670,7 +670,7 @@
670 670  
671 671  (% style="display:none" %) (%%)
672 672  
673 -== 6.9 Send Hexadecimal Data(Note: The format of this command of LA66 is subject to the manual) ==
618 +== 6.9 Send Hexadecimal Data ==
674 674  
675 675  
676 676  Feature: Send hexadecimal data along with the application port.
... ... @@ -678,7 +678,7 @@
678 678  
679 679  (% style="color:blue" %)**AT Command: AT+SENDB**
680 680  
681 -(% border="1" cellspacing="4" style="width:974px" %)
626 +(% border="1" style="width:974px" %)
682 682  |(% style="background-color:#4f81bd; color:white; width:257px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:394px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:318px" %)**Response**
683 683  |(% style="width:257px" %)AT+SENDB=12:abcdef0123456789|(% style="width:394px" %)Send hexadecimal data along with the application port.|(% style="width:318px" %)OK
684 684  |(% style="width:257px" %)AT+SENDB=abcdef0123456789|(% style="width:394px" %)Send hexadecimal data along with the application port.|(% style="width:318px" %)While Error in format, return(((
... ... @@ -697,7 +697,7 @@
697 697  
698 698  (% style="color:blue" %)**AT Command: AT+ADR**
699 699  
700 -(% border="1" cellspacing="4" style="width:643px" %)
645 +(% border="1" style="width:643px" %)
701 701  |(% style="background-color:#4f81bd; color:white; width:162px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:266px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:209px" %)**Response**
702 702  |(% style="width:162px" %)AT+ADR=?|(% style="width:266px" %)Get the Adaptive Data Rate setting.|(% style="width:209px" %)1(((
703 703  OK
... ... @@ -712,7 +712,6 @@
712 712  If the downlink payload=2201, it means setting the adaptive data rate to 1, while type code is 22.
713 713  
714 714  * **Example 1**: Downlink Payload: **2201**  ~/~/ Set AT+ADR=1.
715 -
716 716  * **Example 2**: Downlink Payload: **2200FFFF**  ~/~/ Set AT+ADR=0.
717 717  
718 718  (% style="display:none" %) (%%)
... ... @@ -725,12 +725,12 @@
725 725  
726 726  (% style="color:blue" %)**AT Command:  AT+CLASS**
727 727  
728 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:428px" %)
729 -|(% style="background-color:#4f81bd; color:white; width:163px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:166px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:94px" %)**Response**
730 -|(% style="width:163px" %)AT+CLASS=?|(% style="width:166px" %)Get the Device Class.|(% style="width:94px" %)A(((
672 +(% border="1" style="background-color:#f2f2f2; width:507.222px" %)
673 +|(% style="background-color:#4f81bd; color:white; width:163px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:166px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:175px" %)**Response**
674 +|(% style="width:163px" %)AT+CLASS=?|(% style="width:166px" %)Get the Device Class.|(% style="width:175px" %)A(((
731 731  OK
732 732  )))
733 -|(% style="width:163px" %)AT+CLASS=C|(% style="width:166px" %)Set the Device Class.|(% style="width:94px" %)OK(((
677 +|(% style="width:163px" %)AT+CLASS=C|(% style="width:166px" %)Set the Device Class.|(% style="width:175px" %)OK(((
734 734  
735 735  )))
736 736  
... ... @@ -749,7 +749,7 @@
749 749  
750 750  (% style="color:blue" %)**AT Command:  AT+DCS**
751 751  
752 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:515.222px" %)
696 +(% border="1" style="background-color:#f2f2f2; width:515.222px" %)
753 753  |(% style="background-color:#4f81bd; color:white; width:165px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:239px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:107px" %)**Response**
754 754  |(% style="width:165px" %)AT+DCS=?|(% style="width:239px" %)Get the ETSI Duty Cycle setting.|(% style="width:107px" %)1(((
755 755  OK
... ... @@ -769,17 +769,16 @@
769 769  **Notice:**
770 770  
771 771  * 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.
772 -
773 773  * 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/]]
774 774  
775 775  (% style="color:blue" %)**AT Command: AT+DR**
776 776  
777 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:409px" %)
778 -|(% style="background-color:#4f81bd; color:white; width:156px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:147px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:100px" %)**Response**
779 -|(% style="width:156px" %)AT+DR=?|(% style="width:147px" %)Get the Data Rate.|(% style="width:100px" %)5(((
720 +(% border="1" style="background-color:#f2f2f2; width:466.222px" %)
721 +|(% style="background-color:#4f81bd; color:white; width:156px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:167px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:140px" %)**Response**
722 +|(% style="width:156px" %)AT+DR=?|(% style="width:167px" %)Get the Data Rate.|(% style="width:140px" %)5(((
780 780  OK
781 781  )))
782 -|(% style="width:156px" %)AT+DR=2|(% style="width:147px" %)Set the Data Rate.|(% style="width:100px" %)OK(((
725 +|(% style="width:156px" %)AT+DR=2|(% style="width:167px" %)Set the Data Rate.|(% style="width:140px" %)OK(((
783 783  
784 784  )))
785 785  
... ... @@ -788,7 +788,6 @@
788 788  If the downlink payload=220001FF, it means setting the data rate to 1, while type code is 22 00 aa FF.
789 789  
790 790  * **Example 1**: Downlink Payload: **220001FF**  ~/~/ Set AT+DR=1.
791 -
792 792  * **Example 2**: Downlink Payload: **220000FF**  ~/~/ Set AT+DR=0.
793 793  
794 794  (% style="display:none" %) (%%)
... ... @@ -801,7 +801,7 @@
801 801  
802 802  (% style="color:blue" %)**AT Command:  AT+FCD**
803 803  
804 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:693.222px" %)
746 +(% border="1" style="background-color:#f2f2f2; width:693.222px" %)
805 805  |(% style="background-color:#4f81bd; color:white; width:162px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:258px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:269px" %)**Response**
806 806  |(% style="width:162px" %)AT+FCD=?|(% style="width:258px" %)Get the Frame Counter Downlink.|(% style="width:269px" %)0(((
807 807  OK
... ... @@ -819,7 +819,7 @@
819 819  
820 820  (% style="color:blue" %)**AT Command:  AT+FCU**
821 821  
822 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:534.222px" %)
764 +(% border="1" style="background-color:#f2f2f2; width:534.222px" %)
823 823  |(% style="background-color:#4f81bd; color:white; width:177px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:239px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:113px" %)**Response**
824 824  |(% style="width:177px" %)AT+FCU=?|(% style="width:239px" %)Get the Frame Counter Uplink.|(% style="width:113px" %)0(((
825 825  OK
... ... @@ -838,7 +838,7 @@
838 838  
839 839  (% style="color:blue" %)**AT Command:  AT+JN1DL**
840 840  
841 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:537.222px" %)
783 +(% border="1" style="background-color:#f2f2f2; width:537.222px" %)
842 842  |(% style="background-color:#4f81bd; color:white; width:164px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:229px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:140px" %)**Response**
843 843  |(% style="width:164px" %)AT+JN1DL=?|(% style="width:229px" %)Get the Join Accept Delay.|(% style="width:140px" %)5000(((
844 844  OK
... ... @@ -857,7 +857,7 @@
857 857  
858 858  (% style="color:blue" %)**AT Command:  AT+JN2DL**
859 859  
860 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:538.222px" %)
802 +(% border="1" style="background-color:#f2f2f2; width:538.222px" %)
861 861  |(% style="background-color:#4f81bd; color:white; width:160px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:228px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:146px" %)**Response**
862 862  |(% style="width:160px" %)AT+JN2DL=?|(% style="width:228px" %)Get the Join Accept Delay.|(% style="width:146px" %)6000(((
863 863  OK
... ... @@ -878,7 +878,7 @@
878 878  
879 879  (% style="color:blue" %)**AT Command:  AT+PNM**
880 880  
881 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:667.222px" %)
823 +(% border="1" style="background-color:#f2f2f2; width:667.222px" %)
882 882  |(% style="background-color:#4f81bd; color:white; width:166px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:225px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:272px" %)**Response**
883 883  |(% style="width:166px" %)AT+PNM=?|(% style="width:225px" %)Get the public network mode.|(% style="width:272px" %)1(((
884 884  OK
... ... @@ -904,7 +904,7 @@
904 904  
905 905  (% style="color:blue" %)**AT Command: AT+RX1DL**
906 906  
907 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:408.222px" %)
849 +(% border="1" style="background-color:#f2f2f2; width:408.222px" %)
908 908  |(% style="background-color:#4f81bd; color:white; width:155px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:128px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:122px" %)**Response**
909 909  |(% style="width:155px" %)AT+RX1DL=?|(% style="width:128px" %)Get the delay.|(% style="width:122px" %)1000(((
910 910  OK
... ... @@ -923,7 +923,7 @@
923 923  
924 924  (% style="color:blue" %)**AT Command: AT+RX2DL**
925 925  
926 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:481.222px" %)
868 +(% border="1" style="background-color:#f2f2f2; width:481.222px" %)
927 927  |(% style="background-color:#4f81bd; color:white; width:175px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:152px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:150px" %)**Response**
928 928  |(% style="width:175px" %)AT+RX2DL=?|(% style="width:152px" %)Get the delay.|(% style="width:150px" %)2000(((
929 929  OK
... ... @@ -942,7 +942,7 @@
942 942  
943 943  (% style="color:blue" %)**AT Command:  AT+RX2DR**
944 944  
945 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:525.222px" %)
887 +(% border="1" style="background-color:#f2f2f2; width:525.222px" %)
946 946  |(% style="background-color:#4f81bd; color:white; width:160px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:232px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:130px" %)**Response**
947 947  |(% style="width:160px" %)AT+RX2DR=?|(% style="width:232px" %)Get the Rx2 window data rate.|(% style="width:130px" %)2(((
948 948  OK
... ... @@ -961,7 +961,7 @@
961 961  
962 962  (% style="color:blue" %)**AT Command:  AT+RX2FQ**
963 963  
964 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:587.222px" %)
906 +(% border="1" style="background-color:#f2f2f2; width:587.222px" %)
965 965  |(% style="background-color:#4f81bd; color:white; width:183px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:240px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:160px" %)**Response**
966 966  |(% style="width:183px" %)AT+RX2FQ=?|(% style="width:240px" %)Get the Rx2 window frequency.|(% style="width:160px" %)434665000(((
967 967  OK
... ... @@ -975,7 +975,7 @@
975 975  == 7.14 Transmit Power ==
976 976  
977 977  
978 -Feature: Get or Set the Transmit Power(0-5, MAX:0, MIN:5, according to LoRaWAN Spec, or 40=10dBm, 41 = 11dBm, …, 50 = 20dBm which is out of LoRaWAN spec. )
920 +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. )
979 979  
980 980  (% 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**
981 981  
... ... @@ -982,7 +982,7 @@
982 982  
983 983  (% style="color:blue" %)**AT Command:  AT+TXP**
984 984  
985 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:465.222px" %)
927 +(% border="1" style="background-color:#f2f2f2; width:465.222px" %)
986 986  |(% style="background-color:#4f81bd; color:white; width:161px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:189px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:112px" %)**Response**
987 987  |(% style="width:161px" %)AT+TXP=?|(% style="width:189px" %)Get the Transmit Power.|(% style="width:112px" %)0(((
988 988  OK
... ... @@ -996,7 +996,6 @@
996 996  If the downlink payload=22000100, it means setting the TXP to 0.
997 997  
998 998  * **Example 1**: Downlink Payload: **22000102**  ~/~/ Set AT+TXP=2.
999 -
1000 1000  * **Example 2**: Downlink Payload: **22000000**  ~/~/ Set AT+TXP=0.
1001 1001  
1002 1002  (% style="display:none" %) (%%)
... ... @@ -1009,7 +1009,7 @@
1009 1009  
1010 1010  (% style="color:blue" %)**AT Command:AT+RSSI**
1011 1011  
1012 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:557.222px" %)
953 +(% border="1" style="background-color:#f2f2f2; width:557.222px" %)
1013 1013  |(% style="background-color:#4f81bd; color:white; width:164px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:289px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:100px" %)**Response**
1014 1014  |(% style="width:164px" %)AT+RSSI=?|(% style="width:289px" %)Get the RSSI of the last received packet.|(% style="width:100px" %)0(((
1015 1015  OK
... ... @@ -1025,7 +1025,7 @@
1025 1025  
1026 1026  (% style="color:blue" %)**AT Command:  AT+SNR**
1027 1027  
1028 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:571.222px" %)
969 +(% border="1" style="background-color:#f2f2f2; width:571.222px" %)
1029 1029  |(% style="background-color:#4f81bd; color:white; width:164px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:290px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:113px" %)**Response**
1030 1030  |(% style="width:164px" %)AT+SNR=?|(% style="width:290px" %)Get the RSSI of the last received packet.|(% style="width:113px" %)0(((
1031 1031  OK
... ... @@ -1041,12 +1041,12 @@
1041 1041  
1042 1042  (% style="color:blue" %)**AT Command: AT+PORT**
1043 1043  
1044 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:459px" %)
1045 -|(% style="background-color:#4f81bd; color:white; width:157px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:193px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:104px" %)**Response**
1046 -|(% style="width:157px" %)AT+PORT=?|(% style="width:193px" %)Get the application port|(% style="width:104px" %)21(((
985 +(% border="1" style="background-color:#f2f2f2; width:500.222px" %)
986 +|(% style="background-color:#4f81bd; color:white; width:157px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:204px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:135px" %)**Response**
987 +|(% style="width:157px" %)AT+PORT=?|(% style="width:204px" %)Get the application port|(% style="width:135px" %)21(((
1047 1047  OK
1048 1048  )))
1049 -|(% style="width:157px" %)AT+PORT=21|(% style="width:193px" %)Set the application port|(% style="width:104px" %)OK
990 +|(% style="width:157px" %)AT+PORT=21|(% style="width:204px" %)Set the application port|(% style="width:135px" %)OK
1050 1050  
1051 1051  (% style="color:blue" %)**Downlink Command: 0x23**
1052 1052  
... ... @@ -1055,7 +1055,6 @@
1055 1055  If the downlink payload=2301, it means set the application port to 1, while type code is 23.
1056 1056  
1057 1057  * **Example 1**: Downlink Payload: **2301**  ~/~/ set the application port to 1
1058 -
1059 1059  * **Example 2**: Downlink Payload:** 2305**  ~/~/ set the application port to 5
1060 1060  
1061 1061  (% style="display:none" %) (%%)
... ... @@ -1068,12 +1068,12 @@
1068 1068  
1069 1069  (% style="color:blue" %)**AT Command: AT+CHS**
1070 1070  
1071 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:584px" %)
1072 -|(% style="background-color:#4f81bd; color:white; width:182px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:295px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:101px" %)**Response**
1073 -|(% style="width:182px" %)AT+CHS=?|(% style="width:295px" %)Get Frequency for Single Channel Mode|(% style="width:101px" %)0(((
1011 +(% border="1" style="background-color:#f2f2f2; width:603.222px" %)
1012 +|(% style="background-color:#4f81bd; color:white; width:182px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:295px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:122px" %)**Response**
1013 +|(% style="width:182px" %)AT+CHS=?|(% style="width:295px" %)Get Frequency for Single Channel Mode|(% style="width:122px" %)0(((
1074 1074  OK
1075 1075  )))
1076 -|(% style="width:182px" %)AT+CHS=868100000|(% style="width:295px" %)Set Frequency for Single Channel Mode|(% style="width:101px" %)OK
1016 +|(% style="width:182px" %)AT+CHS=868100000|(% style="width:295px" %)Set Frequency for Single Channel Mode|(% style="width:122px" %)OK
1077 1077  
1078 1078  (% style="display:none" %) (%%)
1079 1079  
... ... @@ -1085,7 +1085,7 @@
1085 1085  
1086 1086  (% style="color:blue" %)**AT Command: AT+CHE**
1087 1087  
1088 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:710.222px" %)
1028 +(% border="1" style="background-color:#f2f2f2; width:710.222px" %)
1089 1089  |(% style="background-color:#4f81bd; color:white; width:160px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:198px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:349px" %)**Response**
1090 1090  |(% style="width:160px" %)AT+CHE=?|(% style="width:198px" %)Get eight channels mode|(% style="width:349px" %)1(((
1091 1091  902.3 902.5 902.7 902.9 903.1 903.3 903.5 903.7
... ... @@ -1101,7 +1101,6 @@
1101 1101  If the downlink payload=2401, it means set channel mode to 1, while type code is 24.
1102 1102  
1103 1103  * **Example 1**: Downlink Payload: 2401  ~/~/ set channel mode to 1
1104 -
1105 1105  * **Example 2**: Downlink Payload: 2405  ~/~/ set channel mode to 5
1106 1106  
1107 1107  (% style="display:none" %) (%%)
... ... @@ -1114,7 +1114,7 @@
1114 1114  
1115 1115  (% style="color:blue" %)**AT Command: AT+RX1WTO**
1116 1116  
1117 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:460.222px" %)
1056 +(% border="1" style="background-color:#f2f2f2; width:460.222px" %)
1118 1118  |(% style="background-color:#4f81bd; color:white; width:163px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:201px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:93px" %)**Response**
1119 1119  |(% style="width:163px" %)AT+RX1WTO=?|(% style="width:201px" %)Get RXwindows1 timeout|(% style="width:93px" %)14(((
1120 1120  OK
... ... @@ -1133,22 +1133,7 @@
1133 1133  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.
1134 1134  )))
1135 1135  
1136 -**Example:**
1137 -~1. Set AT+RX1WTO=0, AT+RX1DL=5000, the window opening time is: 53.699ms
1138 1138  
1139 -[[image:image-20240906095336-1.png||height="404" width="759"]]
1140 -
1141 -
1142 -2. Set AT+RX1WTO=128, AT+RX1DL=5000, the window opening time is: 149.644ms
1143 -
1144 -[[image:image-20240906095433-2.png||height="403" width="756"]]
1145 -
1146 -
1147 -3. Set AT+RX1WTO=128, AT+RX1DL=5000, the window opening time is: 298.221ms
1148 -
1149 -[[image:image-20240906095527-3.png||height="400" width="749"]]
1150 -
1151 -
1152 1152  == 7.21 Get or Set RXwindows2 timeout ==
1153 1153  
1154 1154  
... ... @@ -1157,29 +1157,15 @@
1157 1157  
1158 1158  (% style="color:blue" %)**AT Command: AT+RX2WTO**
1159 1159  
1160 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:448px" %)
1161 -|(% style="background-color:#4f81bd; color:white; width:162px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:192px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:90px" %)**Response**
1162 -|(% style="width:162px" %)AT+RX2WTO=?|(% style="width:192px" %)Get RXwindows2 timeout|(% style="width:90px" %)7(((
1084 +(% border="1" style="background-color:#f2f2f2; width:497.222px" %)
1085 +|(% style="background-color:#4f81bd; color:white; width:190px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:199px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:104px" %)**Response**
1086 +|(% style="width:190px" %)AT+RX2WTO=?|(% style="width:199px" %)Get RXwindows2 timeout|(% style="width:104px" %)7(((
1163 1163  OK
1164 1164  )))
1165 -|(% style="width:162px" %)AT+RX2WTO=20|(% style="width:192px" %)Set RXwindows2 timeout|(% style="width:90px" %)OK
1089 +|(% style="width:190px" %)AT+RX2WTO=20|(% style="width:199px" %)Set RXwindows2 timeout|(% style="width:104px" %)OK
1166 1166  
1167 -**Example:**
1168 -~1. Set AT+RX2WTO=0, AT+RX2DL=6000, the window opening time is: 48.435ms
1091 +(% style="display:none" %) (%%)
1169 1169  
1170 -(% style="display:none" %) (%%) [[image:image-20240906095619-4.png||height="375" width="703"]]
1171 -
1172 -
1173 -2. Set AT+RX2WTO=128, AT+RX2DL=6000, the window opening time is: 3011ms
1174 -
1175 -[[image:image-20240906095726-5.png||height="381" width="714"]]
1176 -
1177 -
1178 -3. Set AT+RX2WTO=255, AT+RX2DL=6000, the window opening time is: 3009ms
1179 -
1180 -[[image:image-20240906095811-6.png||height="380" width="711"]]
1181 -
1182 -
1183 1183  == 7.22 Setting up uplinkdwelltime (as923, au915) ==
1184 1184  
1185 1185  
... ... @@ -1188,12 +1188,12 @@
1188 1188  
1189 1189  (% style="color:blue" %)**AT Command: AT+DWELLT**
1190 1190  
1191 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:419px" %)
1192 -|(% style="background-color:#4f81bd; color:white; width:162px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:157px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:95px" %)**Response**
1193 -|(% style="width:162px" %)AT+DWELLT=?|(% style="width:157px" %)Get uplinkdwelltime|(% style="width:95px" %)1(((
1101 +(% border="1" style="background-color:#f2f2f2; width:497.222px" %)
1102 +|(% style="background-color:#4f81bd; color:white; width:183px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:179px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:131px" %)**Response**
1103 +|(% style="width:183px" %)AT+DWELLT=?|(% style="width:179px" %)Get uplinkdwelltime|(% style="width:131px" %)1(((
1194 1194  OK
1195 1195  )))
1196 -|(% style="width:162px" %)AT+DWELLT=0|(% style="width:157px" %)Set uplinkdwelltime|(% style="width:95px" %)OK
1106 +|(% style="width:183px" %)AT+DWELLT=0|(% style="width:179px" %)Set uplinkdwelltime|(% style="width:131px" %)OK
1197 1197  
1198 1198  (% style="color:blue" %)**Downlink Command: 0x25**
1199 1199  
... ... @@ -1202,7 +1202,6 @@
1202 1202  If the downlink payload=2501, it means set uplinkdwelltime to 1, while type code is 25.
1203 1203  
1204 1204  * **Example 1**: Downlink Payload: **2501**  ~/~/ set uplinkdwelltime to 1
1205 -
1206 1206  * **Example 2**: Downlink Payload: **2500**  ~/~/ set uplinkdwelltime to 0
1207 1207  
1208 1208  (% style="display:none" %) (%%)
... ... @@ -1216,26 +1216,20 @@
1216 1216  (% style="color:blue" %)**RPL value:**
1217 1217  
1218 1218  * **AT+RPL=0:** Device won't immediately reply any downlink commands from platform.
1219 -
1220 1220  * **AT+RPL=1:** Device will immediately reply message to Unconfirmed Data Down. Payload is 0x00.
1221 -
1222 1222  * **AT+RPL=2:** Device will immediately reply message to Confirmed Data Down. Payload is 0x00 and requied response header for this command.
1223 -
1224 1224  * **AT+RPL=3:** Device will immediately reply message to MAC Command. Payload is 0x00 and requied response header for this command.
1225 -
1226 1226  * **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.
1227 1227  
1228 1228  (% style="color:blue" %)**Case Analyes:**
1229 1229  
1230 1230  * For Class A devices, AT+RPL=0 is ok. that is defaut settings in software.
1231 -
1232 1232  * For Class C devices used in ChirpStack, need to set AT+RPL=4 because Chirpstack require immedietely reply message to MAC Command.
1233 -
1234 1234  * 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.
1235 1235  
1236 1236  (% style="color:blue" %)**AT Command: AT+RPL**
1237 1237  
1238 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:536.222px" %)
1141 +(% border="1" style="background-color:#f2f2f2; width:536.222px" %)
1239 1239  |(% style="background-color:#4f81bd; color:white; width:160px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:263px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:109px" %)**Response**
1240 1240  |(% style="width:160px" %)AT+RPL=?|(% style="width:263px" %)Get packet receiving response level|(% style="width:109px" %)1(((
1241 1241  OK
... ... @@ -1249,7 +1249,6 @@
1249 1249  If the downlink payload=2101, it means set packet receiving response level to 1, while type code is 21.
1250 1250  
1251 1251  * **Example 1**: Downlink Payload: **2101**  ~/~/ set packet receiving response level to 1
1252 -
1253 1253  * **Example 2**: Downlink Payload: **2102**  ~/~/ set packet receiving response level to 2
1254 1254  
1255 1255  (% style="display:none" %) (%%)
... ... @@ -1259,7 +1259,7 @@
1259 1259  
1260 1260  (% style="color:blue" %)**AT Command: AT+SETMAXNBTRANS **
1261 1261  
1262 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:589px" %)
1164 +(% border="1" style="background-color:#f2f2f2; width:589px" %)
1263 1263  |(% style="background-color:#4f81bd; color:white; width:227px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:300px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:87px" %)**Response**
1264 1264  |(% style="width:227px" %)AT+SETMAXNBTRANS=1,0|(% style="width:300px" %)Value1: set the maximum NBTrans.|(% style="width:87px" %)1(((
1265 1265  OK
... ... @@ -1281,7 +1281,6 @@
1281 1281  If the downlink payload=330100, it means set end node to use confirm mode, while type code is 33.
1282 1282  
1283 1283  * Example 1: Downlink Payload: 330100  ~/~/ Set AT+SETMAXNBTRANS=1,0
1284 -
1285 1285  * Example 2: Downlink Payload: 330201  ~/~/ Set AT+SETMAXNBTRANS=2,1
1286 1286  
1287 1287  (% style="display:none" %) (%%)
... ... @@ -1294,16 +1294,15 @@
1294 1294  AT+DDETECT=<Flag>,<ACK_Timout_1>,<ACK_Timout_2> (Default Value: AT+DDETECT=1,1440,2880)
1295 1295  
1296 1296  * ACK_Timout_1: Unit: min
1297 -
1298 1298  * ACK_Timout_2: Unit: min
1299 1299  
1300 -(% border="1" style="background-color:#f2f2f2; width:562px" %)
1301 -|(% style="background-color:#4f81bd; color:white; width:160px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:272px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:89px" %)**Response**
1200 +(% border="1" style="background-color:#f2f2f2; width:710.222px" %)
1201 +|(% style="background-color:#4f81bd; color:white; width:160px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:198px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:349px" %)**Response**
1302 1302  |(% style="width:160px" %)(((
1303 1303  AT+DDETECT=1,1440,2880
1304 1304  
1305 1305  value1
1306 -)))|(% style="width:272px" %)Enable online detect|(% style="width:89px" %)(((
1206 +)))|(% style="width:198px" %)Enable online detect|(% style="width:349px" %)(((
1307 1307  1
1308 1308  
1309 1309  OK
... ... @@ -1312,7 +1312,7 @@
1312 1312  AT+DDETECT=1,?,2880
1313 1313  
1314 1314  value2
1315 -)))|(% style="width:272px" %)Online detection packet sending time|(% style="width:89px" %)(((
1215 +)))|(% style="width:198px" %)Online detection packet sending time|(% style="width:349px" %)(((
1316 1316  
1317 1317  
1318 1318  OK
... ... @@ -1321,7 +1321,7 @@
1321 1321  AT+DDETECT=1,1440,?
1322 1322  
1323 1323  value3
1324 -)))|(% style="width:272px" %)Process rejoin|(% style="width:89px" %)(((
1224 +)))|(% style="width:198px" %)Process rejoin|(% style="width:349px" %)(((
1325 1325  
1326 1326  
1327 1327  OK
... ... @@ -1334,55 +1334,43 @@
1334 1334  If the downlink payload=320105A00B40, it means set end node to use confirm mode, while type code is 32.
1335 1335  
1336 1336  * **Example 1:** Downlink Payload: 320105A00B40  ~/~/ Set AT+DDETECT=1,1440,2880
1237 +** 0x01 : Flag
1238 +** 0x05A0: ACK_Timout_1 : 1440minutes (24 hours)
1239 +** 0x0B40: ACK_Timout_2 : 2880minutes (48 hours)
1240 +** **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.
1337 1337  
1338 -*
1339 -** 0x01** : Flag**
1340 -
1341 - **0x05A0 **: ACK_Timout_1 : 1440minutes (24 hours)
1342 -
1343 - **0x0B40 **: ACK_Timout_2 : 2880minutes (48 hours)
1344 -
1345 -* **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.
1346 -
1347 1347  (% style="display:none" %) (%%)
1348 1348  
1349 1349  == 7.26 Request the server to send an ACK ==
1350 1350  
1351 1351  
1352 -Feature: Mode for sending data for which acknowledgment was not received. LoraWAN Network Server(eg. The Things NetWork/ChirpStack/AWS/...).
1353 -
1354 1354  (% style="color:blue" %)**AT Command: AT+PNACKMD**
1355 1355  
1356 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:889px" %)
1357 -|(% style="background-color:#4f81bd; color:white; width:160px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:627px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:100px" %)**Response**
1358 -|(% style="width:160px" %)AT+PNACKMD=1|(% style="width:627px" %)If the node uploads the ACK as confirm, it will request the LoraWAN Network Server to send an ACK. If the LoraWAN Network 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:100px" %)1(((
1249 +(% border="1" style="background-color:#f2f2f2; width:536.222px" %)
1250 +|(% style="background-color:#4f81bd; color:white; width:160px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:263px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:109px" %)**Response**
1251 +|(% 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(((
1359 1359  OK
1360 1360  )))
1361 -|(% style="width:160px" %)AT+PNACKMD=0|(% style="width:627px" %)off request the LoraWAN Network Server to send an ACK|(% style="width:100px" %)(((
1254 +|(% style="width:160px" %)AT+PNACKMD=0|(% style="width:263px" %)off request the server to send an ACK|(% style="width:109px" %)(((
1362 1362  0
1363 1363  OK
1364 1364  )))
1365 1365  
1366 -(% style="display:none" %) (%%) (% style="color:blue" %)**Downlink Command: 0x34**
1259 +(% style="display:none" %) (%%)
1367 1367  
1368 -0X34 01  ~/~/Same As AT+PNACKMD=1
1369 -
1370 -0x34 00  ~/~/Same As AT+PNACKMD=0
1371 -
1372 -
1373 1373  == 7.27 Adjust network rejoining interval ==
1374 1374  
1375 1375  
1376 1376  (% style="color:blue" %)**AT Command: AT+RJTDC**
1377 1377  
1378 -(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:889px" %)
1379 -|(% style="background-color:#4f81bd; color:white; width:165px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:357px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:361px" %)**Response**
1380 -|(% style="width:165px" %)AT+RJTDC=?|(% style="width:357px" %)Show the ReJoin data transmission interval in min|(% style="width:361px" %)30(((
1266 +(% border="1" style="background-color:#f2f2f2; width:727.222px" %)
1267 +|(% style="background-color:#4f81bd; color:white; width:165px" %)**Command Example**|(% style="background-color:#4f81bd; color:white; width:227px" %)**Function**|(% style="background-color:#4f81bd; color:white; width:329px" %)**Response**
1268 +|(% style="width:165px" %)AT+RJTDC=?|(% style="width:227px" %)Show the ReJoin data transmission interval in min|(% style="width:329px" %)30(((
1381 1381  OK
1382 1382  
1383 1383  the interval is 30 min
1384 1384  )))
1385 -|(% style="width:165px" %)AT+RJTDC=60|(% style="width:357px" %)Set the ReJoin data transmission interval in min|(% style="width:361px" %)OK(((
1273 +|(% style="width:165px" %)AT+RJTDC=60|(% style="width:227px" %)Set the ReJoin data transmission interval in min|(% style="width:329px" %)OK(((
1386 1386  Set the ReJoin data transmission interval to 60 min
1387 1387  )))
1388 1388  
... ... @@ -1393,7 +1393,6 @@
1393 1393  If the downlink payload=26000A, it means set end node to use confirm mode, while type code is 26.
1394 1394  
1395 1395  * **Example 1:** Downlink Payload: 26000A  ~/~/  Set AT+RJTDC=10
1396 -
1397 1397  * **Example 2: **Downlink Payload: 260002  ~/~/  Set AT+RJTDC=2
1398 1398  
1399 1399  (% style="display:none" %) (%%)
image-20240906095336-1.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.kai
Size
... ... @@ -1,1 +1,0 @@
1 -111.0 KB
Content
image-20240906095433-2.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.kai
Size
... ... @@ -1,1 +1,0 @@
1 -113.2 KB
Content
image-20240906095527-3.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.kai
Size
... ... @@ -1,1 +1,0 @@
1 -111.6 KB
Content
image-20240906095619-4.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.kai
Size
... ... @@ -1,1 +1,0 @@
1 -112.4 KB
Content
image-20240906095726-5.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.kai
Size
... ... @@ -1,1 +1,0 @@
1 -114.0 KB
Content
image-20240906095811-6.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.kai
Size
... ... @@ -1,1 +1,0 @@
1 -112.8 KB
Content