<
From version < 20.1 >
edited by Xiaoling
on 2022/05/27 17:47
To version < 7.9 >
edited by Xiaoling
on 2022/05/11 11:31
>
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -1,4 +1,4 @@
1 - **Contents:**
1 +Contens
2 2  
3 3  {{toc/}}
4 4  
... ... @@ -10,95 +10,34 @@
10 10  * **Common Commands:** They should be available for each sensor, such as: change uplink interval, reset device.
11 11  * **Sensor Related Commands:** Only for special sensor, such as control relay, poll RS485 device.
12 12  
13 -(((
14 14  **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.**
15 15  
16 -)))
17 17  
18 18  = 2. How to use AT Commands or Downlink command =
19 19  
20 20  * 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/]]
21 21  * 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:
22 -** Use HEX format to send a downlink: [[TTN v3>>doc:Main.Notes for TTN.WebHome]]
23 -** Use Base64 format to send a downlink: [[Chirpstack>>doc:Main.Notes for ChirpStack.WebHome]].
24 -** See use note for more serves [[Servers Note>>doc:Main.WebHome]](IoT LoRaWAN Server)
20 +** Use HEX format to send a downlink: [[TTN v3>>url:https://wiki.dragino.com/index.php/Notes_for_TTN#Send_Downlink_message]]
21 +** Use Base64 format to send a downlink: [[Chirpstack>>url:https://wiki.dragino.com/index.php/Notes_for_ChirpStack#Downlink]].
22 +** See use note for more serves [[Servers Note>>url:https://wiki.dragino.com/index.php/Main_Page#Use_Note_for_Server]]
25 25  
26 -
27 -
28 28  = 3. Support End Node and firmware version =
29 29  
30 -(% border="1" style="background-color:#ffffcc; color:green; width:966px" %)
31 -|=(% colspan="3" style="width: 963px;" %)(((
32 -Dragino STM32 base hardware Firmware / LoRaWAN stack list
33 -)))
34 -|(% style="width:187px" %)(((
35 -**Model**
36 -)))|(% style="width:330px" %)(((
37 -**Description**
38 -)))|(% style="width:445px" %)(((
39 -**Firmware Version <~-~-> Stack Version**
40 -)))
41 -|(% style="width:187px" %)(((
42 -[[LSN50-v1>>url:http://www.dragino.com/products/lora-lorawan-end-node/item/128-lsn50.html]], [[LSN50-V2>>url:http://www.dragino.com/products/lora-lorawan-end-node/item/155-lsn50-v2.html]],
43 -)))|(% style="width:330px" %)(((
44 -Open Source Generic LoRaWAN Sensor Node
45 -)))|(% style="width:445px" %)(((
46 -(((
47 -LSN50 v1.6.0 <~-~-> DR-LWS-003;
48 -)))
49 -
50 -(((
51 -(((
26 +(% style="background-color:#ffffcc; color:green; width:995.222px" %)
27 +|=(% colspan="3" style="width: 992px;" %)Dragino STM32 base hardware Firmware / LoRaWAN stack list
28 +|(% style="width:187px" %)**Model**|(% style="width:349px" %)**Description**|(% style="width:453px" %)**Firmware Version <~-~-> Stack Version**
29 +|(% style="width:187px" %)[[LSN50-v1>>url:http://www.dragino.com/products/lora-lorawan-end-node/item/128-lsn50.html]], [[LSN50-V2>>url:http://www.dragino.com/products/lora-lorawan-end-node/item/155-lsn50-v2.html]],|(% style="width:349px" %)Open Source Generic LoRaWAN Sensor Node|(% style="width:453px" %)LSN50 v1.6.0 <~-~-> DR-LWS-003;(((
52 52  LSN50 v1.7.0 <~-~-> DR-LWS-005; ~-~-> Support since this version
53 53  )))
54 -)))
55 -)))
56 -|(% style="width:187px" %)(((
57 -[[LGT92>>url:http://www.dragino.com/products/lora-lorawan-end-node/item/142-lgt-92.html]],
58 -)))|(% style="width:330px" %)(((
59 -LoRaWAN GPS Tracker
60 -)))|(% style="width:445px" %)(((
61 -(((
62 -LGT92 v1.6.3 <~-~-> DR-LWS-003;
63 -)))
64 -
65 -(((
66 -(((
32 +|(% style="width:187px" %)[[LGT92>>url:http://www.dragino.com/products/lora-lorawan-end-node/item/142-lgt-92.html]],|(% style="width:349px" %)LoRaWAN GPS Tracker|(% style="width:453px" %)LGT92 v1.6.3 <~-~-> DR-LWS-003;(((
67 67  LGT92 v1.6.4 <~-~-> DR-LWS-005;~-~-> Support since this version
68 68  )))
69 -)))
70 -)))
71 -|(% style="width:187px" %)(((
72 -[[LBT1>>url:http://www.dragino.com/products/lora-lorawan-end-node/item/165-lbt1.html]],
73 -)))|(% style="width:330px" %)(((
74 -LoRaWAN BLE Indoor Tracker
75 -)))|(% style="width:445px" %)(((
76 -LBT1 v1.0 <~-~-> DR-LWS-005;
77 -)))
78 -|(% style="width:187px" %)(((
79 -[[RS485-LN>>url:http://www.dragino.com/products/lora-lorawan-end-node/item/154-rs485-ln.html]],
80 -)))|(% style="width:330px" %)(((
81 -LoRaWAN RS485 Modbus Converter
82 -)))|(% style="width:445px" %)(((
83 -RS485-LN v1.3 <~-~-> DR-LWS-005;
84 -)))
85 -|(% style="width:187px" %)(((
86 -[[LHT65>>url:http://www.dragino.com/products/lora-lorawan-end-node/item/151-lht65.html]],
87 -)))|(% style="width:330px" %)(((
88 -LoRaWAN Temperature & Humidity Sensor
89 -)))|(% style="width:445px" %)(((
90 -(((
91 -LHT65 v1.7 <~-~-> DR-LWS-003;
92 -)))
93 -
94 -(((
95 -(((
35 +|(% style="width:187px" %)[[LBT1>>url:http://www.dragino.com/products/lora-lorawan-end-node/item/165-lbt1.html]],|(% style="width:349px" %)LoRaWAN BLE Indoor Tracker|(% style="width:453px" %)LBT1 v1.0 <~-~-> DR-LWS-005;
36 +|(% style="width:187px" %)[[RS485-LN>>url:http://www.dragino.com/products/lora-lorawan-end-node/item/154-rs485-ln.html]],|(% style="width:349px" %)LoRaWAN RS485 Modbus Converter|(% style="width:453px" %)RS485-LN v1.3 <~-~-> DR-LWS-005;
37 +|(% style="width:187px" %)[[LHT65>>url:http://www.dragino.com/products/lora-lorawan-end-node/item/151-lht65.html]],|(% style="width:349px" %)LoRaWAN Temperature & Humidity Sensor|(% style="width:453px" %)LHT65 v1.7 <~-~-> DR-LWS-003;(((
96 96  LHT65 v1.8.0 <~-~-> DR-LWS-005;~-~-> Support since this version
97 97  )))
98 -)))
99 -)))
100 100  
101 -
102 102  = 4. System Management Commands =
103 103  
104 104  == 4.1 Change Uplink Interval ==
... ... @@ -110,7 +110,7 @@
110 110  **AT Command: AT+TDC**
111 111  )))
112 112  
113 -(% border="1" style="background-color:#ffffcc; color:green; width:727.222px" %)
52 +(% style="background-color:#ffffcc; color:green; width:727.222px" %)
114 114  |=(% colspan="3" style="width: 724px;" %)AT+TDC
115 115  |(% style="width:165px" %)**Command Example**|(% style="width:227px" %)**Function**|(% style="width:329px" %)**Response**
116 116  |(% style="width:165px" %)AT+TDC=?|(% style="width:227px" %)Show current transmit Interval|(% style="width:329px" %)30000(((
... ... @@ -126,19 +126,13 @@
126 126  **Downlink Command: 0x01**
127 127  {{/info}}
128 128  
129 -(((
130 130  Format: Command Code (0x01) followed by 3 bytes time value.
131 -)))
132 132  
133 -(((
134 134  If the downlink payload=0100003C, it means set the END Node’s Transmit Interval to 0x00003C=60(S), while type code is 01.
135 -)))
136 136  
137 137  * **Example 1**: Downlink Payload:** 0100001E** ~/~/ Set Transmit Interval (TDC) = 30 seconds
138 138  * **Example 2**: Downlink Payload:** 0100003C** ~/~/ Set Transmit Interval (TDC) = 60 seconds
139 139  
140 -
141 -
142 142  == 4.2 Reboot End Node ==
143 143  
144 144  Feature: Reboot End Node to perform a new OTAA or ABP Join.
... ... @@ -147,7 +147,7 @@
147 147  **AT Command: ATZ**
148 148  {{/info}}
149 149  
150 -(% border="1" style="background-color:#ffffcc; color:green; width:727.222px" %)
83 +(% border="0" style="background-color:#ffffcc; color:green; width:727.222px" %)
151 151  |=(% colspan="3" %)ATZ: Trig a reset of the MCU
152 152  |**Command Example**|**Function**|**Response**
153 153  |ATZ|Reset MCU|(((
... ... @@ -168,16 +168,10 @@
168 168  **Downlink Command: 0x04**
169 169  {{/info}}
170 170  
171 -(((
172 172  Format: Command Code (0x04) followed by FF.
173 -)))
174 174  
175 -(((
176 176  If the downlink payload=**04FF**, the end node will reboot.
177 177  
178 -
179 -)))
180 -
181 181  == 4.3 Reset to factory Default ==
182 182  
183 183  Feature: Reset the parameters to Factory Default, factory default value depends on the firmware settings, the OTAA and ABP keys will reserve after this command.
... ... @@ -186,7 +186,7 @@
186 186  **AT Command: AT+FDR**
187 187  {{/info}}
188 188  
189 -(% border="1" style="background-color:#ffffcc; color:green; width:831.222px" %)
116 +(% style="background-color:#ffffcc; color:green; width:831.222px" %)
190 190  |=(% colspan="3" style="width: 828px;" %)Reset to factory default
191 191  |(% style="width:181px" %)**Command Example**|(% style="width:181px" %)**Function**|(% style="width:465px" %)**Response**
192 192  |(% style="width:181px" %)AT+FDR|(% style="width:181px" %)Reset to factory default|(% style="width:465px" %)(((
... ... @@ -207,13 +207,9 @@
207 207  **Downlink Command: 0x04**
208 208  {{/info}}
209 209  
210 -(((
211 211  Format: Command Code (0x04) followed by FE.
212 -)))
213 213  
214 -(((
215 215  If the downlink payload=**04FE**, Reset Parameters to Factory Default, Keys Reserve.
216 -)))
217 217  
218 218  
219 219  == 4.4 Show Firmware Version ==
... ... @@ -224,10 +224,10 @@
224 224  **AT Command: AT+VER**
225 225  {{/info}}
226 226  
227 -(% border="1" style="background-color:#ffffcc; color:green; width:586px" %)
228 -|=(% colspan="3" style="width: 583px;" %)AT+VER: Image Version and Frequency Band
229 -|(% style="width:170px" %)**Command Example**|(% style="width:300px" %)**Function**|(% style="width:113px" %)**Response**
230 -|(% style="width:170px" %)AT+VER=?|(% style="width:300px" %)Show Image version and Frequency Band|(% style="width:113px" %)(((
150 +(% style="background-color:#ffffcc; color:green" %)
151 +|=(% colspan="3" %)AT+VER: Image Version and Frequency Band
152 +|**Command Example**|**Function**|**Response**
153 +|AT+VER=?|Show Image version and Frequency Band|(((
231 231  1.3 EU868
232 232  
233 233  OK
... ... @@ -237,25 +237,17 @@
237 237  **Downlink Command: 0x26 (Valid in 006 stack)**
238 238  {{/info}}
239 239  
240 -(((
241 241  Downlink Format: 0x26
242 -)))
243 243  
244 -(((
245 245  Device will reply with firmware version info, device info. frequency band info. detail please check device user manual. Total 5 bytes Example: If device is of firmware version 1.1.0 Upload: xx ~-~- yy ~-~- zz ~-~- 110 total 5 bytes
246 -)))
247 247  
248 -(((
249 249  **xx: Software Type:**
250 -)))
251 251  
252 252  * 0x00 01: LGT92 Version
253 253  * 0x00 02: LBT1
254 254  * 0x00 03: LSE01/LDDS75/LDDS20/LSPH01/LLMS01/LSNPK01
255 255  
256 -(((
257 257  **yy: Frequency Band:**
258 -)))
259 259  
260 260  * 0x01: EU868
261 261  * 0x02: US915
... ... @@ -268,9 +268,7 @@
268 268  * 0x09: AS923-2
269 269  * 0xa0: AS923-3
270 270  
271 -(((
272 272  **zz: Subband**
273 -)))
274 274  
275 275  firmware version: v1.1.0 ~-~-> 110
276 276  
... ... @@ -283,7 +283,7 @@
283 283  **AT Command: AT+CFG**
284 284  {{/info}}
285 285  
286 -(% border="1" style="background-color:#ffffcc; color:green; width:599.222px" %)
199 +(% style="background-color:#ffffcc; color:green; width:599.222px" %)
287 287  |=(% colspan="3" style="width: 596px;" %)AT+CFG: Print all configurations
288 288  |(% style="width:160px" %)**Command Example**|(% style="width:154px" %)**Function**|(% style="width:280px" %)**Response**
289 289  |(% style="width:160px" %)AT+CFG|(% style="width:154px" %)Show all configures|(% style="width:280px" %)(((
... ... @@ -300,8 +300,6 @@
300 300  OK
301 301  )))
302 302  
303 -
304 -
305 305  = 5. Keys, IDs and EUIs management =
306 306  
307 307  == 5.1 Application EUI ==
... ... @@ -312,7 +312,7 @@
312 312  **AT Command: AT+APPEUI**
313 313  {{/info}}
314 314  
315 -(% border="1" style="background-color:#ffffcc; color:green; width:686.222px" %)
226 +(% style="background-color:#ffffcc; color:green; width:686.222px" %)
316 316  |=(% colspan="3" style="width: 683px;" %)AT+APPEUI
317 317  |(% style="width:305px" %)**Command Example**|(% style="width:186px" %)**Function**|(% style="width:191px" %)**Response**
318 318  |(% style="width:305px" %)AT+APPEUI=?|(% style="width:186px" %)Get the Application EUI|(% style="width:191px" %)00 b3 d5 00 00 00 00 00(((
... ... @@ -320,8 +320,6 @@
320 320  )))
321 321  |(% style="width:305px" %)AT+APPEUI=00 b3 d5 7e f0 00 4d 34|(% style="width:186px" %)Set the Application EUI|(% style="width:191px" %)OK
322 322  
323 -
324 -
325 325  == 5.2 Application Key ==
326 326  
327 327  Feature: Get or Set the Application Key.
... ... @@ -330,7 +330,7 @@
330 330  **AT Command: AT+APPKEY**
331 331  {{/info}}
332 332  
333 -(% border="1" style="background-color:#ffffcc; color:green; width:976.222px" %)
242 +(% style="background-color:#ffffcc; color:green; width:976.222px" %)
334 334  |=(% colspan="3" style="width: 973px;" %)AT+APPKEY
335 335  |(% style="width:441px" %)**Command Example**|(% style="width:180px" %)**Function**|(% style="width:350px" %)**Response**
336 336  |(% 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(((
... ... @@ -338,8 +338,6 @@
338 338  )))
339 339  |(% 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
340 340  
341 -
342 -
343 343  == 5.3 Application Session Key ==
344 344  
345 345  Feature: Get or Set the Application Session Key.
... ... @@ -348,7 +348,7 @@
348 348  **AT Command: AT+APPSKEY**
349 349  {{/info}}
350 350  
351 -(% border="1" style="background-color:#ffffcc; color:green; width:1040.22px" %)
258 +(% style="background-color:#ffffcc; color:green; width:1040.22px" %)
352 352  |=(% colspan="3" style="width: 1037px;" %)AT+APPSKEY
353 353  |(% style="width:451px" %)**Command Example**|(% style="width:231px" %)**Function**|(% style="width:354px" %)**Response**
354 354  |(% 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(((
... ... @@ -366,7 +366,7 @@
366 366  **AT Command: AT+DADDR**
367 367  {{/info}}
368 368  
369 -(% border="1" style="background-color:#ffffcc; color:green; width:795.222px" %)
276 +(% style="background-color:#ffffcc; color:green; width:795.222px" %)
370 370  |=(% colspan="3" style="width: 792px;" %)AT+DADDR
371 371  |(% style="width:192px" %)**Command Example**|(% style="width:241px" %)**Function**|(% style="width:359px" %)**Response**
372 372  |(% style="width:192px" %)AT+DADDR=?|(% style="width:241px" %)Get the Application Session Key.|(% style="width:359px" %)(While Error in format, return AT_PARAM_ERROR)(((
... ... @@ -384,7 +384,7 @@
384 384  **AT Command: AT+DEUI**
385 385  {{/info}}
386 386  
387 -(% border="1" style="background-color:#ffffcc; color:green; width:1035.22px" %)
294 +(% style="background-color:#ffffcc; color:green; width:1035.22px" %)
388 388  |=(% colspan="3" style="width: 1032px;" %)AT+DEUI
389 389  |(% style="width:250px" %)**Command Example**|(% style="width:147px" %)**Function**|(% style="width:634px" %)**Response**
390 390  |(% style="width:250px" %)AT+DEUI=?|(% style="width:147px" %)Get the Device EUI.|(% style="width:634px" %)00 44 34 22 33 45 55 55(((
... ... @@ -402,7 +402,7 @@
402 402  **AT Command: AT+NWKID**
403 403  {{/info}}
404 404  
405 -(% border="1" style="background-color:#ffffcc; color:green; width:448.222px" %)
312 +(% style="background-color:#ffffcc; color:green; width:448.222px" %)
406 406  |=(% colspan="3" style="width: 445px;" %)AT+NWKID
407 407  |(% style="width:191px" %)**Command Example**|(% style="width:153px" %)**Function**|(% style="width:101px" %)**Response**
408 408  |(% style="width:191px" %)AT+NWKID=?|(% style="width:153px" %)Get the Network ID.|(% style="width:101px" %)a8 40 41 ff(((
... ... @@ -418,7 +418,7 @@
418 418  **AT Command: AT+NWKSKEY**
419 419  {{/info}}
420 420  
421 -(% border="1" style="background-color:#ffffcc; color:green; width:1017.22px" %)
328 +(% style="background-color:#ffffcc; color:green; width:1017.22px" %)
422 422  |=(% colspan="3" style="width: 1014px;" %)AT+NWKSKEY
423 423  |(% style="width:455px" %)**Command Example**|(% style="width:215px" %)**Function**|(% style="width:343px" %)**Response**
424 424  |(% 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(((
... ... @@ -436,7 +436,7 @@
436 436  **AT Command: AT+CFM**
437 437  {{/info}}
438 438  
439 -(% border="1" style="background-color:#ffffcc; color:green; width:710.222px" %)
346 +(% style="background-color:#ffffcc; color:green; width:710.222px" %)
440 440  |=(% colspan="3" style="width: 707px;" %)AT+CFM
441 441  |(% style="width:155px" %)**Command Example**|(% style="width:205px" %)**Function**|(% style="width:346px" %)**Response**
442 442  |(% style="width:155px" %)AT+CFM=?|(% style="width:205px" %)Get the confirmation mode|(% style="width:346px" %)0(((
... ... @@ -462,7 +462,7 @@
462 462  **AT Command: AT+CFS**
463 463  {{/info}}
464 464  
465 -(% border="1" style="background-color:#ffffcc; color:green; width:534.222px" %)
372 +(% style="background-color:#ffffcc; color:green; width:534.222px" %)
466 466  |=(% colspan="3" style="width: 531px;" %)AT+CFS
467 467  |(% style="width:156px" %)**Command Example**|(% style="width:193px" %)**Function**|(% style="width:178px" %)**Response**
468 468  |(% style="width:156px" %)AT+CFS=?|(% style="width:193px" %)Get confirmation status|(% style="width:178px" %)0(((
... ... @@ -477,7 +477,7 @@
477 477  **AT Command: AT+JOIN**
478 478  {{/info}}
479 479  
480 -(% border="1" style="background-color:#ffffcc; color:green; width:647.222px" %)
387 +(% style="background-color:#ffffcc; color:green; width:647.222px" %)
481 481  |=(% colspan="3" style="width: 644px;" %)AT+JOIN
482 482  |(% style="width:163px" %)**Command Example**|(% style="width:147px" %)**Function**|(% style="width:334px" %)**Response**
483 483  |(% style="width:163px" %)AT+JOIN ?|(% style="width:147px" %)Get imformation.|(% style="width:334px" %)AT+JOIN: Join network(((
... ... @@ -494,7 +494,7 @@
494 494  **AT Command: AT+NJM**
495 495  {{/info}}
496 496  
497 -(% border="1" style="background-color:#ffffcc; color:green; width:753.222px" %)
404 +(% style="background-color:#ffffcc; color:green; width:753.222px" %)
498 498  |=(% colspan="3" style="width: 750px;" %)AT+NJM
499 499  |(% style="width:162px" %)**Command Example**|(% style="width:227px" %)**Function**|(% style="width:361px" %)**Response**
500 500  |(% style="width:162px" %)AT+NJM=?|(% style="width:227px" %)Get the Network Join Mode|(% style="width:361px" %)1(((
... ... @@ -522,7 +522,7 @@
522 522  **AT Command: AT+NJS**
523 523  {{/info}}
524 524  
525 -(% border="1" style="background-color:#ffffcc; color:green; width:498.222px" %)
432 +(% style="background-color:#ffffcc; color:green; width:498.222px" %)
526 526  |=(% colspan="3" style="width: 495px;" %)AT+NJS
527 527  |(% style="width:169px" %)**Command Example**|(% style="width:164px" %)**Function**|(% style="width:161px" %)**Response**
528 528  |(% style="width:169px" %)AT+NJS=?|(% style="width:164px" %)Get the join status.|(% style="width:161px" %)0(((
... ... @@ -537,7 +537,7 @@
537 537  **AT Command: AT+RECV**
538 538  {{/info}}
539 539  
540 -(% border="1" style="background-color:#ffffcc; color:green; width:587.222px" %)
447 +(% style="background-color:#ffffcc; color:green; width:587.222px" %)
541 541  |=(% colspan="3" style="width: 584px;" %)AT+RECV
542 542  |(% style="width:161px" %)**Command Example**|(% style="width:272px" %)**Function**|(% style="width:150px" %)**Response**
543 543  |(% style="width:161px" %)AT+RECV=?|(% style="width:272px" %)print last received data in raw format.|(% style="width:150px" %)0:(((
... ... @@ -552,7 +552,7 @@
552 552  **AT Command: AT+RECVB**
553 553  {{/info}}
554 554  
555 -(% border="1" style="background-color:#ffffcc; color:green; width:793.222px" %)
462 +(% style="background-color:#ffffcc; color:green; width:793.222px" %)
556 556  |=(% colspan="3" style="width: 790px;" %)AT+RECVB
557 557  |(% style="width:173px" %)**Command Example**|(% style="width:497px" %)**Function**|(% style="width:120px" %)**Response**
558 558  |(% style="width:173px" %)AT+RECVB=?|(% style="width:497px" %)print last received data in binary format (with hexadecimal values).|(% style="width:120px" %)2: 0010(((
... ... @@ -567,7 +567,7 @@
567 567  **AT Command: AT+SEND**
568 568  {{/info}}
569 569  
570 -(% border="1" style="background-color:#ffffcc; color:green; width:991.222px" %)
477 +(% style="background-color:#ffffcc; color:green; width:991.222px" %)
571 571  |=(% colspan="3" style="width: 988px;" %)AT+SEND
572 572  |(% style="width:201px" %)**Command Example**|(% style="width:340px" %)**Function**|(% style="width:446px" %)**Response**
573 573  |(% style="width:201px" %)AT+SEND=12:hello world|(% style="width:340px" %)Send text data along with the application port.|(% style="width:446px" %)OK(((
... ... @@ -586,7 +586,7 @@
586 586  **AT Command: AT+SENDB**
587 587  {{/info}}
588 588  
589 -(% border="1" style="background-color:#ffffcc; color:green; width:1120.22px" %)
496 +(% style="background-color:#ffffcc; color:green; width:1120.22px" %)
590 590  |=(% colspan="3" style="width: 1117px;" %)AT+SENDB
591 591  |(% style="width:257px" %)**Command Example**|(% style="width:406px" %)**Function**|(% style="width:453px" %)**Response**
592 592  |(% style="width:257px" %)AT+SENDB=12:abcdef0123456789|(% style="width:406px" %)Send hexadecimal data along with the application port.|(% style="width:453px" %)OK
... ... @@ -606,7 +606,7 @@
606 606  **AT Command: AT+ADR**
607 607  {{/info}}
608 608  
609 -(% border="1" style="background-color:#ffffcc; color:green; width:683.222px" %)
516 +(% style="background-color:#ffffcc; color:green; width:683.222px" %)
610 610  |=(% colspan="3" style="width: 680px;" %)AT+ADR
611 611  |(% style="width:162px" %)**Command Example**|(% style="width:266px" %)**Function**|(% style="width:250px" %)**Response**
612 612  |(% style="width:162px" %)AT+ADR=?|(% style="width:266px" %)Get the Adaptive Data Rate setting.|(% style="width:250px" %)1(((
... ... @@ -635,7 +635,7 @@
635 635  **AT Command:AT+CLASS**
636 636  {{/info}}
637 637  
638 -(% border="1" style="background-color:#ffffcc; color:green; width:507.222px" %)
545 +(% style="background-color:#ffffcc; color:green; width:507.222px" %)
639 639  |=(% colspan="3" style="width: 504px;" %)AT+CLASS
640 640  |(% style="width:163px" %)**Command Example**|(% style="width:166px" %)**Function**|(% style="width:175px" %)**Response**
641 641  |(% style="width:163px" %)AT+CLASS=?|(% style="width:166px" %)Get the Device Class.|(% style="width:175px" %)A(((
... ... @@ -653,7 +653,7 @@
653 653  **AT Command:AT+DCS**
654 654  {{/info}}
655 655  
656 -(% border="1" style="background-color:#ffffcc; color:green; width:515.222px" %)
563 +(% style="background-color:#ffffcc; color:green; width:515.222px" %)
657 657  |=(% colspan="3" style="width: 512px;" %)AT+DCS
658 658  |(% style="width:165px" %)**Command Example**|(% style="width:239px" %)**Function**|(% style="width:107px" %)**Response**
659 659  |(% style="width:165px" %)AT+DCS=?|(% style="width:239px" %)Get the ETSI Duty Cycle setting.|(% style="width:107px" %)1(((
... ... @@ -671,7 +671,7 @@
671 671  **AT Command: AT+DR**
672 672  {{/info}}
673 673  
674 -(% border="1" style="background-color:#ffffcc; color:green; width:466.222px" %)
581 +(% style="background-color:#ffffcc; color:green; width:466.222px" %)
675 675  |=(% colspan="3" style="width: 463px;" %)AT+DR
676 676  |(% style="width:156px" %)**Command Example**|(% style="width:167px" %)**Function**|(% style="width:140px" %)**Response**
677 677  |(% style="width:156px" %)AT+DR=?|(% style="width:167px" %)Get the Data Rate.|(% style="width:140px" %)5(((
... ... @@ -699,7 +699,7 @@
699 699  **AT Command:AT+FCD**
700 700  {{/info}}
701 701  
702 -(% border="1" style="background-color:#ffffcc; color:green; width:693.222px" %)
609 +(% style="background-color:#ffffcc; color:green; width:693.222px" %)
703 703  |=(% colspan="3" style="width: 690px;" %)AT+FCD
704 704  |(% style="width:162px" %)**Command Example**|(% style="width:258px" %)**Function**|(% style="width:269px" %)**Response**
705 705  |(% style="width:162px" %)AT+FCD=?|(% style="width:258px" %)Get the Frame Counter Downlink.|(% style="width:269px" %)0(((
... ... @@ -719,7 +719,7 @@
719 719  **AT Command:AT+FCU**
720 720  {{/info}}
721 721  
722 -(% border="1" style="background-color:#ffffcc; color:green; width:534.222px" %)
629 +(% style="background-color:#ffffcc; color:green; width:534.222px" %)
723 723  |=(% colspan="3" style="width: 531px;" %)AT+FCU
724 724  |(% style="width:177px" %)**Command Example**|(% style="width:239px" %)**Function**|(% style="width:113px" %)**Response**
725 725  |(% style="width:177px" %)AT+FCU=?|(% style="width:239px" %)Get the Frame Counter Uplink.|(% style="width:113px" %)0(((
... ... @@ -737,7 +737,7 @@
737 737  **AT Command:AT+JN1DL**
738 738  {{/info}}
739 739  
740 -(% border="1" style="background-color:#ffffcc; color:green; width:537.222px" %)
647 +(% style="background-color:#ffffcc; color:green; width:537.222px" %)
741 741  |=(% colspan="3" style="width: 534px;" %)AT+JN1DL
742 742  |(% style="width:164px" %)**Command Example**|(% style="width:229px" %)**Function**|(% style="width:140px" %)**Response**
743 743  |(% style="width:164px" %)AT+JN1DL=?|(% style="width:229px" %)Get the Join Accept Delay.|(% style="width:140px" %)5000(((
... ... @@ -755,7 +755,7 @@
755 755  **AT Command:AT+JN2DL**
756 756  {{/info}}
757 757  
758 -(% border="1" style="background-color:#ffffcc; color:green; width:538.222px" %)
665 +(% style="background-color:#ffffcc; color:green; width:538.222px" %)
759 759  |=(% colspan="3" style="width: 535px;" %)AT+JN2DL
760 760  |(% style="width:160px" %)**Command Example**|(% style="width:228px" %)**Function**|(% style="width:146px" %)**Response**
761 761  |(% style="width:160px" %)AT+JN2DL=?|(% style="width:228px" %)Get the Join Accept Delay.|(% style="width:146px" %)6000(((
... ... @@ -773,7 +773,7 @@
773 773  **AT Command:AT+PNM**
774 774  {{/info}}
775 775  
776 -(% border="1" style="background-color:#ffffcc; color:green; width:667.222px" %)
683 +(% style="background-color:#ffffcc; color:green; width:667.222px" %)
777 777  |=(% colspan="3" style="width: 664px;" %)AT+PNM
778 778  |(% style="width:166px" %)**Command Example**|(% style="width:225px" %)**Function**|(% style="width:272px" %)**Response**
779 779  |(% style="width:166px" %)AT+PNM=?|(% style="width:225px" %)Get the public network mode.|(% style="width:272px" %)1(((
... ... @@ -793,7 +793,7 @@
793 793  **AT Command:AT+RX1DL**
794 794  {{/info}}
795 795  
796 -(% border="1" style="background-color:#ffffcc; color:green; width:408.222px" %)
703 +(% style="background-color:#ffffcc; color:green; width:408.222px" %)
797 797  |=(% colspan="3" style="width: 405px;" %)AT+RX1DL
798 798  |(% style="width:155px" %)**Command Example**|(% style="width:128px" %)**Function**|(% style="width:122px" %)**Response**
799 799  |(% style="width:155px" %)AT+RX1DL=?|(% style="width:128px" %)Get the delay.|(% style="width:122px" %)1000(((
... ... @@ -811,7 +811,7 @@
811 811  **AT Command:AT+RX2DL**
812 812  {{/info}}
813 813  
814 -(% border="1" style="background-color:#ffffcc; color:green; width:481.222px" %)
721 +(% style="background-color:#ffffcc; color:green; width:481.222px" %)
815 815  |=(% colspan="3" style="width: 478px;" %)AT+RX2DL
816 816  |(% style="width:175px" %)**Command Example**|(% style="width:152px" %)**Function**|(% style="width:150px" %)**Response**
817 817  |(% style="width:175px" %)AT+RX2DL=?|(% style="width:152px" %)Get the delay.|(% style="width:150px" %)2000(((
... ... @@ -829,7 +829,7 @@
829 829  **AT Command:AT+RX2DR**
830 830  {{/info}}
831 831  
832 -(% border="1" style="background-color:#ffffcc; color:green; width:525.222px" %)
739 +(% style="background-color:#ffffcc; color:green; width:525.222px" %)
833 833  |=(% colspan="3" style="width: 522px;" %)AT+RX2DR
834 834  |(% style="width:160px" %)**Command Example**|(% style="width:232px" %)**Function**|(% style="width:130px" %)**Response**
835 835  |(% style="width:160px" %)AT+RX2DR=?|(% style="width:232px" %)Get the Rx2 window data rate.|(% style="width:130px" %)2(((
... ... @@ -847,7 +847,7 @@
847 847  **AT Command:AT+RX2FQ**
848 848  {{/info}}
849 849  
850 -(% border="1" style="background-color:#ffffcc; color:green; width:587.222px" %)
757 +(% style="background-color:#ffffcc; color:green; width:587.222px" %)
851 851  |=(% colspan="3" style="width: 584px;" %)AT+RX2FQ
852 852  |(% style="width:183px" %)**Command Example**|(% style="width:240px" %)**Function**|(% style="width:160px" %)**Response**
853 853  |(% style="width:183px" %)AT+RX2FQ=?|(% style="width:240px" %)Get the Rx2 window frequency.|(% style="width:160px" %)434665000(((
... ... @@ -865,7 +865,7 @@
865 865  **AT Command:AT+TXP**
866 866  {{/info}}
867 867  
868 -(% border="1" style="background-color:#ffffcc; color:green; width:465.222px" %)
775 +(% style="background-color:#ffffcc; color:green; width:465.222px" %)
869 869  |=(% colspan="3" style="width: 462px;" %)AT+TXP
870 870  |(% style="width:161px" %)**Command Example**|(% style="width:189px" %)**Function**|(% style="width:112px" %)**Response**
871 871  |(% style="width:161px" %)AT+TXP=?|(% style="width:189px" %)Get the Transmit Power.|(% style="width:112px" %)0(((
... ... @@ -890,7 +890,7 @@
890 890  **AT Command:AT+RSSI**
891 891  {{/info}}
892 892  
893 -(% border="1" style="background-color:#ffffcc; color:green; width:557.222px" %)
800 +(% style="background-color:#ffffcc; color:green; width:557.222px" %)
894 894  |=(% colspan="3" style="width: 554px;" %)AT+RSSI
895 895  |(% style="width:164px" %)**Command Example**|(% style="width:289px" %)**Function**|(% style="width:100px" %)**Response**
896 896  |(% style="width:164px" %)AT+RSSI=?|(% style="width:289px" %)Get the RSSI of the last received packet.|(% style="width:100px" %)0(((
... ... @@ -905,7 +905,7 @@
905 905  **AT Command:AT+SNR**
906 906  {{/info}}
907 907  
908 -(% border="1" style="background-color:#ffffcc; color:green; width:571.222px" %)
815 +(% style="background-color:#ffffcc; color:green; width:571.222px" %)
909 909  |=(% colspan="3" style="width: 568px;" %)AT+SNR
910 910  |(% style="width:164px" %)**Command Example**|(% style="width:290px" %)**Function**|(% style="width:113px" %)**Response**
911 911  |(% style="width:164px" %)AT+SNR=?|(% style="width:290px" %)Get the RSSI of the last received packet.|(% style="width:113px" %)0(((
... ... @@ -920,7 +920,7 @@
920 920  **AT Command: AT+PORT**
921 921  {{/info}}
922 922  
923 -(% border="1" style="background-color:#ffffcc; color:green; width:500.222px" %)
830 +(% style="background-color:#ffffcc; color:green; width:500.222px" %)
924 924  |=(% colspan="3" style="width: 497px;" %)AT+PORT
925 925  |(% style="width:157px" %)**Command Example**|(% style="width:204px" %)**Function**|(% style="width:135px" %)**Response**
926 926  |(% style="width:157px" %)AT+PORT=?|(% style="width:204px" %)Get the application port|(% style="width:135px" %)21(((
... ... @@ -947,7 +947,7 @@
947 947  **AT Command: AT+CHS**
948 948  {{/info}}
949 949  
950 -(% border="1" style="background-color:#ffffcc; color:green; width:603.222px" %)
857 +(% style="background-color:#ffffcc; color:green; width:603.222px" %)
951 951  |=(% colspan="3" style="width: 600px;" %)AT+CHS
952 952  |(% style="width:182px" %)**Command Example**|(% style="width:295px" %)**Function**|(% style="width:122px" %)**Response**
953 953  |(% style="width:182px" %)AT+CHS=?|(% style="width:295px" %)Get Frequency for Single Channel Mode|(% style="width:122px" %)0(((
... ... @@ -963,7 +963,7 @@
963 963  **AT Command: AT+CHE**
964 964  {{/info}}
965 965  
966 -(% border="1" style="background-color:#ffffcc; color:green; width:710.222px" %)
873 +(% style="background-color:#ffffcc; color:green; width:710.222px" %)
967 967  |=(% colspan="3" style="width: 707px;" %)AT+CHE
968 968  |(% style="width:160px" %)**Command Example**|(% style="width:198px" %)**Function**|(% style="width:349px" %)**Response**
969 969  |(% style="width:160px" %)AT+CHE=?|(% style="width:198px" %)Get eight channels mode|(% style="width:349px" %)1(((
... ... @@ -992,7 +992,7 @@
992 992  **AT Command: AT+RX1WTO**
993 993  {{/info}}
994 994  
995 -(% border="1" style="background-color:#ffffcc; color:green; width:460.222px" %)
902 +(% style="background-color:#ffffcc; color:green; width:460.222px" %)
996 996  |=(% colspan="3" style="width: 457px;" %)AT+ RX1WTO
997 997  |(% style="width:163px" %)**Command Example**|(% style="width:201px" %)**Function**|(% style="width:93px" %)**Response**
998 998  |(% style="width:163px" %)AT+RX1WTO=?|(% style="width:201px" %)Get RXwindows1 timeout|(% style="width:93px" %)14(((
... ... @@ -1000,58 +1000,46 @@
1000 1000  )))
1001 1001  |(% style="width:163px" %)AT+RX1WTO=60|(% style="width:201px" %)Set RXwindows1 timeout|(% style="width:93px" %)OK
1002 1002  
1003 -(((
1004 -**AT+RX1TWO** is theRxSingle timeout value of receive window 1. If it is not set, then the queriedvalue is the default value. If it is set, then the queried value is the setvalue. AT+RX2TWO is thesame as above. The definitionof RxSingle timeout is as described in the following paragraph.
1005 -)))
910 +AT+RX1TWO is theRxSingle timeout value of receive window 1. If it is not set, then the queriedvalue is the default value. If it is set, then the queried value is the setvalue. AT+RX2TWO is thesame as above. The definitionof RxSingle timeout is as described in the following paragraph.
1006 1006  
1007 -[[image:image-20220526162535-1.png]]
912 +[[~[~[image:https://wiki.dragino.com/images/thumb/5/51/RX1WTO.JPG/600px-RX1WTO.JPG~|~|alt="RX1WTO.JPG" height="239" width="600"~]~]>>url:https://wiki.dragino.com/index.php/File:RX1WTO.JPG]]
1008 1008  
1009 -(((
1010 1010  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.
1011 -)))
1012 1012  
1013 1013  == 7.21 Get or Set RXwindows2 timeout ==
1014 1014  
1015 1015  Feature:Get or Set the number of symbols to detect and timeout from RXwindow2(0 to 255).
1016 1016  
1017 -{{info}}
1018 -**AT Command: AT+RX2WTO**
1019 -{{/info}}
920 +AT Command: AT+RX2WTO
1020 1020  
1021 -(% border="1" style="background-color:#ffffcc; color:green; width:497.222px" %)
1022 -|=(% colspan="3" style="width: 494px;" %)AT+ RX2WTO
1023 -|(% style="width:190px" %)**Command Example**|(% style="width:199px" %)**Function**|(% style="width:104px" %)**Response**
1024 -|(% style="width:190px" %)AT+RX2WTO=?|(% style="width:199px" %)Get RXwindows2 timeout|(% style="width:104px" %)7(((
922 +|=(% colspan="3" %)AT+ RX2WTO
923 +|**Command Example**|**Function**|**Response**
924 +|AT+RX2WTO=?|Get RXwindows2 timeout|7(((
1025 1025  OK
1026 1026  )))
1027 -|(% style="width:190px" %)AT+RX2WTO=20|(% style="width:199px" %)Set RXwindows2 timeout|(% style="width:104px" %)OK
927 +|AT+RX2WTO=20|Set RXwindows2 timeout|OK
1028 1028  
1029 1029  == 7.22 Setting up uplinkdwelltime (as923, au915) ==
1030 1030  
1031 1031  Feature: Get or Set uplinkdwelltime
1032 1032  
1033 -{{info}}
1034 -**AT Command: AT+DWELLT**
1035 -{{/info}}
933 +AT Command: AT+DWELLT
1036 1036  
1037 -(% border="1" style="background-color:#ffffcc; color:green; width:497.222px" %)
1038 -|=(% colspan="3" style="width: 494px;" %)AT+DWELLT
1039 -|(% style="width:183px" %)**Command Example**|(% style="width:179px" %)**Function**|(% style="width:131px" %)**Response**
1040 -|(% style="width:183px" %)AT+DWELLT=?|(% style="width:179px" %)Get uplinkdwelltime|(% style="width:131px" %)1(((
935 +|=(% colspan="3" %)AT+DWELLT
936 +|**Command Example**|**Function**|**Response**
937 +|AT+DWELLT=?|Get uplinkdwelltime|1(((
1041 1041  OK
1042 1042  )))
1043 -|(% style="width:183px" %)AT+DWELLT=0|(% style="width:179px" %)Set uplinkdwelltime|(% style="width:131px" %)OK
940 +|AT+DWELLT=0|Set uplinkdwelltime|OK
1044 1044  
1045 -{{info}}
1046 -**Downlink Command: 0x25**
1047 -{{/info}}
942 +Downlink Command: 0x25
1048 1048  
1049 1049  Format: Command Code (0x25) followed by 1 bytes state value.
1050 1050  
1051 1051  If the downlink payload=2501, it means set uplinkdwelltime to 1, while type code is 25.
1052 1052  
1053 -* **Example 1**: Downlink Payload: **2501** ~/~/ set uplinkdwelltime to 1
1054 -* **Example 2**: Downlink Payload: **2500** ~/~/ set uplinkdwelltime to 0
948 +* Example 1: Downlink Payload: 2501 ~/~/ set uplinkdwelltime to 1
949 +* Example 2: Downlink Payload: 2500 ~/~/ set uplinkdwelltime to 0
1055 1055  
1056 1056  == 7.23 Set Packet Receiving Response Level ==
1057 1057  
... ... @@ -1059,11 +1059,11 @@
1059 1059  
1060 1060  RPL value:
1061 1061  
1062 -* **AT+RPL=0:** Device won't immediately reply any downlink commands from platform.
1063 -* **AT+RPL=1:** Device will immediately reply message to Unconfirmed Data Down. Payload is 0x00.
1064 -* **AT+RPL=2:** Device will immediately reply message to Confirmed Data Down. Payload is 0x00 and requied response header for this command.
1065 -* **AT+RPL=3:** Device will immediately reply message to MAC Command. Payload is 0x00 and requied response header for this command.
1066 -* **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.
957 +* AT+RPL=0: Device won't immediately reply any downlink commands from platform.
958 +* AT+RPL=1: Device will immediately reply message to Unconfirmed Data Down. Payload is 0x00.
959 +* AT+RPL=2: Device will immediately reply message to Confirmed Data Down. Payload is 0x00 and requied response header for this command.
960 +* AT+RPL=3: Device will immediately reply message to MAC Command. Payload is 0x00 and requied response header for this command.
961 +* 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.
1067 1067  
1068 1068  Case Analyes:
1069 1069  
... ... @@ -1071,44 +1071,37 @@
1071 1071  * For Class C devices used in ChirpStack, need to set AT+RPL=4 because Chirpstack require immedietely reply message to MAC Command.
1072 1072  * 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.
1073 1073  
1074 -{{info}}
1075 -**AT Command: AT+RPL**
1076 -{{/info}}
969 +AT Command: AT+RPL
1077 1077  
1078 -(% border="1" style="background-color:#ffffcc; color:green; width:536.222px" %)
1079 -|=(% colspan="3" style="width: 533px;" %)AT+RPL
1080 -|(% style="width:160px" %)**Command Example**|(% style="width:263px" %)**Function**|(% style="width:109px" %)**Response**
1081 -|(% style="width:160px" %)AT+RPL=?|(% style="width:263px" %)Get packet receiving response level|(% style="width:109px" %)1(((
971 +|=(% colspan="3" %)AT+RPL
972 +|**Command Example**|**Function**|**Response**
973 +|AT+RPL=?|Get packet receiving response level|1(((
1082 1082  OK
1083 1083  )))
1084 -|(% style="width:160px" %)AT+RPL=0|(% style="width:263px" %)Set packet receiving response level|(% style="width:109px" %)OK
976 +|AT+RPL=0|Set packet receiving response level|OK
1085 1085  
1086 -{{info}}
1087 -**Downlink Command: 0x21**
1088 -{{/info}}
978 +Downlink Command: 0x21
1089 1089  
1090 1090  Format: Command Code (0x21) followed by 1 bytes level value.
1091 1091  
1092 1092  If the downlink payload=2101, it means set packet receiving response level to 1, while type code is 21.
1093 1093  
1094 -* **Example 1**: Downlink Payload: **2101** ~/~/ set packet receiving response level to 1
1095 -* **Example 2**: Downlink Payload: **2102** ~/~/ set packet receiving response level to 2
984 +* Example 1: Downlink Payload: 2101 ~/~/ set packet receiving response level to 1
985 +* Example 2: Downlink Payload: 2102 ~/~/ set packet receiving response level to 2
1096 1096  
1097 1097  = 8. AT Commands Combination =
1098 1098  
1099 1099  == 8.1 Set a fix RX2DR for downlink window ==
1100 1100  
1101 -* **AT+ADR=0 **~-~-> Disable ADR first
1102 -* **AT+RX2DR=xxxx** ~-~-> Set xxxx to your wanted DataRate
991 +* AT+ADR=0 ~-~-> Disable ADR first
992 +* AT+RX2DR=xxxx ~-~-> Set xxxx to your wanted DataRate
1103 1103  
1104 1104  == 8.2 Use Downlink Command to set a fix uplink DR ==
1105 1105  
1106 -{{info}}
1107 -**Downlink Command: 0x22000500**
1108 -{{/info}}
996 +Downlink Command: 0x22000500
1109 1109  
1110 1110  Same as:
1111 1111  
1112 -* AT+ADR=0  [[Reference>>||anchor="H7.1AdaptiveDataRate"]]
1113 -* AT+DR=5  [[Reference>>||anchor="H7.4DataRate"]]
1114 -* AT+TXP=0  [[Reference>>||anchor="H7.14TransmitPower"]]
1000 +* AT+ADR=0 [[Reference>>url:https://wiki.dragino.com/index.php/End_Device_Downlink_Command#Adaptive_Data_Rate]]
1001 +* AT+DR=5 [[Reference>>url:https://wiki.dragino.com/index.php/End_Device_Downlink_Command#Data_Rate]]
1002 +* AT+TXP=0 [[Reference>>url:https://wiki.dragino.com/index.php/End_Device_Downlink_Command#Transmit_Power]]
image-20220511120050-1.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -136.3 KB
Content
image-20220526162535-1.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.Xiaoling
Size
... ... @@ -1,1 +1,0 @@
1 -149.4 KB
Content
Copyright ©2010-2022 Dragino Technology Co., LTD. All rights reserved
Dragino Wiki v2.0