<
From version < 53.2 >
edited by Xiaoling
on 2022/10/15 16:48
To version < 63.36 >
edited by Xiaoling
on 2023/05/29 14:19
>
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -14,35 +14,31 @@
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.**
17 -
18 -
19 -
20 20  )))
21 21  
19 +
22 22  = 2. How to use AT Commands or Downlink command =
23 23  
24 24  
25 -* 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/]]
26 -* For LoRaWAN Downlink: The gateway transfer downlink command in HEX format. This page shows the HEX format downlink code for each command. but some servers use base64 as downlink code. Below are reference for how to use downlink command:
23 +* **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:
27 27  ** Use HEX format to send a downlink: [[TTN v3>>Notes for TTN]]
28 28  ** 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]]?
29 29  ** See use note for more serves [[Servers Note>>doc:Main.WebHome]](IoT LoRaWAN Server)
30 30  
29 +(% style="display:none" %) (%%)
31 31  
32 -
33 -
34 34  = 3. Support End Node and firmware version =
35 35  
36 36  
37 -(% border="1" style="background-color:#ffffcc; color:green; width:966px" %)
38 -|=(% colspan="3" style="width: 963px;" %)(((
39 39  Dragino STM32 base hardware Firmware / LoRaWAN stack list
40 -)))
41 -|(% style="width:187px" %)(((
35 +
36 +(% border="1" cellspacing="4" style="background-color:#f2f2f2; width:966px" %)
37 +|(% style="background-color:#4f81bd; color:white; width:187px" %)(((
42 42  **Model**
43 -)))|(% style="width:330px" %)(((
39 +)))|(% style="background-color:#4f81bd; color:white; width:330px" %)(((
44 44  **Description**
45 -)))|(% style="width:445px" %)(((
41 +)))|(% style="background-color:#4f81bd; color:white; width:445px" %)(((
46 46  **Firmware Version <~-~-> Stack Version**
47 47  )))
48 48  |(% style="width:187px" %)(((
... ... @@ -105,9 +105,8 @@
105 105  )))
106 106  )))
107 107  
104 +(% style="display:none" %) (%%)
108 108  
109 -
110 -
111 111  = 4. System Management Commands =
112 112  
113 113  == 4.1 Change Uplink Interval ==
... ... @@ -118,9 +118,8 @@
118 118  
119 119  (% style="color:blue" %)**AT Command: AT+TDC**
120 120  
121 -(% border="1" style="background-color:#ffffcc; color:green; width:727.222px" %)
122 -|=(% colspan="3" style="width: 724px;" %)AT+TDC
123 -|(% style="width:165px" %)**Command Example**|(% style="width:227px" %)**Function**|(% style="width:329px" %)**Response**
116 +(% border="1" style="background-color:#f2f2f2; width:727.222px" %)
117 +|(% 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**
124 124  |(% style="width:165px" %)AT+TDC=?|(% style="width:227px" %)Show current transmit Interval|(% style="width:329px" %)30000(((
125 125  OK
126 126  
... ... @@ -145,9 +145,8 @@
145 145  * **Example 1**: Downlink Payload:** 0100001E**  ~/~/ Set Transmit Interval (TDC) = 30 seconds
146 146  * **Example 2**: Downlink Payload:** 0100003C**  ~/~/ Set Transmit Interval (TDC) = 60 seconds
147 147  
142 +(% style="display:none" %) (%%)
148 148  
149 -
150 -
151 151  == 4.2 Reboot End Node ==
152 152  
153 153  
... ... @@ -156,9 +156,9 @@
156 156  
157 157  (% style="color:blue" %)**AT Command: ATZ**
158 158  
159 -(% border="1" style="background-color:#ffffcc; color:green; width:546px" %)
160 -|=(% colspan="3" style="width: 543px;" %)ATZ: Trig a reset of the MCU
161 -|(% style="width:157px" %)**Command Example**|(% style="width:92px" %)**Function**|(% style="width:294px" %)**Response**
152 +(% border="1" style="background-color:#f2f2f2; width:546px" %)
153 +|=(% colspan="3" style="width: 543px;background-color:#D9E2F3;color:#0070C0" %)ATZ: Trig a reset of the MCU
154 +|(% style="color:#0070c0; width:157px" %)**Command Example**|(% style="color:#0070c0; width:92px" %)**Function**|(% style="color:#0070c0; width:294px" %)**Response**
162 162  |(% style="width:157px" %)ATZ|(% style="width:92px" %)Reset MCU|(% style="width:294px" %)(((
163 163  Device reset and show booting info
164 164  
... ... @@ -180,12 +180,10 @@
180 180  )))
181 181  
182 182  (((
183 -If the downlink payload=**04FF**, the end node will reboot.
184 -
185 -
186 -
176 +If the downlink payload=**04FF**, the end node will reboot.
187 187  )))
188 188  
179 +
189 189  == 4.3 Reset to factory Default ==
190 190  
191 191  
... ... @@ -194,9 +194,9 @@
194 194  
195 195  (% style="color:blue" %)**AT Command: AT+FDR**
196 196  
197 -(% border="1" style="background-color:#ffffcc; color:green; width:789px" %)
198 -|=(% colspan="3" style="width: 786px;" %)Reset to factory default
199 -|(% style="width:154px" %)**Command Example**|(% style="width:175px" %)**Function**|(% style="width:456px" %)**Response**
188 +(% border="1" style="background-color:#f2f2f2; width:789px" %)
189 +|=(% colspan="3" style="width: 786px;background-color:#D9E2F3;color:#0070C0" %)Reset to factory default
190 +|(% style="color:#0070c0; width:154px" %)**Command Example**|(% style="color:#0070c0; width:175px" %)**Function**|(% style="color:#0070c0; width:456px" %)**Response**
200 200  |(% style="width:154px" %)AT+FDR|(% style="width:175px" %)Reset to factory default|(% style="width:456px" %)(((
201 201  Device reset to factory default parameters and show booting info
202 202  
... ... @@ -222,7 +222,6 @@
222 222  )))
223 223  
224 224  
225 -
226 226  == 4.4 Show Firmware Version ==
227 227  
228 228  
... ... @@ -231,9 +231,9 @@
231 231  
232 232  (% style="color:blue" %)**AT Command: AT+VER**
233 233  
234 -(% border="1" style="background-color:#ffffcc; color:green; width:542px" %)
235 -|=(% colspan="3" style="width: 539px;" %)AT+VER: Image Version and Frequency Band
236 -|(% style="width:157px" %)**Command Example**|(% style="width:295px" %)**Function**|(% style="width:86px" %)**Response**
224 +(% border="1" style="background-color:#f2f2f2; width:542px" %)
225 +|=(% colspan="3" style="width: 539px;background-color:#D9E2F3;color:#0070C0" %)AT+VER: Image Version and Frequency Band
226 +|(% style="color:#0070c0; width:157px" %)**Command Example**|(% style="color:#0070c0; width:295px" %)**Function**|(% style="color:#0070c0; width:86px" %)**Response**
237 237  |(% style="width:157px" %)AT+VER=?|(% style="width:295px" %)Show Image version and Frequency Band|(% style="width:86px" %)(((
238 238  1.3 EU868
239 239  
... ... @@ -253,7 +253,6 @@
253 253  (((
254 254  
255 255  
256 -
257 257  **xx: Software Type:**
258 258  )))
259 259  
... ... @@ -287,7 +287,6 @@
287 287  firmware version: v1.1.0 ~-~-> 110
288 288  
289 289  
290 -
291 291  == 4.5 Show System Configure ==
292 292  
293 293  
... ... @@ -296,26 +296,20 @@
296 296  
297 297  (% style="color:blue" %)**AT Command: AT+CFG**
298 298  
299 -(% border="1" style="background-color:#ffffcc; color:green; width:599.222px" %)
300 -|=(% colspan="3" style="width: 596px;" %)AT+CFG: Print all configurations
301 -|(% style="width:160px" %)**Command Example**|(% style="width:154px" %)**Function**|(% style="width:280px" %)**Response**
287 +(% border="1" style="background-color:#f2f2f2; width:599.222px" %)
288 +|=(% colspan="3" style="width: 596px;background-color:#D9E2F3;color:#0070C0" %)AT+CFG: Print all configurations
289 +|(% style="color:#0070c0; width:160px" %)**Command Example**|(% style="color:#0070c0; width:154px" %)**Function**|(% style="color:#0070c0; width:280px" %)**Response**
302 302  |(% style="width:160px" %)AT+CFG|(% style="width:154px" %)Show all configures|(% style="width:280px" %)(((
303 303  AT+DEUI = XX XX XX XX XX XX XX XX
304 -
305 305  AT+DADDR=XXXXXXXX
306 -
307 307  ……….
308 -
309 309  AT+RX2WTO=X
310 -
311 311  AT+CHS=868100000
312 -
313 313  OK
314 314  )))
315 315  
299 +(% style="display:none" %) (%%)
316 316  
317 -
318 -
319 319  = 5. Keys, IDs and EUIs management =
320 320  
321 321  == 5.1 Application EUI ==
... ... @@ -326,17 +326,16 @@
326 326  
327 327  (% style="color:blue" %)**AT Command: AT+APPEUI**
328 328  
329 -(% border="1" style="background-color:#ffffcc; color:green; width:686.222px" %)
330 -|=(% colspan="3" style="width: 683px;" %)AT+APPEUI
331 -|(% style="width:305px" %)**Command Example**|(% style="width:186px" %)**Function**|(% style="width:191px" %)**Response**
311 +(% border="1" style="background-color:#f2f2f2; width:686.222px" %)
312 +|=(% colspan="3" style="width: 683px;background-color:#D9E2F3;color:#0070C0" %)AT+APPEUI
313 +|(% style="color:#0070c0; width:305px" %)**Command Example**|(% style="color:#0070c0; width:186px" %)**Function**|(% style="color:#0070c0; width:191px" %)**Response**
332 332  |(% style="width:305px" %)AT+APPEUI=?|(% style="width:186px" %)Get the Application EUI|(% style="width:191px" %)00 b3 d5 00 00 00 00 00(((
333 333  OK
334 334  )))
335 335  |(% style="width:305px" %)AT+APPEUI=00 b3 d5 7e f0 00 4d 34|(% style="width:186px" %)Set the Application EUI|(% style="width:191px" %)OK
336 336  
319 +(% style="display:none" %) (%%)
337 337  
338 -
339 -
340 340  == 5.2 Application Key ==
341 341  
342 342  
... ... @@ -345,17 +345,16 @@
345 345  
346 346  (% style="color:blue" %)**AT Command: AT+APPKEY**
347 347  
348 -(% border="1" style="background-color:#ffffcc; color:green; width:976.222px" %)
349 -|=(% colspan="3" style="width: 973px;" %)AT+APPKEY
350 -|(% style="width:441px" %)**Command Example**|(% style="width:180px" %)**Function**|(% style="width:350px" %)**Response**
329 +(% border="1" style="background-color:#f2f2f2; width:976.222px" %)
330 +|=(% colspan="3" style="width: 973px;background-color:#D9E2F3;color:#0070C0" %)AT+APPKEY
331 +|(% style="color:#0070c0; width:441px" %)**Command Example**|(% style="color:#0070c0; width:180px" %)**Function**|(% style="color:#0070c0; width:350px" %)**Response**
351 351  |(% 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(((
352 352  OK
353 353  )))
354 354  |(% 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
355 355  
337 +(% style="display:none" %) (%%)
356 356  
357 -
358 -
359 359  == 5.3 Application Session Key ==
360 360  
361 361  
... ... @@ -364,9 +364,9 @@
364 364  
365 365  (% style="color:blue" %)**AT Command: AT+APPSKEY**
366 366  
367 -(% border="1" style="background-color:#ffffcc; color:green; width:1040.22px" %)
368 -|=(% colspan="3" style="width: 1037px;" %)AT+APPSKEY
369 -|(% style="width:451px" %)**Command Example**|(% style="width:231px" %)**Function**|(% style="width:354px" %)**Response**
347 +(% border="1" style="background-color:#f2f2f2; width:1040.22px" %)
348 +|=(% colspan="3" style="width: 1037px;background-color:#D9E2F3;color:#0070C0" %)AT+APPSKEY
349 +|(% style="color:#0070c0; width:451px" %)**Command Example**|(% style="color:#0070c0; width:231px" %)**Function**|(% style="color:#0070c0; width:354px" %)**Response**
370 370  |(% 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(((
371 371  OK
372 372  )))
... ... @@ -374,9 +374,8 @@
374 374  OK
375 375  )))
376 376  
357 +(% style="display:none" %) (%%)
377 377  
378 -
379 -
380 380  == 5.4 Device Address ==
381 381  
382 382  
... ... @@ -385,9 +385,9 @@
385 385  
386 386  (% style="color:blue" %)**AT Command: AT+DADDR**
387 387  
388 -(% border="1" style="background-color:#ffffcc; color:green; width:795.222px" %)
389 -|=(% colspan="3" style="width: 792px;" %)AT+DADDR
390 -|(% style="width:192px" %)**Command Example**|(% style="width:241px" %)**Function**|(% style="width:359px" %)**Response**
367 +(% border="1" style="background-color:#f2f2f2; width:795.222px" %)
368 +|=(% colspan="3" style="width: 792px;background-color:#D9E2F3;color:#0070C0" %)AT+DADDR
369 +|(% style="color:#0070c0; width:192px" %)**Command Example**|(% style="color:#0070c0; width:241px" %)**Function**|(% style="color:#0070c0; width:359px" %)**Response**
391 391  |(% style="width:192px" %)AT+DADDR=?|(% style="width:241px" %)Get the Application Session Key.|(% style="width:359px" %)(While Error in format, return AT_PARAM_ERROR)(((
392 392  A8 40 41 FF
393 393  
... ... @@ -395,9 +395,8 @@
395 395  )))
396 396  |(% style="width:192px" %)AT+DADDR=A8 40 41 FF|(% style="width:241px" %)Set the Application Session Key.|(% style="width:359px" %)OK
397 397  
377 +(% style="display:none" %) (%%)
398 398  
399 -
400 -
401 401  == 5.5 Device EUI ==
402 402  
403 403  
... ... @@ -406,9 +406,9 @@
406 406  
407 407  (% style="color:blue" %)**AT Command: AT+DEUI**
408 408  
409 -(% border="1" style="background-color:#ffffcc; color:green; width:1035.22px" %)
410 -|=(% colspan="3" style="width: 1032px;" %)AT+DEUI
411 -|(% style="width:250px" %)**Command Example**|(% style="width:147px" %)**Function**|(% style="width:634px" %)**Response**
387 +(% border="1" style="background-color:#f2f2f2; width:1035.22px" %)
388 +|=(% colspan="3" style="width: 1032px;background-color:#D9E2F3;color:#0070C0" %)AT+DEUI
389 +|(% style="color:#0070c0; width:250px" %)**Command Example**|(% style="color:#0070c0; width:147px" %)**Function**|(% style="color:#0070c0; width:634px" %)**Response**
412 412  |(% style="width:250px" %)AT+DEUI=?|(% style="width:147px" %)Get the Device EUI.|(% style="width:634px" %)00 44 34 22 33 45 55 55(((
413 413  OK
414 414  )))
... ... @@ -416,9 +416,8 @@
416 416  OK
417 417  )))
418 418  
397 +(% style="display:none" %) (%%)
419 419  
420 -
421 -
422 422  == 5.6 Network ID ==
423 423  
424 424  
... ... @@ -427,17 +427,16 @@
427 427  
428 428  (% style="color:blue" %)**AT Command: AT+NWKID**
429 429  
430 -(% border="1" style="background-color:#ffffcc; color:green; width:448.222px" %)
431 -|=(% colspan="3" style="width: 445px;" %)AT+NWKID
432 -|(% style="width:191px" %)**Command Example**|(% style="width:153px" %)**Function**|(% style="width:101px" %)**Response**
407 +(% border="1" style="background-color:#f2f2f2; width:448.222px" %)
408 +|=(% colspan="3" style="width: 445px;background-color:#D9E2F3;color:#0070C0" %)AT+NWKID
409 +|(% style="color:#0070c0; width:191px" %)**Command Example**|(% style="color:#0070c0; width:153px" %)**Function**|(% style="color:#0070c0; width:101px" %)**Response**
433 433  |(% style="width:191px" %)AT+NWKID=?|(% style="width:153px" %)Get the Network ID.|(% style="width:101px" %)a8 40 41 ff(((
434 434  OK
435 435  )))
436 436  |(% style="width:191px" %)AT+NWKID=A8 40 41 FF|(% style="width:153px" %)Set the Network ID.|(% style="width:101px" %)OK
437 437  
415 +(% style="display:none" %) (%%)
438 438  
439 -
440 -
441 441  == 5.7 Network Session Key ==
442 442  
443 443  
... ... @@ -446,17 +446,16 @@
446 446  
447 447  (% style="color:blue" %)**AT Command: AT+NWKSKEY**
448 448  
449 -(% border="1" style="background-color:#ffffcc; color:green; width:1017.22px" %)
450 -|=(% colspan="3" style="width: 1014px;" %)AT+NWKSKEY
451 -|(% style="width:455px" %)**Command Example**|(% style="width:215px" %)**Function**|(% style="width:343px" %)**Response**
425 +(% border="1" style="background-color:#f2f2f2; width:1017.22px" %)
426 +|=(% colspan="3" style="width: 1014px;background-color:#D9E2F3;;color:#0070C0" %)AT+NWKSKEY
427 +|(% style="color:#0070c0; width:455px" %)**Command Example**|(% style="color:#0070c0; width:215px" %)**Function**|(% style="color:#0070c0; width:343px" %)**Response**
452 452  |(% 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(((
453 453  OK
454 454  )))
455 455  |(% 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
456 456  
433 +(% style="display:none" %) (%%)
457 457  
458 -
459 -
460 460  = 6. Joining and sending date on LoRaWAN network =
461 461  
462 462  == 6.1 Confirm Mode ==
... ... @@ -469,9 +469,9 @@
469 469  
470 470  (% style="color:blue" %)**AT Command: AT+CFM**
471 471  
472 -(% border="1" style="background-color:#ffffcc; color:green; width:710.222px" %)
473 -|=(% colspan="3" style="width: 707px;" %)AT+CFM
474 -|(% style="width:155px" %)**Command Example**|(% style="width:205px" %)**Function**|(% style="width:346px" %)**Response**
447 +(% border="1" style="background-color:#f2f2f2; width:710.222px" %)
448 +|=(% colspan="3" style="width: 707px;background-color:#D9E2F3;color:#0070C0" %)AT+CFM
449 +|(% style="color:#0070c0; width:155px" %)**Command Example**|(% style="color:#0070c0; width:205px" %)**Function**|(% style="color:#0070c0; width:346px" %)**Response**
475 475  |(% style="width:155px" %)AT+CFM=?|(% style="width:205px" %)Get the confirmation mode|(% style="width:346px" %)0(((
476 476  OK
477 477  )))
... ... @@ -487,17 +487,16 @@
487 487  * **Example 1:** Downlink Payload: 0501  ~/~/ Set AT+CFM=1
488 488  * **Example 2:** Downlink Payload: 0500  ~/~/ Set AT+CFM=0
489 489  
465 +(% style="display:none" %) (%%)
490 490  
491 -
492 -
493 493  === 6.1.2  AT+CFM command since DR-LWS007 software stack ===
494 494  
495 495  
496 496  (% style="color:blue" %)**AT Command: AT+CFM**
497 497  
498 -(% border="1" style="background-color:#ffffcc; color:green; width:710.222px" %)
499 -|=(% colspan="3" style="width: 707px;" %)AT+CFM
500 -|(% style="width:160px" %)**Command Example**|(% style="width:198px" %)**Function**|(% style="width:349px" %)**Response**
472 +(% border="1" style="background-color:#f2f2f2; width:710.222px" %)
473 +|=(% colspan="3" style="width: 707px;background-color:#D9E2F3;color:#0070C0" %)AT+CFM
474 +|(% style="color:#0070c0; width:160px" %)**Command Example**|(% style="color:#0070c0; width:198px" %)**Function**|(% style="color:#0070c0; width:349px" %)**Response**
501 501  |(% style="width:160px" %)(((
502 502  AT+CFM=1,0,0
503 503  
... ... @@ -535,9 +535,8 @@
535 535  * **Example 1:** Downlink Payload: 05010101  ~/~/ Set AT+CFM=1,1,1
536 536  * **Example 2:** Downlink Payload: 05000700  ~/~/ Set AT+CFM=0,7,0
537 537  
512 +(% style="display:none" %) (%%)
538 538  
539 -
540 -
541 541  == 6.2 Confirm Status ==
542 542  
543 543  
... ... @@ -546,16 +546,15 @@
546 546  
547 547  (% style="color:blue" %)**AT Command: AT+CFS**
548 548  
549 -(% border="1" style="background-color:#ffffcc; color:green; width:534.222px" %)
550 -|=(% colspan="3" style="width: 531px;" %)AT+CFS
551 -|(% style="width:156px" %)**Command Example**|(% style="width:193px" %)**Function**|(% style="width:178px" %)**Response**
552 -|(% style="width:156px" %)AT+CFS=?|(% style="width:193px" %)Get confirmation status|(% style="width:178px" %)0(((
522 +(% border="1" style="background-color:#f2f2f2; width:463px" %)
523 +|=(% colspan="3" style="width: 460px;background-color:#D9E2F3;color:#0070C0" %)AT+CFS
524 +|(% style="color:#0070c0; width:156px" %)**Command Example**|(% style="color:#0070c0; width:193px" %)**Function**|(% style="color:#0070c0; width:107px" %)**Response**
525 +|(% style="width:156px" %)AT+CFS=?|(% style="width:193px" %)Get confirmation status|(% style="width:107px" %)0(((
553 553  OK
554 554  )))
555 555  
529 +(% style="display:none" %) (%%)
556 556  
557 -
558 -
559 559  == 6.3 Join LoRa® Network ==
560 560  
561 561  
... ... @@ -564,18 +564,16 @@
564 564  
565 565  (% style="color:blue" %)**AT Command: AT+JOIN**
566 566  
567 -(% border="1" style="background-color:#ffffcc; color:green; width:647.222px" %)
568 -|=(% colspan="3" style="width: 644px;" %)AT+JOIN
569 -|(% style="width:163px" %)**Command Example**|(% style="width:147px" %)**Function**|(% style="width:334px" %)**Response**
539 +(% border="1" style="background-color:#f2f2f2; width:647.222px" %)
540 +|=(% colspan="3" style="width: 644px;background-color:#D9E2F3;color:#0070C0" %)AT+JOIN
541 +|(% style="color:#0070c0; width:163px" %)**Command Example**|(% style="color:#0070c0; width:147px" %)**Function**|(% style="color:#0070c0; width:334px" %)**Response**
570 570  |(% style="width:163px" %)AT+JOIN ?|(% style="width:147px" %)Get imformation.|(% style="width:334px" %)AT+JOIN: Join network(((
571 571  OK
572 -
573 573  While Error in format, return AT_BUSY_ERROR
574 574  )))
575 575  
547 +(% style="display:none" %) (%%)
576 576  
577 -
578 -
579 579  == 6.4 LoRa® Network Join Mode ==
580 580  
581 581  
... ... @@ -584,9 +584,9 @@
584 584  
585 585  (% style="color:blue" %)**AT Command: AT+NJM**
586 586  
587 -(% border="1" style="background-color:#ffffcc; color:green; width:753.222px" %)
588 -|=(% colspan="3" style="width: 750px;" %)AT+NJM
589 -|(% style="width:162px" %)**Command Example**|(% style="width:227px" %)**Function**|(% style="width:361px" %)**Response**
557 +(% border="1" style="background-color:#f2f2f2; width:753.222px" %)
558 +|=(% colspan="3" style="width: 750px;background-color:#D9E2F3;color:#0070C0" %)AT+NJM
559 +|(% style="color:#0070c0; width:162px" %)**Command Example**|(% style="color:#0070c0; width:227px" %)**Function**|(% style="color:#0070c0; 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
592 592  )))
... ... @@ -602,9 +602,8 @@
602 602  * **Example 1: **Downlink Payload: **2000                  ** ~/~/ Set AT+NJM=0
603 603  * **Example 2:** Downlink Payload: **2001**  ~/~/ Set AT+NJM=1
604 604  
575 +(% style="display:none" %) (%%)
605 605  
606 -
607 -
608 608  == 6.5 LoRa® Network Join Status ==
609 609  
610 610  
... ... @@ -613,16 +613,15 @@
613 613  
614 614  (% style="color:blue" %)**AT Command: AT+NJS**
615 615  
616 -(% border="1" style="background-color:#ffffcc; color:green; width:498.222px" %)
617 -|=(% colspan="3" style="width: 495px;" %)AT+NJS
618 -|(% style="width:169px" %)**Command Example**|(% style="width:164px" %)**Function**|(% style="width:161px" %)**Response**
585 +(% border="1" style="background-color:#f2f2f2; width:498.222px" %)
586 +|=(% colspan="3" style="width: 495px;background-color:#D9E2F3;color:#0070C0" %)AT+NJS
587 +|(% style="color:#0070c0; width:169px" %)**Command Example**|(% style="color:#0070c0; width:164px" %)**Function**|(% style="color:#0070c0; width:161px" %)**Response**
619 619  |(% style="width:169px" %)AT+NJS=?|(% style="width:164px" %)Get the join status.|(% style="width:161px" %)0(((
620 620  OK
621 621  )))
622 622  
592 +(% style="display:none" %) (%%)
623 623  
624 -
625 -
626 626  == 6.6 Print Last Received Data in Raw Format ==
627 627  
628 628  
... ... @@ -631,16 +631,15 @@
631 631  
632 632  (% style="color:blue" %)**AT Command: AT+RECV**
633 633  
634 -(% border="1" style="background-color:#ffffcc; color:green; width:587.222px" %)
635 -|=(% colspan="3" style="width: 584px;" %)AT+RECV
636 -|(% style="width:161px" %)**Command Example**|(% style="width:272px" %)**Function**|(% style="width:150px" %)**Response**
602 +(% border="1" style="background-color:#f2f2f2; width:587.222px" %)
603 +|=(% colspan="3" style="width: 584px;background-color:#D9E2F3;color:#0070C0" %)AT+RECV
604 +|(% style="color:#0070c0; width:161px" %)**Command Example**|(% style="color:#0070c0; width:272px" %)**Function**|(% style="color:#0070c0; width:150px" %)**Response**
637 637  |(% style="width:161px" %)AT+RECV=?|(% style="width:272px" %)print last received data in raw format.|(% style="width:150px" %)0:(((
638 638  OK
639 639  )))
640 640  
609 +(% style="display:none" %) (%%)
641 641  
642 -
643 -
644 644  == 6.7 Print Last Received Data in Binary Format ==
645 645  
646 646  
... ... @@ -649,16 +649,15 @@
649 649  
650 650  (% style="color:blue" %)**AT Command: AT+RECVB**
651 651  
652 -(% border="1" style="background-color:#ffffcc; color:green; width:793.222px" %)
653 -|=(% colspan="3" style="width: 790px;" %)AT+RECVB
654 -|(% style="width:173px" %)**Command Example**|(% style="width:497px" %)**Function**|(% style="width:120px" %)**Response**
619 +(% border="1" style="background-color:#f2f2f2; width:793.222px" %)
620 +|=(% colspan="3" style="width: 790px;background-color:#D9E2F3;color:#0070C0" %)AT+RECVB
621 +|(% style="color:#0070c0; width:173px" %)**Command Example**|(% style="color:#0070c0; width:497px" %)**Function**|(% style="color:#0070c0; width:120px" %)**Response**
655 655  |(% style="width:173px" %)AT+RECVB=?|(% style="width:497px" %)print last received data in binary format (with hexadecimal values).|(% style="width:120px" %)2: 0010(((
656 656  OK
657 657  )))
658 658  
626 +(% style="display:none" %) (%%)
659 659  
660 -
661 -
662 662  == 6.8 Send Text Data ==
663 663  
664 664  
... ... @@ -667,20 +667,16 @@
667 667  
668 668  (% style="color:blue" %)**AT Command: AT+SEND**
669 669  
670 -(% border="1" style="background-color:#ffffcc; color:green; width:991.222px" %)
671 -|=(% colspan="3" style="width: 988px;" %)AT+SEND
672 -|(% style="width:201px" %)**Command Example**|(% style="width:340px" %)**Function**|(% style="width:446px" %)**Response**
636 +(% border="1" style="background-color:#f2f2f2; width:991.222px" %)
637 +|=(% colspan="3" style="width: 988px;background-color:#D9E2F3;color:#0070C0" %)AT+SEND
638 +|(% style="color:#0070c0; width:201px" %)**Command Example**|(% style="color:#0070c0; width:340px" %)**Function**|(% style="color:#0070c0; width:446px" %)**Response**
673 673  |(% style="width:201px" %)AT+SEND=12:hello world|(% style="width:340px" %)Send text data along with the application port.|(% style="width:446px" %)OK(((
674 674  While Error in format, return
675 -
676 676  AT_BUSY_ERROR/AT_BUSY_ERROR/AT_NO_NETWORK_JOINED
677 -
678 -
679 679  )))
680 680  
644 +(% style="display:none" %) (%%)
681 681  
682 -
683 -
684 684  == 6.9 Send Hexadecimal Data ==
685 685  
686 686  
... ... @@ -689,19 +689,16 @@
689 689  
690 690  (% style="color:blue" %)**AT Command: AT+SENDB**
691 691  
692 -(% border="1" style="background-color:#ffffcc; color:green; width:1101px" %)
693 -|=(% colspan="3" style="width: 1098px;" %)AT+SENDB
694 -|(% style="width:257px" %)**Command Example**|(% style="width:394px" %)**Function**|(% style="width:446px" %)**Response**
654 +(% border="1" style="background-color:f2f2f2; width:1101px" %)
655 +|=(% colspan="3" style="width: 1098px;background-color:#D9E2F3;color:#0070C0" %)AT+SENDB
656 +|(% style="color:#0070c0; width:257px" %)**Command Example**|(% style="color:#0070c0; width:394px" %)**Function**|(% style="color:#0070c0; width:446px" %)**Response**
695 695  |(% style="width:257px" %)AT+SENDB=12:abcdef0123456789|(% style="width:394px" %)Send hexadecimal data along with the application port.|(% style="width:446px" %)OK
696 696  |(% 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(((
697 -AT_PARAM_ERROR AT_BUSY_ERROR/AT_NO_NETWORK_JOINED
698 -
699 -
659 +AT_PARAM_ERROR AT_BUSY_ERROR/AT_NO_NETWORK_JOINED
700 700  )))
701 701  
662 +(% style="display:none" %) (%%)
702 702  
703 -
704 -
705 705  = 7. LoRaWAN network management =
706 706  
707 707  == 7.1 Adaptive Data Rate ==
... ... @@ -712,9 +712,9 @@
712 712  
713 713  (% style="color:blue" %)**AT Command: AT+ADR**
714 714  
715 -(% border="1" style="background-color:#ffffcc; color:green; width:683.222px" %)
716 -|=(% colspan="3" style="width: 680px;" %)AT+ADR
717 -|(% style="width:162px" %)**Command Example**|(% style="width:266px" %)**Function**|(% style="width:250px" %)**Response**
674 +(% border="1" style="background-color:f2f2f2; width:683.222px" %)
675 +|=(% colspan="3" style="width: 680px;background-color:#D9E2F3;color:#0070C0" %)AT+ADR
676 +|(% style="color:#0070c0; width:162px" %)**Command Example**|(% style="color:#0070c0; width:266px" %)**Function**|(% style="color:#0070c0; width:250px" %)**Response**
718 718  |(% style="width:162px" %)AT+ADR=?|(% style="width:266px" %)Get the Adaptive Data Rate setting.|(% style="width:250px" %)1(((
719 719  OK
720 720  )))
... ... @@ -730,9 +730,8 @@
730 730  * **Example 1**: Downlink Payload: **2201**  ~/~/ Set AT+ADR=1.
731 731  * **Example 2**: Downlink Payload: **2200FFFF**  ~/~/ Set AT+ADR=0.
732 732  
692 +(% style="display:none" %) (%%)
733 733  
734 -
735 -
736 736  == 7.2 LoRa® Class ==
737 737  
738 738  
... ... @@ -741,9 +741,9 @@
741 741  
742 742  (% style="color:blue" %)**AT Command:  AT+CLASS**
743 743  
744 -(% border="1" style="background-color:#ffffcc; color:green; width:507.222px" %)
745 -|=(% colspan="3" style="width: 504px;" %)AT+CLASS
746 -|(% style="width:163px" %)**Command Example**|(% style="width:166px" %)**Function**|(% style="width:175px" %)**Response**
702 +(% border="1" style="background-color:#f2f2f2; width:507.222px" %)
703 +|=(% colspan="3" style="width: 504px;background-color:#D9E2F3;color:#0070C0" %)AT+CLASS
704 +|(% style="color:#0070c0; width:163px" %)**Command Example**|(% style="color:#0070c0; width:166px" %)**Function**|(% style="color:#0070c0; width:175px" %)**Response**
747 747  |(% style="width:163px" %)AT+CLASS=?|(% style="width:166px" %)Get the Device Class.|(% style="width:175px" %)A(((
748 748  OK
749 749  )))
... ... @@ -751,8 +751,12 @@
751 751  
752 752  )))
753 753  
712 +(% style="display:none" %)
754 754  
714 +(% style="color:red" %)**Notice:**
755 755  
716 +* Run AT+FDR before running AT+CLASS=C
717 +* After change to Class=C, Before OTAA Join Successfule, the end node will still shows to use CLASS=A for OTAA Joined. It will use CLASS=C after OTAA Join Succeccful.
756 756  
757 757  == 7.3 Duty Cycle Setting ==
758 758  
... ... @@ -762,9 +762,9 @@
762 762  
763 763  (% style="color:blue" %)**AT Command:  AT+DCS**
764 764  
765 -(% border="1" style="background-color:#ffffcc; color:green; width:515.222px" %)
766 -|=(% colspan="3" style="width: 512px;" %)AT+DCS
767 -|(% style="width:165px" %)**Command Example**|(% style="width:239px" %)**Function**|(% style="width:107px" %)**Response**
727 +(% border="1" style="background-color:#f2f2f2; width:515.222px" %)
728 +|=(% colspan="3" style="width: 512px;background-color:#D9E2F3;color:#0070C0" %)AT+DCS
729 +|(% style="color:#0070c0; width:165px" %)**Command Example**|(% style="color:#0070c0; width:239px" %)**Function**|(% style="color:#0070c0; width:107px" %)**Response**
768 768  |(% style="width:165px" %)AT+DCS=?|(% style="width:239px" %)Get the ETSI Duty Cycle setting.|(% style="width:107px" %)1(((
769 769  OK
770 770  )))
... ... @@ -772,20 +772,24 @@
772 772  
773 773  )))
774 774  
737 +(% style="display:none" %) (%%)
775 775  
776 -
777 -
778 778  == 7.4 Data Rate ==
779 779  
780 780  
781 -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
742 +Feature: Get or Set the Data Rate. (0-7 corresponding to DR_X) .
782 782  
744 +(% style="color:red" %)
745 +**Notice:**
783 783  
747 +* 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.
748 +* 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/]]
749 +
784 784  (% style="color:blue" %)**AT Command: AT+DR**
785 785  
786 -(% border="1" style="background-color:#ffffcc; color:green; width:466.222px" %)
787 -|=(% colspan="3" style="width: 463px;" %)AT+DR
788 -|(% style="width:156px" %)**Command Example**|(% style="width:167px" %)**Function**|(% style="width:140px" %)**Response**
752 +(% border="1" style="background-color:#f2f2f2; width:466.222px" %)
753 +|=(% colspan="3" style="width: 463px;background-color:#D9E2F3;color:#0070C0" %)AT+DR
754 +|(% style="color:#0070c0; width:156px" %)**Command Example**|(% style="color:#0070c0; width:167px" %)**Function**|(% style="color:#0070c0; width:140px" %)**Response**
789 789  |(% style="width:156px" %)AT+DR=?|(% style="width:167px" %)Get the Data Rate.|(% style="width:140px" %)5(((
790 790  OK
791 791  )))
... ... @@ -800,9 +800,8 @@
800 800  * **Example 1**: Downlink Payload: **220001FF**  ~/~/ Set AT+DR=1.
801 801  * **Example 2**: Downlink Payload: **220000FF**  ~/~/ Set AT+DR=0.
802 802  
769 +(% style="display:none" %) (%%)
803 803  
804 -
805 -
806 806  == 7.5 Frame Counter Downlink ==
807 807  
808 808  
... ... @@ -811,9 +811,9 @@
811 811  
812 812  (% style="color:blue" %)**AT Command:  AT+FCD**
813 813  
814 -(% border="1" style="background-color:#ffffcc; color:green; width:693.222px" %)
815 -|=(% colspan="3" style="width: 690px;" %)AT+FCD
816 -|(% style="width:162px" %)**Command Example**|(% style="width:258px" %)**Function**|(% style="width:269px" %)**Response**
779 +(% border="1" style="background-color:#f2f2f2; width:693.222px" %)
780 +|=(% colspan="3" style="width: 690px;background-color:#D9E2F3;color:#0070C0" %)AT+FCD
781 +|(% style="color:#0070c0; width:162px" %)**Command Example**|(% style="color:#0070c0; width:258px" %)**Function**|(% style="color:#0070c0; width:269px" %)**Response**
817 817  |(% style="width:162px" %)AT+FCD=?|(% style="width:258px" %)Get the Frame Counter Downlink.|(% style="width:269px" %)0(((
818 818  OK
819 819  )))
... ... @@ -821,9 +821,8 @@
821 821  OK
822 822  )))
823 823  
789 +(% style="display:none" %) (%%)
824 824  
825 -
826 -
827 827  == 7.6 Frame Counter Uplink ==
828 828  
829 829  Feature: Get or Set the Frame Counter Uplink.
... ... @@ -831,9 +831,9 @@
831 831  
832 832  (% style="color:blue" %)**AT Command:  AT+FCU**
833 833  
834 -(% border="1" style="background-color:#ffffcc; color:green; width:534.222px" %)
835 -|=(% colspan="3" style="width: 531px;" %)AT+FCU
836 -|(% style="width:177px" %)**Command Example**|(% style="width:239px" %)**Function**|(% style="width:113px" %)**Response**
798 +(% border="1" style="background-color:#f2f2f2; width:534.222px" %)
799 +|=(% colspan="3" style="width: 531px;background-color:#D9E2F3;color:#0070C0" %)AT+FCU
800 +|(% style="color:#0070c0; width:177px" %)**Command Example**|(% style="color:#0070c0; width:239px" %)**Function**|(% style="color:#0070c0; width:113px" %)**Response**
837 837  |(% style="width:177px" %)AT+FCU=?|(% style="width:239px" %)Get the Frame Counter Uplink.|(% style="width:113px" %)0(((
838 838  OK
839 839  )))
... ... @@ -841,9 +841,8 @@
841 841  
842 842  )))
843 843  
808 +(% style="display:none" %) (%%)
844 844  
845 -
846 -
847 847  == 7.7 Join Accept Delay1 ==
848 848  
849 849  
... ... @@ -852,9 +852,9 @@
852 852  
853 853  (% style="color:blue" %)**AT Command:  AT+JN1DL**
854 854  
855 -(% border="1" style="background-color:#ffffcc; color:green; width:537.222px" %)
856 -|=(% colspan="3" style="width: 534px;" %)AT+JN1DL
857 -|(% style="width:164px" %)**Command Example**|(% style="width:229px" %)**Function**|(% style="width:140px" %)**Response**
818 +(% border="1" style="background-color:#f2f2f2; width:537.222px" %)
819 +|=(% colspan="3" style="width: 534px;background-color:#D9E2F3;color:#0070C0" %)AT+JN1DL
820 +|(% style="color:#0070c0; width:164px" %)**Command Example**|(% style="color:#0070c0; width:229px" %)**Function**|(% style="color:#0070c0; width:140px" %)**Response**
858 858  |(% style="width:164px" %)AT+JN1DL=?|(% style="width:229px" %)Get the Join Accept Delay.|(% style="width:140px" %)5000(((
859 859  OK
860 860  )))
... ... @@ -862,9 +862,8 @@
862 862  
863 863  )))
864 864  
828 +(% style="display:none" %) (%%)
865 865  
866 -
867 -
868 868  == 7.8 Join Accept Delay2 ==
869 869  
870 870  
... ... @@ -873,9 +873,9 @@
873 873  
874 874  (% style="color:blue" %)**AT Command:  AT+JN2DL**
875 875  
876 -(% border="1" style="background-color:#ffffcc; color:green; width:538.222px" %)
877 -|=(% colspan="3" style="width: 535px;" %)AT+JN2DL
878 -|(% style="width:160px" %)**Command Example**|(% style="width:228px" %)**Function**|(% style="width:146px" %)**Response**
838 +(% border="1" style="background-color:#f2f2f2; width:538.222px" %)
839 +|=(% colspan="3" style="width: 535px;background-color:#D9E2F3;color:#0070C0" %)AT+JN2DL
840 +|(% style="color:#0070c0; width:160px" %)**Command Example**|(% style="color:#0070c0; width:228px" %)**Function**|(% style="color:#0070c0; width:146px" %)**Response**
879 879  |(% style="width:160px" %)AT+JN2DL=?|(% style="width:228px" %)Get the Join Accept Delay.|(% style="width:146px" %)6000(((
880 880  OK
881 881  )))
... ... @@ -883,9 +883,8 @@
883 883  
884 884  )))
885 885  
848 +(% style="display:none" %) (%%)
886 886  
887 -
888 -
889 889  == 7.9 Public Network Mode ==
890 890  
891 891  
... ... @@ -896,9 +896,9 @@
896 896  
897 897  (% style="color:blue" %)**AT Command:  AT+PNM**
898 898  
899 -(% border="1" style="background-color:#ffffcc; color:green; width:667.222px" %)
900 -|=(% colspan="3" style="width: 664px;" %)AT+PNM
901 -|(% style="width:166px" %)**Command Example**|(% style="width:225px" %)**Function**|(% style="width:272px" %)**Response**
860 +(% border="1" style="background-color:#f2f2f2; width:667.222px" %)
861 +|=(% colspan="3" style="width: 664px;background-color:#D9E2F3;color:#0070C0" %)AT+PNM
862 +|(% style="color:#0070c0; width:166px" %)**Command Example**|(% style="color:#0070c0; width:225px" %)**Function**|(% style="color:#0070c0; width:272px" %)**Response**
902 902  |(% style="width:166px" %)AT+PNM=?|(% style="width:225px" %)Get the public network mode.|(% style="width:272px" %)1(((
903 903  OK
904 904  )))
... ... @@ -913,9 +913,8 @@
913 913  )))
914 914  |(% style="width:166px" %)AT+PNM=0|(% style="width:225px" %)Set to use private network autoset syncword=0x12|(% style="width:272px" %)
915 915  
877 +(% style="display:none" %) (%%)
916 916  
917 -
918 -
919 919  == 7.10 Receive Delay1 ==
920 920  
921 921  
... ... @@ -924,9 +924,9 @@
924 924  
925 925  (% style="color:blue" %)**AT Command: AT+RX1DL**
926 926  
927 -(% border="1" style="background-color:#ffffcc; color:green; width:408.222px" %)
928 -|=(% colspan="3" style="width: 405px;" %)AT+RX1DL
929 -|(% style="width:155px" %)**Command Example**|(% style="width:128px" %)**Function**|(% style="width:122px" %)**Response**
887 +(% border="1" style="background-color:#f2f2f2; width:408.222px" %)
888 +|=(% colspan="3" style="width: 405px;background-color:#D9E2F3;color:#0070C0" %)AT+RX1DL
889 +|(% style="color:#0070c0; width:155px" %)**Command Example**|(% style="color:#0070c0; width:128px" %)**Function**|(% style="color:#0070c0; width:122px" %)**Response**
930 930  |(% style="width:155px" %)AT+RX1DL=?|(% style="width:128px" %)Get the delay.|(% style="width:122px" %)1000(((
931 931  OK
932 932  )))
... ... @@ -934,9 +934,8 @@
934 934  
935 935  )))
936 936  
897 +(% style="display:none" %) (%%)
937 937  
938 -
939 -
940 940  == 7.11 Receive Delay2 ==
941 941  
942 942  
... ... @@ -945,9 +945,9 @@
945 945  
946 946  (% style="color:blue" %)**AT Command: AT+RX2DL**
947 947  
948 -(% border="1" style="background-color:#ffffcc; color:green; width:481.222px" %)
949 -|=(% colspan="3" style="width: 478px;" %)AT+RX2DL
950 -|(% style="width:175px" %)**Command Example**|(% style="width:152px" %)**Function**|(% style="width:150px" %)**Response**
907 +(% border="1" style="background-color:#f2f2f2; width:481.222px" %)
908 +|=(% colspan="3" style="width: 478px;background-color:#D9E2F3;color:#0070C0" %)AT+RX2DL
909 +|(% style="color:#0070c0; width:175px" %)**Command Example**|(% style="color:#0070c0; width:152px" %)**Function**|(% style="color:#0070c0; width:150px" %)**Response**
951 951  |(% style="width:175px" %)AT+RX2DL=?|(% style="width:152px" %)Get the delay.|(% style="width:150px" %)2000(((
952 952  OK
953 953  )))
... ... @@ -955,9 +955,8 @@
955 955  
956 956  )))
957 957  
917 +(% style="display:none" %) (%%)
958 958  
959 -
960 -
961 961  == 7.12 Rx2 Window Data Rate ==
962 962  
963 963  
... ... @@ -966,9 +966,9 @@
966 966  
967 967  (% style="color:blue" %)**AT Command:  AT+RX2DR**
968 968  
969 -(% border="1" style="background-color:#ffffcc; color:green; width:525.222px" %)
970 -|=(% colspan="3" style="width: 522px;" %)AT+RX2DR
971 -|(% style="width:160px" %)**Command Example**|(% style="width:232px" %)**Function**|(% style="width:130px" %)**Response**
927 +(% border="1" style="background-color:#f2f2f2; width:525.222px" %)
928 +|=(% colspan="3" style="width: 522px;background-color:#D9E2F3;color:#0070C0" %)AT+RX2DR
929 +|(% style="color:#0070c0; width:160px" %)**Command Example**|(% style="color:#0070c0; width:232px" %)**Function**|(% style="color:#0070c0; width:130px" %)**Response**
972 972  |(% style="width:160px" %)AT+RX2DR=?|(% style="width:232px" %)Get the Rx2 window data rate.|(% style="width:130px" %)2(((
973 973  OK
974 974  )))
... ... @@ -976,9 +976,8 @@
976 976  
977 977  )))
978 978  
937 +(% style="display:none" %) (%%)
979 979  
980 -
981 -
982 982  == 7.13 Rx2 Window Frequency ==
983 983  
984 984  
... ... @@ -987,9 +987,9 @@
987 987  
988 988  (% style="color:blue" %)**AT Command:  AT+RX2FQ**
989 989  
990 -(% border="1" style="background-color:#ffffcc; color:green; width:587.222px" %)
991 -|=(% colspan="3" style="width: 584px;" %)AT+RX2FQ
992 -|(% style="width:183px" %)**Command Example**|(% style="width:240px" %)**Function**|(% style="width:160px" %)**Response**
947 +(% border="1" style="background-color:#f2f2f2; width:587.222px" %)
948 +|=(% colspan="3" style="width: 584px;background-color:#D9E2F3;color:#0070C0" %)AT+RX2FQ
949 +|(% style="color:#0070c0; width:183px" %)**Command Example**|(% style="color:#0070c0; width:240px" %)**Function**|(% style="color:#0070c0; width:160px" %)**Response**
993 993  |(% style="width:183px" %)AT+RX2FQ=?|(% style="width:240px" %)Get the Rx2 window frequency.|(% style="width:160px" %)434665000(((
994 994  OK
995 995  )))
... ... @@ -997,9 +997,8 @@
997 997  
998 998  )))
999 999  
957 +(% style="display:none" %) (%%)
1000 1000  
1001 -
1002 -
1003 1003  == 7.14 Transmit Power ==
1004 1004  
1005 1005  
... ... @@ -1010,9 +1010,9 @@
1010 1010  
1011 1011  (% style="color:blue" %)**AT Command:  AT+TXP**
1012 1012  
1013 -(% border="1" style="background-color:#ffffcc; color:green; width:465.222px" %)
1014 -|=(% colspan="3" style="width: 462px;" %)AT+TXP
1015 -|(% style="width:161px" %)**Command Example**|(% style="width:189px" %)**Function**|(% style="width:112px" %)**Response**
969 +(% border="1" style="background-color:#f2f2f2; width:465.222px" %)
970 +|=(% colspan="3" style="width: 462px;background-color:#D9E2F3;color:#0070C0" %)AT+TXP
971 +|(% style="color:#0070c0; width:161px" %)**Command Example**|(% style="color:#0070c0; width:189px" %)**Function**|(% style="color:#0070c0; width:112px" %)**Response**
1016 1016  |(% style="width:161px" %)AT+TXP=?|(% style="width:189px" %)Get the Transmit Power.|(% style="width:112px" %)0(((
1017 1017  OK
1018 1018  )))
... ... @@ -1025,11 +1025,10 @@
1025 1025  If the downlink payload=22000100, it means setting the TXP to 0.
1026 1026  
1027 1027  * **Example 1**: Downlink Payload: **22000102**  ~/~/ Set AT+TXP=2.
1028 -* **Example 2**: Downlink Payload: **220000FF**  ~/~/ Set AT+TXP=0.
984 +* **Example 2**: Downlink Payload: **22000000**  ~/~/ Set AT+TXP=0.
1029 1029  
986 +(% style="display:none" %) (%%)
1030 1030  
1031 -
1032 -
1033 1033  == 7.15 RSSI of the Last Received Packet ==
1034 1034  
1035 1035  
... ... @@ -1038,16 +1038,15 @@
1038 1038  
1039 1039  (% style="color:blue" %)**AT Command:AT+RSSI**
1040 1040  
1041 -(% border="1" style="background-color:#ffffcc; color:green; width:557.222px" %)
1042 -|=(% colspan="3" style="width: 554px;" %)AT+RSSI
1043 -|(% style="width:164px" %)**Command Example**|(% style="width:289px" %)**Function**|(% style="width:100px" %)**Response**
996 +(% border="1" style="background-color:#f2f2f2; width:557.222px" %)
997 +|=(% colspan="3" style="width: 554px;background-color:#D9E2F3;color:#0070C0" %)AT+RSSI
998 +|(% style="color:#0070c0; width:164px" %)**Command Example**|(% style="color:#0070c0; width:289px" %)**Function**|(% style="color:#0070c0; width:100px" %)**Response**
1044 1044  |(% style="width:164px" %)AT+RSSI=?|(% style="width:289px" %)Get the RSSI of the last received packet.|(% style="width:100px" %)0(((
1045 1045  OK
1046 1046  )))
1047 1047  
1003 +(% style="display:none" %) (%%)
1048 1048  
1049 -
1050 -
1051 1051  == 7.16 SNR of the Last Received Packet ==
1052 1052  
1053 1053  
... ... @@ -1056,16 +1056,15 @@
1056 1056  
1057 1057  (% style="color:blue" %)**AT Command:  AT+SNR**
1058 1058  
1059 -(% border="1" style="background-color:#ffffcc; color:green; width:571.222px" %)
1060 -|=(% colspan="3" style="width: 568px;" %)AT+SNR
1061 -|(% style="width:164px" %)**Command Example**|(% style="width:290px" %)**Function**|(% style="width:113px" %)**Response**
1013 +(% border="1" style="background-color:#f2f2f2; width:571.222px" %)
1014 +|=(% colspan="3" style="width: 568px;background-color:#D9E2F3;color:#0070C0" %)AT+SNR
1015 +|(% style="color:#0070c0; width:164px" %)**Command Example**|(% style="color:#0070c0; width:290px" %)**Function**|(% style="color:#0070c0; width:113px" %)**Response**
1062 1062  |(% style="width:164px" %)AT+SNR=?|(% style="width:290px" %)Get the RSSI of the last received packet.|(% style="width:113px" %)0(((
1063 1063  OK
1064 1064  )))
1065 1065  
1020 +(% style="display:none" %) (%%)
1066 1066  
1067 -
1068 -
1069 1069  == 7.17 Application Port ==
1070 1070  
1071 1071  
... ... @@ -1074,9 +1074,9 @@
1074 1074  
1075 1075  (% style="color:blue" %)**AT Command: AT+PORT**
1076 1076  
1077 -(% border="1" style="background-color:#ffffcc; color:green; width:500.222px" %)
1078 -|=(% colspan="3" style="width: 497px;" %)AT+PORT
1079 -|(% style="width:157px" %)**Command Example**|(% style="width:204px" %)**Function**|(% style="width:135px" %)**Response**
1030 +(% border="1" style="background-color:#f2f2f2; width:500.222px" %)
1031 +|=(% colspan="3" style="width: 497px;background-color:#D9E2F3;color:#0070C0" %)AT+PORT
1032 +|(% style="color:#0070c0; width:157px" %)**Command Example**|(% style="color:#0070c0; width:204px" %)**Function**|(% style="color:#0070c0; width:135px" %)**Response**
1080 1080  |(% style="width:157px" %)AT+PORT=?|(% style="width:204px" %)Get the application port|(% style="width:135px" %)21(((
1081 1081  OK
1082 1082  )))
... ... @@ -1091,9 +1091,8 @@
1091 1091  * **Example 1**: Downlink Payload: **2301**  ~/~/ set the application port to 1
1092 1092  * **Example 2**: Downlink Payload:** 2305**  ~/~/ set the application port to 5
1093 1093  
1047 +(% style="display:none" %) (%%)
1094 1094  
1095 -
1096 -
1097 1097  == 7.18 Single Channel Mode ==
1098 1098  
1099 1099  
... ... @@ -1102,17 +1102,16 @@
1102 1102  
1103 1103  (% style="color:blue" %)**AT Command: AT+CHS**
1104 1104  
1105 -(% border="1" style="background-color:#ffffcc; color:green; width:603.222px" %)
1106 -|=(% colspan="3" style="width: 600px;" %)AT+CHS
1107 -|(% style="width:182px" %)**Command Example**|(% style="width:295px" %)**Function**|(% style="width:122px" %)**Response**
1057 +(% border="1" style="background-color:#f2f2f2; width:603.222px" %)
1058 +|=(% colspan="3" style="width: 600px;background-color:#D9E2F3;color:#0070C0" %)AT+CHS
1059 +|(% style="color:#0070c0; width:182px" %)**Command Example**|(% style="color:#0070c0; width:295px" %)**Function**|(% style="color:#0070c0; width:122px" %)**Response**
1108 1108  |(% style="width:182px" %)AT+CHS=?|(% style="width:295px" %)Get Frequency for Single Channel Mode|(% style="width:122px" %)0(((
1109 1109  OK
1110 1110  )))
1111 1111  |(% style="width:182px" %)AT+CHS=868100000|(% style="width:295px" %)Set Frequency for Single Channel Mode|(% style="width:122px" %)OK
1112 1112  
1065 +(% style="display:none" %) (%%)
1113 1113  
1114 -
1115 -
1116 1116  == 7.19 Eight Channel Mode ==
1117 1117  
1118 1118  
... ... @@ -1121,9 +1121,9 @@
1121 1121  
1122 1122  (% style="color:blue" %)**AT Command: AT+CHE**
1123 1123  
1124 -(% border="1" style="background-color:#ffffcc; color:green; width:710.222px" %)
1125 -|=(% colspan="3" style="width: 707px;" %)AT+CHE
1126 -|(% style="width:160px" %)**Command Example**|(% style="width:198px" %)**Function**|(% style="width:349px" %)**Response**
1075 +(% border="1" style="background-color:#f2f2f2; width:710.222px" %)
1076 +|=(% colspan="3" style="width: 707px;background-color:#D9E2F3;color:#0070C0" %)AT+CHE
1077 +|(% style="color:#0070c0; width:160px" %)**Command Example**|(% style="color:#0070c0; width:198px" %)**Function**|(% style="color:#0070c0; width:349px" %)**Response**
1127 1127  |(% style="width:160px" %)AT+CHE=?|(% style="width:198px" %)Get eight channels mode|(% style="width:349px" %)1(((
1128 1128  902.3 902.5 902.7 902.9 903.1 903.3 903.5 903.7
1129 1129  
... ... @@ -1131,7 +1131,7 @@
1131 1131  )))
1132 1132  |(% style="width:160px" %)AT+CHE=1|(% style="width:198px" %)Set eight channels mode|(% style="width:349px" %)OK
1133 1133  
1134 -(% style="color:blue" %)**Downlink Command: 0x24**
1085 +(% style="color:blue" %)**Downlink Command: 0x24 (LHT65,LHT65N Downlink Command:0x07)**
1135 1135  
1136 1136  Format: Command Code (0x24) followed by 1 bytes channel value.
1137 1137  
... ... @@ -1140,9 +1140,8 @@
1140 1140  * **Example 1**: Downlink Payload: 2401  ~/~/ set channel mode to 1
1141 1141  * **Example 2**: Downlink Payload: 2405  ~/~/ set channel mode to 5
1142 1142  
1094 +(% style="display:none" %) (%%)
1143 1143  
1144 -
1145 -
1146 1146  == 7.20 Get or Set RXwindows1 timeout ==
1147 1147  
1148 1148  
... ... @@ -1151,33 +1151,27 @@
1151 1151  
1152 1152  (% style="color:blue" %)**AT Command: AT+RX1WTO**
1153 1153  
1154 -(% border="1" style="background-color:#ffffcc; color:green; width:460.222px" %)
1155 -|=(% colspan="3" style="width: 457px;" %)AT+ RX1WTO
1156 -|(% style="width:163px" %)**Command Example**|(% style="width:201px" %)**Function**|(% style="width:93px" %)**Response**
1104 +(% border="1" style="background-color:#f2f2f2; width:460.222px" %)
1105 +|=(% colspan="3" style="width: 457px;background-color:#D9E2F3;color:#0070C0" %)AT+ RX1WTO
1106 +|(% style="color:#0070c0; width:163px" %)**Command Example**|(% style="color:#0070c0; width:201px" %)**Function**|(% style="color:#0070c0; width:93px" %)**Response**
1157 1157  |(% style="width:163px" %)AT+RX1WTO=?|(% style="width:201px" %)Get RXwindows1 timeout|(% style="width:93px" %)14(((
1158 1158  OK
1159 1159  )))
1160 1160  |(% style="width:163px" %)AT+RX1WTO=60|(% style="width:201px" %)Set RXwindows1 timeout|(% style="width:93px" %)OK
1161 1161  
1162 -(((
1163 -
1112 +(% style="display:none" %) (%%)
1164 1164  
1165 -
1114 +(((
1166 1166  (% 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.
1167 -
1168 -
1169 1169  )))
1170 1170  
1171 1171  [[image:image-20220526162535-1.png]]
1172 1172  
1173 -
1174 1174  (((
1175 1175  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.
1176 -
1177 -
1178 -
1179 1179  )))
1180 1180  
1124 +
1181 1181  == 7.21 Get or Set RXwindows2 timeout ==
1182 1182  
1183 1183  
... ... @@ -1186,17 +1186,16 @@
1186 1186  
1187 1187  (% style="color:blue" %)**AT Command: AT+RX2WTO**
1188 1188  
1189 -(% border="1" style="background-color:#ffffcc; color:green; width:497.222px" %)
1190 -|=(% colspan="3" style="width: 494px;" %)AT+ RX2WTO
1191 -|(% style="width:190px" %)**Command Example**|(% style="width:199px" %)**Function**|(% style="width:104px" %)**Response**
1133 +(% border="1" style="background-color:#f2f2f2; width:497.222px" %)
1134 +|=(% colspan="3" style="width: 494px;background-color:#D9E2F3;color:#0070C0" %)AT+ RX2WTO
1135 +|(% style="color:#0070c0; width:190px" %)**Command Example**|(% style="color:#0070c0; width:199px" %)**Function**|(% style="color:#0070c0; width:104px" %)**Response**
1192 1192  |(% style="width:190px" %)AT+RX2WTO=?|(% style="width:199px" %)Get RXwindows2 timeout|(% style="width:104px" %)7(((
1193 1193  OK
1194 1194  )))
1195 1195  |(% style="width:190px" %)AT+RX2WTO=20|(% style="width:199px" %)Set RXwindows2 timeout|(% style="width:104px" %)OK
1196 1196  
1141 +(% style="display:none" %) (%%)
1197 1197  
1198 -
1199 -
1200 1200  == 7.22 Setting up uplinkdwelltime (as923, au915) ==
1201 1201  
1202 1202  
... ... @@ -1205,9 +1205,9 @@
1205 1205  
1206 1206  (% style="color:blue" %)**AT Command: AT+DWELLT**
1207 1207  
1208 -(% border="1" style="background-color:#ffffcc; color:green; width:497.222px" %)
1209 -|=(% colspan="3" style="width: 494px;" %)AT+DWELLT
1210 -|(% style="width:183px" %)**Command Example**|(% style="width:179px" %)**Function**|(% style="width:131px" %)**Response**
1151 +(% border="1" style="background-color:#f2f2f2; width:497.222px" %)
1152 +|=(% colspan="3" style="width: 494px;background-color:#D9E2F3;color:#0070C0" %)AT+DWELLT
1153 +|(% style="color:#0070c0; width:183px" %)**Command Example**|(% style="color:#0070c0; width:179px" %)**Function**|(% style="color:#0070c0; width:131px" %)**Response**
1211 1211  |(% style="width:183px" %)AT+DWELLT=?|(% style="width:179px" %)Get uplinkdwelltime|(% style="width:131px" %)1(((
1212 1212  OK
1213 1213  )))
... ... @@ -1222,9 +1222,8 @@
1222 1222  * **Example 1**: Downlink Payload: **2501**  ~/~/ set uplinkdwelltime to 1
1223 1223  * **Example 2**: Downlink Payload: **2500**  ~/~/ set uplinkdwelltime to 0
1224 1224  
1168 +(% style="display:none" %) (%%)
1225 1225  
1226 -
1227 -
1228 1228  == 7.23 Set Packet Receiving Response Level ==
1229 1229  
1230 1230  
... ... @@ -1231,7 +1231,7 @@
1231 1231  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.
1232 1232  
1233 1233  
1234 -**RPL value:**
1176 +(% style="color:blue" %)**RPL value:**
1235 1235  
1236 1236  * **AT+RPL=0:** Device won't immediately reply any downlink commands from platform.
1237 1237  * **AT+RPL=1:** Device will immediately reply message to Unconfirmed Data Down. Payload is 0x00.
... ... @@ -1239,7 +1239,7 @@
1239 1239  * **AT+RPL=3:** Device will immediately reply message to MAC Command. Payload is 0x00 and requied response header for this command.
1240 1240  * **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.
1241 1241  
1242 -**Case Analyes:**
1184 +(% style="color:blue" %)**Case Analyes:**
1243 1243  
1244 1244  * For Class A devices, AT+RPL=0 is ok. that is defaut settings in software.
1245 1245  * For Class C devices used in ChirpStack, need to set AT+RPL=4 because Chirpstack require immedietely reply message to MAC Command.
... ... @@ -1247,9 +1247,9 @@
1247 1247  
1248 1248  (% style="color:blue" %)**AT Command: AT+RPL**
1249 1249  
1250 -(% border="1" style="background-color:#ffffcc; color:green; width:536.222px" %)
1251 -|=(% colspan="3" style="width: 533px;" %)AT+RPL
1252 -|(% style="width:160px" %)**Command Example**|(% style="width:263px" %)**Function**|(% style="width:109px" %)**Response**
1192 +(% border="1" style="background-color:#f2f2f2; width:536.222px" %)
1193 +|=(% colspan="3" style="width: 533px;background-color:#D9E2F3;color:#0070C0" %)AT+RPL
1194 +|(% style="color:#0070c0; width:160px" %)**Command Example**|(% style="color:#0070c0; width:263px" %)**Function**|(% style="color:#0070c0; width:109px" %)**Response**
1253 1253  |(% style="width:160px" %)AT+RPL=?|(% style="width:263px" %)Get packet receiving response level|(% style="width:109px" %)1(((
1254 1254  OK
1255 1255  )))
... ... @@ -1264,17 +1264,16 @@
1264 1264  * **Example 1**: Downlink Payload: **2101**  ~/~/ set packet receiving response level to 1
1265 1265  * **Example 2**: Downlink Payload: **2102**  ~/~/ set packet receiving response level to 2
1266 1266  
1209 +(% style="display:none" %) (%%)
1267 1267  
1268 -
1269 -
1270 1270  == 7.24 Controls NBTrans in unconfirmed uplink mode(LWS007 NBTrans:Set retransmission packets) ==
1271 1271  
1272 1272  
1273 1273  (% style="color:blue" %)**AT Command: AT+SETMAXNBTRANS **
1274 1274  
1275 -(% border="1" style="background-color:#ffffcc; color:green; width:589px" %)
1276 -|=(% colspan="3" style="width: 586px;" %)AT+**SETMAXNBTRANS**
1277 -|(% style="width:227px" %)**Command Example**|(% style="width:300px" %)**Function**|(% style="width:87px" %)**Response**
1216 +(% border="1" style="background-color:#f2f2f2; width:589px" %)
1217 +|=(% colspan="3" style="width: 586px;background-color:#D9E2F3;color:#0070C0" %)AT+**SETMAXNBTRANS**
1218 +|(% style="color:#0070c0; width:227px" %)**Command Example**|(% style="color:#0070c0; width:300px" %)**Function**|(% style="color:#0070c0; width:87px" %)**Response**
1278 1278  |(% style="width:227px" %)**AT+SETMAXNBTRANS=1,0**|(% style="width:300px" %)Value1: set the maximum NBTrans.|(% style="width:87px" %)1(((
1279 1279  OK
1280 1280  )))
... ... @@ -1297,17 +1297,21 @@
1297 1297  * Example 1: Downlink Payload: 330100  ~/~/ Set AT+SETMAXNBTRANS=1,0
1298 1298  * Example 2: Downlink Payload: 330201  ~/~/ Set AT+SETMAXNBTRANS=2,1
1299 1299  
1241 +(% style="display:none" %) (%%)
1300 1300  
1301 -
1302 -
1303 1303  == 7.25 Device offline rejoining (LWS007) ==
1304 1304  
1305 1305  
1306 1306  (% style="color:blue" %)**AT Command: AT+DDETECT**
1307 1307  
1308 -(% border="1" style="background-color:#ffffcc; color:green; width:710.222px" %)
1309 -|=(% colspan="3" style="width: 707px;" %)AT+**DDETECT**
1310 -|(% style="width:160px" %)**Command Example**|(% style="width:198px" %)**Function**|(% style="width:349px" %)**Response**
1248 +AT+DDETECT=<Flag>,<ACK_Timout_1>,<ACK_Timout_2> (Default Value: AT+DDETECT=1,1440,2880)
1249 +
1250 +* ACK_Timout_1: Unit: min
1251 +* ACK_Timout_2: Unit: min
1252 +
1253 +(% border="1" style="background-color:#f2f2f2; width:710.222px" %)
1254 +|=(% colspan="3" style="width: 707px;background-color:#D9E2F3;color:#0070C0" %)AT+**DDETECT**
1255 +|(% style="color:#0070c0; width:160px" %)**Command Example**|(% style="color:#0070c0; width:198px" %)**Function**|(% style="color:#0070c0; width:349px" %)**Response**
1311 1311  |(% style="width:160px" %)(((
1312 1312  AT+DDETECT=1,1440,2880
1313 1313  
... ... @@ -1336,52 +1336,53 @@
1336 1336  OK
1337 1337  )))
1338 1338  
1339 -(% style="color:blue" %)**Downlink Command: 0x33**
1284 +(% style="color:blue" %)**Downlink Command: 0x32**
1340 1340  
1341 1341  Format: Command Code (0x32) followed by 2 bytes mode value.
1342 1342  
1343 -If the downlink payload=320105A00B40, it means set end node to use confirm mode, while type code is 33.
1288 +If the downlink payload=320105A00B40, it means set end node to use confirm mode, while type code is 32.
1344 1344  
1345 -* **Example 1:** Downlink Payload: 320105A00B40  ~/~/ Set AT+DDETECT=1,1440,2880
1290 +* **Example 1:** Downlink Payload: 320105A00B40  ~/~/ Set AT+DDETECT=1,1440,2880
1291 +** 0x01 : Flag
1292 +** 0x05A0: ACK_Timout_1 : 1440minutes (24 hours)
1293 +** 0x0B40: ACK_Timout_2 : 2880minutes (48 hours)
1294 +** **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 1346  
1296 +(% style="display:none" %) (%%)
1347 1347  
1348 -
1349 -
1350 1350  == 7.26 Request the server to send an ACK ==
1351 1351  
1352 1352  
1353 1353  (% style="color:blue" %)**AT Command: AT+PNACKMD**
1354 1354  
1355 -(% border="1" style="background-color:#ffffcc; color:green; width:536.222px" %)
1356 -|=(% colspan="3" style="width: 533px;" %)**AT+PNACKMD**
1357 -|(% style="width:160px" %)**Command Example**|(% style="width:263px" %)**Function**|(% style="width:109px" %)**Response**
1303 +(% border="1" style="background-color:#f2f2f2; width:536.222px" %)
1304 +|=(% colspan="3" style="width: 533px;background-color:#D9E2F3;color:#0070C0" %)**AT+PNACKMD**
1305 +|(% style="color:#0070c0; width:160px" %)**Command Example**|(% style="color:#0070c0; width:263px" %)**Function**|(% style="color:#0070c0; width:109px" %)**Response**
1358 1358  |(% 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 1361  |(% style="width:160px" %)**AT+PNACKMD=0**|(% style="width:263px" %)off request the server to send an ACK|(% style="width:109px" %)(((
1362 1362  0
1363 -
1364 1364  OK
1365 1365  )))
1366 1366  
1314 +(% style="display:none" %) (%%)
1367 1367  
1368 -
1369 -
1370 1370  == 7.27 Adjust network rejoining interval ==
1371 1371  
1372 1372  
1373 1373  (% style="color:blue" %)**AT Command: AT+RJTDC**
1374 1374  
1375 -(% border="1" style="background-color:#ffffcc; color:green; width:727.222px" %)
1376 -|=(% colspan="3" style="width: 724px;" %)AT+RJTDC
1377 -|(% style="width:165px" %)**Command Example**|(% style="width:227px" %)**Function**|(% style="width:329px" %)**Response**
1378 -|(% style="width:165px" %)AT+RJTDC=?|(% style="width:227px" %)Show the ReJoin data transmission interval in min|(% style="width:329px" %)30000(((
1321 +(% border="1" style="background-color:#f2f2f2; width:727.222px" %)
1322 +|=(% colspan="3" style="width: 724px;background-color:#D9E2F3;color:#0070C0" %)AT+RJTDC
1323 +|(% style="color:#0070c0; width:165px" %)**Command Example**|(% style="color:#0070c0; width:227px" %)**Function**|(% style="color:#0070c0; width:329px" %)**Response**
1324 +|(% style="width:165px" %)AT+RJTDC=?|(% style="width:227px" %)Show the ReJoin data transmission interval in min|(% style="width:329px" %)30(((
1379 1379  OK
1380 1380  
1381 -the interval is 30000ms = 30s
1327 +the interval is 30 min
1382 1382  )))
1383 -|(% style="width:165px" %)AT+RJTDC=60000|(% style="width:227px" %)Set the ReJoin data transmission interval in min|(% style="width:329px" %)OK(((
1384 -Set the ReJoin data transmission interval to 60000ms = 60 seconds
1329 +|(% style="width:165px" %)AT+RJTDC=60|(% style="width:227px" %)Set the ReJoin data transmission interval in min|(% style="width:329px" %)OK(((
1330 +Set the ReJoin data transmission interval to 60 min
1385 1385  )))
1386 1386  
1387 1387  (% style="color:blue" %)**Downlink Command: 0x26**
... ... @@ -1393,9 +1393,8 @@
1393 1393  * **Example 1:** Downlink Payload: 26000A  ~/~/ Set AT+RJTDC=10
1394 1394  * **Example 2: **Downlink Payload: 260002  ~/~/ Set AT+RJTDC=2
1395 1395  
1342 +(% style="display:none" %) (%%)
1396 1396  
1397 -
1398 -
1399 1399  = 8. AT Commands Combination =
1400 1400  
1401 1401  == 8.1 Set a fix RX2DR for downlink window ==
... ... @@ -1402,11 +1402,11 @@
1402 1402  
1403 1403  
1404 1404  * (% style="color:blue" %)**AT+ADR=0             **(%%) **~-~->**  Disable ADR first
1350 +
1405 1405  * (% style="color:blue" %)**AT+RX2DR=xxxx**   (%%) **~-~->**  Set xxxx to your wanted DataRate
1406 1406  
1353 +(% style="display:none" %) (%%)
1407 1407  
1408 -
1409 -
1410 1410  == 8.2 Use Downlink Command to set a fix uplink DR ==
1411 1411  
1412 1412  
... ... @@ -1415,7 +1415,9 @@
1415 1415  **Same as:**
1416 1416  
1417 1417  * AT+ADR=0  [[Reference>>||anchor="H7.1AdaptiveDataRate"]]
1363 +
1418 1418  * AT+DR=5  [[Reference>>||anchor="H7.4DataRate"]]
1365 +
1419 1419  * AT+TXP=0  [[Reference>>||anchor="H7.14TransmitPower"]]
1420 1420  
1421 1421  
Copyright ©2010-2024 Dragino Technology Co., LTD. All rights reserved
Dragino Wiki v2.0