Last modified by Mengting Qiu on 2025/07/01 15:53

From version 80.1
edited by Mengting Qiu
on 2025/06/30 10:59
Change comment: There is no comment for this version
To version 4.3
edited by Xiaoling
on 2022/05/10 18:27
Change comment: There is no comment for this version

Summary

Details

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