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

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 38.49
edited by Xiaoling
on 2022/05/31 09:13
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,4 +1,4 @@
1 - **Table of** **Contents:**
1 + **Contents:**
2 2  
3 3  {{toc/}}
4 4  
... ... @@ -6,39 +6,39 @@
6 6  
7 7  = 1. Introduction =
8 8  
9 -
10 10  Dragino LoRaWAN End Node support two types of AT Commands and Downlink Commands:
11 11  
12 -* (% style="color:blue" %)**Common Commands:** (%%) They should be available for each sensor, such as: change uplink interval, reset device.
11 +* **Common Commands:** They should be available for each sensor, such as: change uplink interval, reset device.
12 +* **Sensor Related Commands:** Only for special sensor, such as control relay, poll RS485 device.
13 13  
14 -* (% style="color:blue" %)**Sensor Related Commands:** (%%) Only for special sensor, such as control relay, poll RS485 device.
15 -
16 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.**
16 +
18 18  )))
19 19  
20 -
21 -
22 22  = 2. How to use AT Commands or Downlink command =
23 23  
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:
21 +* For AT Command , See Devices User Manual for Device. The user manual can be found in each product page of [[Dragino Official Website>>url:http://www.dragino.com/]]
22 +* For LoRaWAN Downlink: The gateway transfer downlink command in HEX format. This page shows the HEX format downlink code for each command. but some servers use base64 as downlink code. Below are reference for how to use downlink command:
28 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]]?
24 +** Use Base64 format to send a downlink: [[Chirpstack>>Notes for ChirpStack]]
30 30  ** See use note for more serves [[Servers Note>>doc:Main.WebHome]](IoT LoRaWAN Server)
31 31  
32 -(% style="display:none" %) (%%)
33 33  
34 34  = 3. Support End Node and firmware version =
35 35  
36 -
30 +(% border="1" style="background-color:#ffffcc; color:green; width:966px" %)
31 +|=(% colspan="3" style="width: 963px;" %)(((
37 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**
33 +)))
41 41  |(% 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 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 43  )))|(% style="width:330px" %)(((
44 44  Open Source Generic LoRaWAN Sensor Node
... ... @@ -98,20 +98,22 @@
98 98  )))
99 99  )))
100 100  
101 -(% style="display:none" %) (%%)
102 102  
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  
109 +(% class="box infomessage" %)
110 +(((
111 +**AT Command: AT+TDC**
112 +)))
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**
114 +(% border="1" style="background-color:#ffffcc; color:green; width:727.222px" %)
115 +|=(% colspan="3" style="width: 724px;" %)AT+TDC
116 +|(% style="width:165px" %)**Command Example**|(% style="width:227px" %)**Function**|(% style="width:329px" %)**Response**
115 115  |(% style="width:165px" %)AT+TDC=?|(% style="width:227px" %)Show current transmit Interval|(% style="width:329px" %)30000(((
116 116  OK
117 117  
... ... @@ -121,33 +121,35 @@
121 121  Set transmit interval to 60000ms = 60 seconds
122 122  )))
123 123  
124 -(((
125 -(% style="color:blue" %)**Downlink Command: 0x01**
126 +{{info}}
127 +**Downlink Command: 0x01**
128 +{{/info}}
126 126  
130 +(((
127 127  Format: Command Code (0x01) followed by 3 bytes time value.
128 128  )))
129 129  
130 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.
135 +If the downlink payload=0100003C, it means set the END Nodes Transmit Interval to 0x00003C=60(S), while type code is 01.
132 132  )))
133 133  
134 -* **Example 1**: Downlink Payload:** 0100001E**  ~/~/ Set Transmit Interval (TDC) = 30 seconds
138 +* **Example 1**: Downlink Payload:** 0100001E** ~/~/ Set Transmit Interval (TDC) = 30 seconds
139 +* **Example 2**: Downlink Payload:** 0100003C** ~/~/ Set Transmit Interval (TDC) = 60 seconds
135 135  
136 -* **Example 2**: Downlink Payload:** 0100003C**  ~/~/ Set Transmit Interval (TDC) = 60 seconds
137 137  
138 -(% style="display:none" %) (%%)
139 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  
147 +{{info}}
148 +**AT Command: ATZ**
149 +{{/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" %)(((
151 +(% border="1" style="background-color:#ffffcc; color:green; width:727.222px" %)
152 +|=(% colspan="3" %)ATZ: Trig a reset of the MCU
153 +|**Command Example**|**Function**|**Response**
154 +|ATZ|Reset MCU|(((
151 151  Device reset and show booting info
152 152  
153 153  LSN50 Device/LoRa ST Module
... ... @@ -161,7 +161,9 @@
161 161  <followed by the Tx and Rx information>
162 162  )))
163 163  
164 -(% style="color:blue" %)**Downlink Command: 0x04**
168 +{{info}}
169 +**Downlink Command: 0x04**
170 +{{/info}}
165 165  
166 166  (((
167 167  Format: Command Code (0x04) followed by FF.
... ... @@ -168,21 +168,23 @@
168 168  )))
169 169  
170 170  (((
171 -If the downlink payload=**04FF**, the end node will reboot.
177 +If the downlink payload=**04FF**, the end node will reboot.
178 +
179 +
172 172  )))
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  
186 +{{info}}
187 +**AT Command: AT+FDR**
188 +{{/info}}
180 180  
181 -(% style="color:blue" %)**AT Command: AT+FDR  ~/~/  **(%%)Reset to factory default
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" %)(((
190 +(% border="1" style="background-color:#ffffcc; color:green; width:831.222px" %)
191 +|=(% colspan="3" style="width: 828px;" %)Reset to factory default
192 +|(% style="width:181px" %)**Command Example**|(% style="width:181px" %)**Function**|(% style="width:465px" %)**Response**
193 +|(% style="width:181px" %)AT+FDR|(% style="width:181px" %)Reset to factory default|(% style="width:465px" %)(((
186 186  Device reset to factory default parameters and show booting info
187 187  
188 188  LSN50 Device/LoRa ST Module
... ... @@ -196,7 +196,9 @@
196 196  Please set the parameters or reset Device to apply change
197 197  )))
198 198  
199 -(% style="color:blue" %)**Downlink Command: 0x04**
207 +{{info}}
208 +**Downlink Command: 0x04**
209 +{{/info}}
200 200  
201 201  (((
202 202  Format: Command Code (0x04) followed by FE.
... ... @@ -209,34 +209,35 @@
209 209  
210 210  == 4.4 Show Firmware Version ==
211 211  
212 -
213 213  Feature: Show firmware version. No downlink command yet.
214 214  
224 +{{info}}
225 +**AT Command: AT+VER**
226 +{{/info}}
215 215  
216 -(% style="color:blue" %)**AT Command: AT+VER  ~/~/   **(%%)Image Version and Frequency Band
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" %)(((
228 +(% border="1" style="background-color:#ffffcc; color:green; width:586px" %)
229 +|=(% colspan="3" style="width: 583px;" %)AT+VER: Image Version and Frequency Band
230 +|(% style="width:170px" %)**Command Example**|(% style="width:300px" %)**Function**|(% style="width:113px" %)**Response**
231 +|(% style="width:170px" %)AT+VER=?|(% style="width:300px" %)Show Image version and Frequency Band|(% style="width:113px" %)(((
221 221  1.3 EU868
222 222  
223 223  OK
224 224  )))
225 225  
226 -(% style="color:blue" %)**Downlink Command: 0x26 (Valid in 006 stack)**
237 +{{info}}
238 +**Downlink Command: 0x26 (Valid in 006 stack)**
239 +{{/info}}
227 227  
228 228  (((
229 -Format: Command Code (0x26) followed by 1 byte.
242 +Downlink Format: 0x26
230 230  )))
231 231  
232 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).
246 +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
234 234  )))
235 235  
236 236  (((
237 -
238 -
239 -(% style="color:#037691" %)**xx: Software Type:**
250 +**xx: Software Type:**
240 240  )))
241 241  
242 242  * 0x00 01: LGT92 Version
... ... @@ -244,9 +244,7 @@
244 244  * 0x00 03: LSE01/LDDS75/LDDS20/LSPH01/LLMS01/LSNPK01
245 245  
246 246  (((
247 -
248 -
249 -(% style="color:#037691" %)**yy: Frequency Band:**
258 +**yy: Frequency Band:**
250 250  )))
251 251  
252 252  * 0x01: EU868
... ... @@ -256,14 +256,12 @@
256 256  * 0x05: KZ865
257 257  * 0x06: RU864
258 258  * 0x07: AS923
259 -* 0x08: AS923-2
260 -* 0x09: AS923-3
261 -* 0xa0: AS923-4
268 +* 0x08: AS923-1
269 +* 0x09: AS923-2
270 +* 0xa0: AS923-3
262 262  
263 263  (((
264 -
265 -
266 -(% style="color:#037691" %)**zz: Subband**
273 +**zz: Subband**
267 267  )))
268 268  
269 269  firmware version: v1.1.0 ~-~-> 110
... ... @@ -271,71 +271,79 @@
271 271  
272 272  == 4.5 Show System Configure ==
273 273  
274 -
275 275  Feature: Show All configure. No downlink command yet.
276 276  
283 +{{info}}
284 +**AT Command: AT+CFG**
285 +{{/info}}
277 277  
278 -(% style="color:blue" %)**AT Command: AT+CFG  ~/~/ **(%%)Print all configurations
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**
287 +(% border="1" style="background-color:#ffffcc; color:green; width:599.222px" %)
288 +|=(% colspan="3" style="width: 596px;" %)AT+CFG: Print all configurations
289 +|(% style="width:160px" %)**Command Example**|(% style="width:154px" %)**Function**|(% style="width:280px" %)**Response**
282 282  |(% style="width:160px" %)AT+CFG|(% style="width:154px" %)Show all configures|(% style="width:280px" %)(((
283 283  AT+DEUI = XX XX XX XX XX XX XX XX
292 +
284 284  AT+DADDR=XXXXXXXX
294 +
285 285  ……….
296 +
286 286  AT+RX2WTO=X
298 +
287 287  AT+CHS=868100000
300 +
288 288  OK
289 289  )))
290 290  
291 -(% style="display:none" %) (%%)
292 292  
305 +
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  
312 +{{info}}
313 +**AT Command: AT+APPEUI**
314 +{{/info}}
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(((
316 +(% border="1" style="background-color:#ffffcc; color:green; width:686.222px" %)
317 +|=(% colspan="3" style="width: 683px;" %)AT+APPEUI
318 +|(% style="width:305px" %)**Command Example**|(% style="width:186px" %)**Function**|(% style="width:191px" %)**Response**
319 +|(% style="width:305px" %)AT+APPEUI=?|(% style="width:186px" %)Get the Application EUI|(% style="width:191px" %)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
322 +|(% style="width:305px" %)AT+APPEUI=00 b3 d5 7e f0 00 4d 34|(% style="width:186px" %)Set the Application EUI|(% style="width:191px" %)OK
309 309  
310 -(% style="display:none" %) (%%)
311 311  
325 +
312 312  == 5.2 Application Key ==
313 313  
314 -
315 315  Feature: Get or Set the Application Key.
316 316  
330 +{{info}}
331 +**AT Command: AT+APPKEY**
332 +{{/info}}
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**
334 +(% border="1" style="background-color:#ffffcc; color:green; width:976.222px" %)
335 +|=(% colspan="3" style="width: 973px;" %)AT+APPKEY
336 +|(% style="width:441px" %)**Command Example**|(% style="width:180px" %)**Function**|(% style="width:350px" %)**Response**
322 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(((
323 323  OK
324 324  )))
325 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
326 326  
327 -(% style="display:none" %) (%%)
328 328  
329 329  == 5.3 Application Session Key ==
330 330  
331 -
332 332  Feature: Get or Set the Application Session Key.
333 333  
347 +{{info}}
348 +**AT Command: AT+APPSKEY**
349 +{{/info}}
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**
351 +(% border="1" style="background-color:#ffffcc; color:green; width:1040.22px" %)
352 +|=(% colspan="3" style="width: 1037px;" %)AT+APPSKEY
353 +|(% style="width:451px" %)**Command Example**|(% style="width:231px" %)**Function**|(% style="width:354px" %)**Response**
339 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(((
340 340  OK
341 341  )))
... ... @@ -343,18 +343,18 @@
343 343  OK
344 344  )))
345 345  
346 -(% style="display:none" %) (%%)
347 347  
348 348  == 5.4 Device Address ==
349 349  
350 -
351 351  Feature: Get or Set the Device Address.
352 352  
366 +{{info}}
367 +**AT Command: AT+DADDR**
368 +{{/info}}
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**
370 +(% border="1" style="background-color:#ffffcc; color:green; width:795.222px" %)
371 +|=(% colspan="3" style="width: 792px;" %)AT+DADDR
372 +|(% style="width:192px" %)**Command Example**|(% style="width:241px" %)**Function**|(% style="width:359px" %)**Response**
358 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)(((
359 359  A8 40 41 FF
360 360  
... ... @@ -362,18 +362,18 @@
362 362  )))
363 363  |(% style="width:192px" %)AT+DADDR=A8 40 41 FF|(% style="width:241px" %)Set the Application Session Key.|(% style="width:359px" %)OK
364 364  
365 -(% style="display:none" %) (%%)
366 366  
367 367  == 5.5 Device EUI ==
368 368  
369 -
370 370  Feature: Get or Set the Device EUI.
371 371  
385 +{{info}}
386 +**AT Command: AT+DEUI**
387 +{{/info}}
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**
389 +(% border="1" style="background-color:#ffffcc; color:green; width:1035.22px" %)
390 +|=(% colspan="3" style="width: 1032px;" %)AT+DEUI
391 +|(% style="width:250px" %)**Command Example**|(% style="width:147px" %)**Function**|(% style="width:634px" %)**Response**
377 377  |(% style="width:250px" %)AT+DEUI=?|(% style="width:147px" %)Get the Device EUI.|(% style="width:634px" %)00 44 34 22 33 45 55 55(((
378 378  OK
379 379  )))
... ... @@ -381,56 +381,54 @@
381 381  OK
382 382  )))
383 383  
384 -(% style="display:none" %) (%%)
385 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  
404 +{{info}}
405 +**AT Command: AT+NWKID**
406 +{{/info}}
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**
408 +(% border="1" style="background-color:#ffffcc; color:green; width:448.222px" %)
409 +|=(% colspan="3" style="width: 445px;" %)AT+NWKID
410 +|(% style="width:191px" %)**Command Example**|(% style="width:153px" %)**Function**|(% style="width:101px" %)**Response**
396 396  |(% style="width:191px" %)AT+NWKID=?|(% style="width:153px" %)Get the Network ID.|(% style="width:101px" %)a8 40 41 ff(((
397 397  OK
398 398  )))
399 399  |(% style="width:191px" %)AT+NWKID=A8 40 41 FF|(% style="width:153px" %)Set the Network ID.|(% style="width:101px" %)OK
400 400  
401 -(% style="display:none" %) (%%)
402 402  
403 403  == 5.7 Network Session Key ==
404 404  
405 -
406 406  Feature: Get or Set the Network Session Key
407 407  
421 +{{info}}
422 +**AT Command: AT+NWKSKEY**
423 +{{/info}}
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**
425 +(% border="1" style="background-color:#ffffcc; color:green; width:1017.22px" %)
426 +|=(% colspan="3" style="width: 1014px;" %)AT+NWKSKEY
427 +|(% style="width:455px" %)**Command Example**|(% style="width:215px" %)**Function**|(% style="width:343px" %)**Response**
413 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(((
414 414  OK
415 415  )))
416 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
417 417  
418 -(% style="display:none" %) (%%)
419 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  
440 +{{info}}
441 +**AT Command: AT+CFM**
442 +{{/info}}
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**
444 +(% border="1" style="background-color:#ffffcc; color:green; width:710.222px" %)
445 +|=(% colspan="3" style="width: 707px;" %)AT+CFM
446 +|(% style="width:155px" %)**Command Example**|(% style="width:205px" %)**Function**|(% style="width:346px" %)**Response**
434 434  |(% style="width:155px" %)AT+CFM=?|(% style="width:205px" %)Get the confirmation mode|(% style="width:346px" %)0(((
435 435  OK
436 436  )))
... ... @@ -437,108 +437,62 @@
437 437  |(% style="width:155px" %)AT+CFM=1|(% style="width:205px" %)Set the confirmation mode|(% style="width:346px" %)OK
438 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
439 439  
440 -(% style="color:blue" %)**Downlink Command: 0x05**
453 +Downlink Command: 0x05
441 441  
442 -Format: Command Code (0x05) followed by 1 byte mode value.
455 +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
459 +* Example 1: Downlink Payload: 0501 ~/~/ Set AT+CFM=1
460 +* Example 2: Downlink Payload: 0500 ~/~/ Set AT+CFM=0
447 447  
448 -* **Example 2:** Downlink Payload: 0500  ~/~/ Set AT+CFM=0
449 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  
467 +{{info}}
468 +**AT Command: AT+CFS**
469 +{{/info}}
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(((
471 +(% border="1" style="background-color:#ffffcc; color:green; width:534.222px" %)
472 +|=(% colspan="3" style="width: 531px;" %)AT+CFS
473 +|(% style="width:156px" %)**Command Example**|(% style="width:193px" %)**Function**|(% style="width:178px" %)**Response**
474 +|(% style="width:156px" %)AT+CFS=?|(% style="width:193px" %)Get confirmation status|(% style="width:178px" %)0(((
510 510  OK
511 511  )))
512 512  
513 -(% style="display:none" %) (%%)
514 514  
515 515  == 6.3 Join LoRa® Network ==
516 516  
517 -
518 518  Feature: Join network.
519 519  
483 +{{info}}
484 +**AT Command: AT+JOIN**
485 +{{/info}}
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**
487 +(% border="1" style="background-color:#ffffcc; color:green; width:647.222px" %)
488 +|=(% colspan="3" style="width: 644px;" %)AT+JOIN
489 +|(% style="width:163px" %)**Command Example**|(% style="width:147px" %)**Function**|(% style="width:334px" %)**Response**
525 525  |(% style="width:163px" %)AT+JOIN ?|(% style="width:147px" %)Get imformation.|(% style="width:334px" %)AT+JOIN: Join network(((
526 526  OK
492 +
527 527  While Error in format, return AT_BUSY_ERROR
528 528  )))
529 529  
530 -(% style="display:none" %) (%%)
531 531  
497 +
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  
502 +{{info}}
503 +**AT Command: AT+NJM**
504 +{{/info}}
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**
506 +(% border="1" style="background-color:#ffffcc; color:green; width:753.222px" %)
507 +|=(% colspan="3" style="width: 750px;" %)AT+NJM
508 +|(% style="width:162px" %)**Command Example**|(% style="width:227px" %)**Function**|(% style="width:361px" %)**Response**
542 542  |(% style="width:162px" %)AT+NJM=?|(% style="width:227px" %)Get the Network Join Mode|(% style="width:361px" %)1(((
543 543  OK
544 544  )))
... ... @@ -545,164 +545,175 @@
545 545  |(% style="width:162px" %)AT+NJM=0|(% style="width:227px" %)Set the Network Join Mode|(% style="width:361px" %)OK
546 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
547 547  
548 -(% style="color:blue" %)**Downlink Command: 0x20**
515 +{{info}}
516 +**Downlink Command: 0x20**
517 +{{/info}}
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
523 +* **Example 1: **Downlink Payload: **2000** ~/~/ Set AT+NJM=O
524 +* **Example 2:** Downlink Payload: **2001** ~/~/ Set AT+NJM=1
555 555  
556 -* **Example 2:** Downlink Payload: **2001**  ~/~/ Set AT+NJM=1
557 557  
558 -(% style="display:none" %) (%%)
559 559  
560 560  == 6.5 LoRa® Network Join Status ==
561 561  
562 -
563 563  Feature: LoRa® Network Join Status.
564 564  
532 +{{info}}
533 +**AT Command: AT+NJS**
534 +{{/info}}
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(((
536 +(% border="1" style="background-color:#ffffcc; color:green; width:498.222px" %)
537 +|=(% colspan="3" style="width: 495px;" %)AT+NJS
538 +|(% style="width:169px" %)**Command Example**|(% style="width:164px" %)**Function**|(% style="width:161px" %)**Response**
539 +|(% style="width:169px" %)AT+NJS=?|(% style="width:164px" %)Get the join status.|(% style="width:161px" %)0(((
571 571  OK
572 572  )))
573 573  
574 -(% style="display:none" %) (%%)
575 575  
544 +
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  
549 +{{info}}
550 +**AT Command: AT+RECV**
551 +{{/info}}
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:(((
553 +(% border="1" style="background-color:#ffffcc; color:green; width:587.222px" %)
554 +|=(% colspan="3" style="width: 584px;" %)AT+RECV
555 +|(% style="width:161px" %)**Command Example**|(% style="width:272px" %)**Function**|(% style="width:150px" %)**Response**
556 +|(% style="width:161px" %)AT+RECV=?|(% style="width:272px" %)print last received data in raw format.|(% style="width:150px" %)0:(((
587 587  OK
588 588  )))
589 589  
590 -(% style="display:none" %) (%%)
591 591  
561 +
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  
566 +{{info}}
567 +**AT Command: AT+RECVB**
568 +{{/info}}
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**
570 +(% border="1" style="background-color:#ffffcc; color:green; width:793.222px" %)
571 +|=(% colspan="3" style="width: 790px;" %)AT+RECVB
572 +|(% style="width:173px" %)**Command Example**|(% style="width:497px" %)**Function**|(% style="width:120px" %)**Response**
602 602  |(% style="width:173px" %)AT+RECVB=?|(% style="width:497px" %)print last received data in binary format (with hexadecimal values).|(% style="width:120px" %)2: 0010(((
603 603  OK
604 604  )))
605 605  
606 -(% style="display:none" %) (%%)
607 607  
608 -== 6.8 Send Text Data(Note: The format of this command of LA66 is subject to the manual) ==
609 609  
579 +== 6.8 Send Text Data ==
610 610  
611 611  Feature: Send Text Data<port:data>.
612 612  
583 +{{info}}
584 +**AT Command: AT+SEND**
585 +{{/info}}
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**
587 +(% border="1" style="background-color:#ffffcc; color:green; width:991.222px" %)
588 +|=(% colspan="3" style="width: 988px;" %)AT+SEND
589 +|(% style="width:201px" %)**Command Example**|(% style="width:340px" %)**Function**|(% style="width:446px" %)**Response**
618 618  |(% style="width:201px" %)AT+SEND=12:hello world|(% style="width:340px" %)Send text data along with the application port.|(% style="width:446px" %)OK(((
619 619  While Error in format, return
592 +
620 620  AT_BUSY_ERROR/AT_BUSY_ERROR/AT_NO_NETWORK_JOINED
594 +
595 +
621 621  )))
622 622  
623 -(% style="display:none" %) (%%)
624 624  
625 -== 6.9 Send Hexadecimal Data(Note: The format of this command of LA66 is subject to the manual) ==
626 626  
600 +== 6.9 Send Hexadecimal Data ==
627 627  
628 628  Feature: Send hexadecimal data along with the application port.
629 629  
604 +{{info}}
605 +**AT Command: AT+SENDB**
606 +{{/info}}
630 630  
631 -(% style="color:blue" %)**AT Command: AT+SENDB**
608 +(% border="1" style="background-color:#ffffcc; color:green; width:1120.22px" %)
609 +|=(% colspan="3" style="width: 1117px;" %)AT+SENDB
610 +|(% style="width:257px" %)**Command Example**|(% style="width:406px" %)**Function**|(% style="width:453px" %)**Response**
611 +|(% style="width:257px" %)AT+SENDB=12:abcdef0123456789|(% style="width:406px" %)Send hexadecimal data along with the application port.|(% style="width:453px" %)OK
612 +|(% style="width:257px" %)AT+SENDB=abcdef0123456789|(% style="width:406px" %)Send hexadecimal data along with the application port.|(% style="width:453px" %)While Error in format, return(((
613 +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
615 +
638 638  )))
639 639  
640 -(% style="display:none" %) (%%)
641 641  
619 +
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  
626 +{{info}}
627 +**AT Command: AT+ADR**
628 +{{/info}}
649 649  
650 -(% style="color:blue" %)**AT Command: AT+ADR**
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(((
630 +(% border="1" style="background-color:#ffffcc; color:green; width:683.222px" %)
631 +|=(% colspan="3" style="width: 680px;" %)AT+ADR
632 +|(% style="width:162px" %)**Command Example**|(% style="width:266px" %)**Function**|(% style="width:250px" %)**Response**
633 +|(% style="width:162px" %)AT+ADR=?|(% style="width:266px" %)Get the Adaptive Data Rate setting.|(% style="width:250px" %)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(((
636 +|(% style="width:162px" %)AT+ADR=0|(% style="width:266px" %)Set the Adaptive Data Rate setting.|(% style="width:250px" %)OK
637 +|(% style="width:162px" %)AT+ADR=2|(% style="width:266px" %)Set the Adaptive Data Rate setting.|(% style="width:250px" %)While Error in format, return(((
659 659  AT_PARAM_ERROR
660 660  )))
661 661  
662 -(% style="color:blue" %)**Downlink Command: 0x22**
641 +{{info}}
642 +**Downlink Command: 0x22**
643 +{{/info}}
663 663  
645 +
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.
648 +* **Example 1**: Downlink Payload: **2201** ~/~/ Set AT+ADR=1.
649 +* **Example 2**: Downlink Payload: **2200FFFF** ~/~/ Set AT+ADR=0.
667 667  
668 -* **Example 2**: Downlink Payload: **2200FFFF**  ~/~/ Set AT+ADR=0.
669 669  
670 -(% style="display:none" %) (%%)
671 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  
657 +{{info}}
658 +**AT Command:AT+CLASS**
659 +{{/info}}
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(((
661 +(% border="1" style="background-color:#ffffcc; color:green; width:507.222px" %)
662 +|=(% colspan="3" style="width: 504px;" %)AT+CLASS
663 +|(% style="width:163px" %)**Command Example**|(% style="width:166px" %)**Function**|(% style="width:175px" %)**Response**
664 +|(% style="width:163px" %)AT+CLASS=?|(% style="width:166px" %)Get the Device Class.|(% style="width:175px" %)A(((
683 683  OK
684 684  )))
685 -|(% style="width:163px" %)AT+CLASS=C|(% style="width:166px" %)Set the Device Class.|(% style="width:94px" %)OK(((
667 +|(% style="width:163px" %)AT+CLASS=C|(% style="width:166px" %)Set the Device Class.|(% style="width:175px" %)OK(((
686 686  
687 687  )))
688 688  
689 -(% style="display:none" %)
690 690  
691 -(% style="color:red" %)**Notice:**
692 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  
675 +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.
677 +{{info}}
678 +**AT Command:AT+DCS**
679 +{{/info}}
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**
681 +(% border="1" style="background-color:#ffffcc; color:green; width:515.222px" %)
682 +|=(% colspan="3" style="width: 512px;" %)AT+DCS
683 +|(% style="width:165px" %)**Command Example**|(% style="width:239px" %)**Function**|(% style="width:107px" %)**Response**
706 706  |(% style="width:165px" %)AT+DCS=?|(% style="width:239px" %)Get the ETSI Duty Cycle setting.|(% style="width:107px" %)1(((
707 707  OK
708 708  )))
... ... @@ -710,69 +710,69 @@
710 710  
711 711  )))
712 712  
713 -(% style="display:none" %) (%%)
714 714  
692 +
715 715  == 7.4 Data Rate ==
716 716  
695 +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) .
697 +{{info}}
698 +**AT Command: AT+DR**
699 +{{/info}}
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(((
701 +(% border="1" style="background-color:#ffffcc; color:green; width:466.222px" %)
702 +|=(% colspan="3" style="width: 463px;" %)AT+DR
703 +|(% style="width:156px" %)**Command Example**|(% style="width:167px" %)**Function**|(% style="width:140px" %)**Response**
704 +|(% style="width:156px" %)AT+DR=?|(% style="width:167px" %)Get the Data Rate.|(% style="width:140px" %)5(((
732 732  OK
733 733  )))
734 -|(% style="width:156px" %)AT+DR=2|(% style="width:147px" %)Set the Data Rate.|(% style="width:100px" %)OK(((
707 +|(% style="width:156px" %)AT+DR=2|(% style="width:167px" %)Set the Data Rate.|(% style="width:140px" %)OK(((
735 735  
736 736  )))
737 737  
738 -(% style="color:blue" %)**Downlink Command: 0x2200aaFF**
711 +{{info}}
712 +**Downlink Command: 0x2200aaFF**
713 +{{/info}}
739 739  
715 +
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.
718 +* **Example 1**: Downlink Payload: **220001FF** ~/~/ Set AT+DR=1.
719 +* **Example 2**: Downlink Payload: **220000FF** ~/~/ Set AT+DR=0.
743 743  
744 -* **Example 2**: Downlink Payload: **220000FF**  ~/~/ Set AT+DR=0.
745 745  
746 -(% style="display:none" %) (%%)
747 747  
748 748  == 7.5 Frame Counter Downlink ==
749 749  
750 -
751 751  Feature: Get or Set the Frame Counter Downlink.
752 752  
727 +{{info}}
728 +**AT Command:AT+FCD**
729 +{{/info}}
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**
731 +(% border="1" style="background-color:#ffffcc; color:green; width:693.222px" %)
732 +|=(% colspan="3" style="width: 690px;" %)AT+FCD
733 +|(% style="width:162px" %)**Command Example**|(% style="width:258px" %)**Function**|(% style="width:269px" %)**Response**
758 758  |(% style="width:162px" %)AT+FCD=?|(% style="width:258px" %)Get the Frame Counter Downlink.|(% style="width:269px" %)0(((
759 759  OK
760 760  )))
761 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)(((
762 762  OK
739 +
740 +
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  
747 +{{info}}
748 +**AT Command:AT+FCU**
749 +{{/info}}
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**
751 +(% border="1" style="background-color:#ffffcc; color:green; width:534.222px" %)
752 +|=(% colspan="3" style="width: 531px;" %)AT+FCU
753 +|(% style="width:177px" %)**Command Example**|(% style="width:239px" %)**Function**|(% style="width:113px" %)**Response**
776 776  |(% style="width:177px" %)AT+FCU=?|(% style="width:239px" %)Get the Frame Counter Uplink.|(% style="width:113px" %)0(((
777 777  OK
778 778  )))
... ... @@ -780,18 +780,17 @@
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  
765 +{{info}}
766 +**AT Command:AT+JN1DL**
767 +{{/info}}
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**
769 +(% border="1" style="background-color:#ffffcc; color:green; width:537.222px" %)
770 +|=(% colspan="3" style="width: 534px;" %)AT+JN1DL
771 +|(% style="width:164px" %)**Command Example**|(% style="width:229px" %)**Function**|(% style="width:140px" %)**Response**
795 795  |(% style="width:164px" %)AT+JN1DL=?|(% style="width:229px" %)Get the Join Accept Delay.|(% style="width:140px" %)5000(((
796 796  OK
797 797  )))
... ... @@ -799,18 +799,17 @@
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  
783 +{{info}}
784 +**AT Command:AT+JN2DL**
785 +{{/info}}
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**
787 +(% border="1" style="background-color:#ffffcc; color:green; width:538.222px" %)
788 +|=(% colspan="3" style="width: 535px;" %)AT+JN2DL
789 +|(% style="width:160px" %)**Command Example**|(% style="width:228px" %)**Function**|(% style="width:146px" %)**Response**
814 814  |(% style="width:160px" %)AT+JN2DL=?|(% style="width:228px" %)Get the Join Accept Delay.|(% style="width:146px" %)6000(((
815 815  OK
816 816  )))
... ... @@ -818,46 +818,37 @@
818 818  
819 819  )))
820 820  
821 -(% style="display:none" %) (%%)
822 -
823 823  == 7.9 Public Network Mode ==
824 824  
799 +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
801 +{{info}}
802 +**AT Command:AT+PNM**
803 +{{/info}}
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**
805 +(% border="1" style="background-color:#ffffcc; color:green; width:667.222px" %)
806 +|=(% colspan="3" style="width: 664px;" %)AT+PNM
807 +|(% style="width:166px" %)**Command Example**|(% style="width:225px" %)**Function**|(% style="width:272px" %)**Response**
835 835  |(% style="width:166px" %)AT+PNM=?|(% style="width:225px" %)Get the public network mode.|(% style="width:272px" %)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)(((
811 +|(% style="width:166px" %)AT+PNM=1|(% style="width:225px" %)Set the public network mode.|(% style="width:272px" %)(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  
821 +{{info}}
822 +**AT Command:AT+RX1DL**
823 +{{/info}}
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**
825 +(% border="1" style="background-color:#ffffcc; color:green; width:408.222px" %)
826 +|=(% colspan="3" style="width: 405px;" %)AT+RX1DL
827 +|(% style="width:155px" %)**Command Example**|(% style="width:128px" %)**Function**|(% style="width:122px" %)**Response**
861 861  |(% style="width:155px" %)AT+RX1DL=?|(% style="width:128px" %)Get the delay.|(% style="width:122px" %)1000(((
862 862  OK
863 863  )))
... ... @@ -865,18 +865,17 @@
865 865  
866 866  )))
867 867  
868 -(% style="display:none" %) (%%)
869 -
870 870  == 7.11 Receive Delay2 ==
871 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  
839 +{{info}}
840 +**AT Command:AT+RX2DL**
841 +{{/info}}
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**
843 +(% border="1" style="background-color:#ffffcc; color:green; width:481.222px" %)
844 +|=(% colspan="3" style="width: 478px;" %)AT+RX2DL
845 +|(% style="width:175px" %)**Command Example**|(% style="width:152px" %)**Function**|(% style="width:150px" %)**Response**
880 880  |(% style="width:175px" %)AT+RX2DL=?|(% style="width:152px" %)Get the delay.|(% style="width:150px" %)2000(((
881 881  OK
882 882  )))
... ... @@ -884,18 +884,17 @@
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  
857 +{{info}}
858 +**AT Command:AT+RX2DR**
859 +{{/info}}
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**
861 +(% border="1" style="background-color:#ffffcc; color:green; width:525.222px" %)
862 +|=(% colspan="3" style="width: 522px;" %)AT+RX2DR
863 +|(% style="width:160px" %)**Command Example**|(% style="width:232px" %)**Function**|(% style="width:130px" %)**Response**
899 899  |(% style="width:160px" %)AT+RX2DR=?|(% style="width:232px" %)Get the Rx2 window data rate.|(% style="width:130px" %)2(((
900 900  OK
901 901  )))
... ... @@ -903,18 +903,17 @@
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  
875 +{{info}}
876 +**AT Command:AT+RX2FQ**
877 +{{/info}}
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**
879 +(% border="1" style="background-color:#ffffcc; color:green; width:587.222px" %)
880 +|=(% colspan="3" style="width: 584px;" %)AT+RX2FQ
881 +|(% style="width:183px" %)**Command Example**|(% style="width:240px" %)**Function**|(% style="width:160px" %)**Response**
918 918  |(% style="width:183px" %)AT+RX2FQ=?|(% style="width:240px" %)Get the Rx2 window frequency.|(% style="width:160px" %)434665000(((
919 919  OK
920 920  )))
... ... @@ -922,20 +922,17 @@
922 922  
923 923  )))
924 924  
925 -(% style="display:none" %) (%%)
926 -
927 927  == 7.14 Transmit Power ==
928 928  
891 +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. )
893 +{{info}}
894 +**AT Command:AT+TXP**
895 +{{/info}}
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**
897 +(% border="1" style="background-color:#ffffcc; color:green; width:465.222px" %)
898 +|=(% colspan="3" style="width: 462px;" %)AT+TXP
899 +|(% style="width:161px" %)**Command Example**|(% style="width:189px" %)**Function**|(% style="width:112px" %)**Response**
939 939  |(% style="width:161px" %)AT+TXP=?|(% style="width:189px" %)Get the Transmit Power.|(% style="width:112px" %)0(((
940 940  OK
941 941  )))
... ... @@ -947,98 +947,93 @@
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.
911 +* **Example 1**: Downlink Payload: **22000102** ~/~/ Set AT+TXP=2.
912 +* **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  
918 +{{info}}
919 +**AT Command:AT+RSSI**
920 +{{/info}}
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**
922 +(% border="1" style="background-color:#ffffcc; color:green; width:557.222px" %)
923 +|=(% colspan="3" style="width: 554px;" %)AT+RSSI
924 +|(% style="width:164px" %)**Command Example**|(% style="width:289px" %)**Function**|(% style="width:100px" %)**Response**
966 966  |(% style="width:164px" %)AT+RSSI=?|(% style="width:289px" %)Get the RSSI of the last received packet.|(% style="width:100px" %)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  
933 +{{info}}
934 +**AT Command:AT+SNR**
935 +{{/info}}
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**
937 +(% border="1" style="background-color:#ffffcc; color:green; width:571.222px" %)
938 +|=(% colspan="3" style="width: 568px;" %)AT+SNR
939 +|(% style="width:164px" %)**Command Example**|(% style="width:290px" %)**Function**|(% style="width:113px" %)**Response**
982 982  |(% style="width:164px" %)AT+SNR=?|(% style="width:290px" %)Get the RSSI of the last received packet.|(% style="width:113px" %)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  
948 +{{info}}
949 +**AT Command: AT+PORT**
950 +{{/info}}
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(((
952 +(% border="1" style="background-color:#ffffcc; color:green; width:500.222px" %)
953 +|=(% colspan="3" style="width: 497px;" %)AT+PORT
954 +|(% style="width:157px" %)**Command Example**|(% style="width:204px" %)**Function**|(% style="width:135px" %)**Response**
955 +|(% style="width:157px" %)AT+PORT=?|(% style="width:204px" %)Get the application port|(% style="width:135px" %)21(((
999 999  OK
1000 1000  )))
1001 -|(% style="width:157px" %)AT+PORT=21|(% style="width:193px" %)Set the application port|(% style="width:104px" %)OK
958 +|(% style="width:157px" %)AT+PORT=21|(% style="width:204px" %)Set the application port|(% style="width:135px" %)OK
1002 1002  
1003 -(% style="color:blue" %)**Downlink Command: 0x23**
960 +{{info}}
961 +**Downlink Command: 0x23**
962 +{{/info}}
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
968 +* **Example 1**: Downlink Payload: **2301** ~/~/ set the application port to 1
969 +* **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  
975 +{{info}}
976 +**AT Command: AT+CHS**
977 +{{/info}}
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(((
979 +(% border="1" style="background-color:#ffffcc; color:green; width:603.222px" %)
980 +|=(% colspan="3" style="width: 600px;" %)AT+CHS
981 +|(% style="width:182px" %)**Command Example**|(% style="width:295px" %)**Function**|(% style="width:122px" %)**Response**
982 +|(% style="width:182px" %)AT+CHS=?|(% style="width:295px" %)Get Frequency for Single Channel Mode|(% style="width:122px" %)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
985 +|(% style="width:182px" %)AT+CHS=868100000|(% style="width:295px" %)Set Frequency for Single Channel Mode|(% style="width:122px" %)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  
991 +{{info}}
992 +**AT Command: AT+CHE**
993 +{{/info}}
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**
995 +(% border="1" style="background-color:#ffffcc; color:green; width:710.222px" %)
996 +|=(% colspan="3" style="width: 707px;" %)AT+CHE
997 +|(% style="width:160px" %)**Command Example**|(% style="width:198px" %)**Function**|(% style="width:349px" %)**Response**
1042 1042  |(% style="width:160px" %)AT+CHE=?|(% style="width:198px" %)Get eight channels mode|(% style="width:349px" %)1(((
1043 1043  902.3 902.5 902.7 902.9 903.1 903.3 903.5 903.7
1044 1044  
... ... @@ -1046,37 +1046,35 @@
1046 1046  )))
1047 1047  |(% style="width:160px" %)AT+CHE=1|(% style="width:198px" %)Set eight channels mode|(% style="width:349px" %)OK
1048 1048  
1049 -(% style="color:blue" %)**Downlink Command: 0x24 (LHT65,LHT65N Downlink Command:0x07)**
1005 +{{info}}
1006 +**Downlink Command: 0x24**
1007 +{{/info}}
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
1013 +* **Example 1**: Downlink Payload: 2401 ~/~/ set channel mode to 1
1014 +* **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  
1018 +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).
1020 +{{info}}
1021 +**AT Command: AT+RX1WTO**
1022 +{{/info}}
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**
1024 +(% border="1" style="background-color:#ffffcc; color:green; width:460.222px" %)
1025 +|=(% colspan="3" style="width: 457px;" %)AT+ RX1WTO
1026 +|(% style="width:163px" %)**Command Example**|(% style="width:201px" %)**Function**|(% style="width:93px" %)**Response**
1071 1071  |(% style="width:163px" %)AT+RX1WTO=?|(% style="width:201px" %)Get RXwindows1 timeout|(% style="width:93px" %)14(((
1072 1072  OK
1073 1073  )))
1074 1074  |(% style="width:163px" %)AT+RX1WTO=60|(% style="width:201px" %)Set RXwindows1 timeout|(% style="width:93px" %)OK
1075 1075  
1076 -(% style="display:none" %) (%%)
1077 -
1078 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.
1033 +**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.
1080 1080  )))
1081 1081  
1082 1082  [[image:image-20220526162535-1.png]]
... ... @@ -1083,295 +1083,109 @@
1083 1083  
1084 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.
1040 +
1041 +
1086 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  
1046 +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).
1048 +{{info}}
1049 +**AT Command: AT+RX2WTO**
1050 +{{/info}}
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(((
1052 +(% border="1" style="background-color:#ffffcc; color:green; width:497.222px" %)
1053 +|=(% colspan="3" style="width: 494px;" %)AT+ RX2WTO
1054 +|(% style="width:190px" %)**Command Example**|(% style="width:199px" %)**Function**|(% style="width:104px" %)**Response**
1055 +|(% style="width:190px" %)AT+RX2WTO=?|(% style="width:199px" %)Get RXwindows2 timeout|(% style="width:104px" %)7(((
1115 1115  OK
1116 1116  )))
1117 -|(% style="width:162px" %)AT+RX2WTO=20|(% style="width:192px" %)Set RXwindows2 timeout|(% style="width:90px" %)OK
1058 +|(% style="width:190px" %)AT+RX2WTO=20|(% style="width:199px" %)Set RXwindows2 timeout|(% style="width:104px" %)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  
1064 +{{info}}
1065 +**AT Command: AT+DWELLT**
1066 +{{/info}}
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(((
1068 +(% border="1" style="background-color:#ffffcc; color:green; width:497.222px" %)
1069 +|=(% colspan="3" style="width: 494px;" %)AT+DWELLT
1070 +|(% style="width:183px" %)**Command Example**|(% style="width:179px" %)**Function**|(% style="width:131px" %)**Response**
1071 +|(% style="width:183px" %)AT+DWELLT=?|(% style="width:179px" %)Get uplinkdwelltime|(% style="width:131px" %)1(((
1146 1146  OK
1147 1147  )))
1148 -|(% style="width:162px" %)AT+DWELLT=0|(% style="width:157px" %)Set uplinkdwelltime|(% style="width:95px" %)OK
1074 +|(% style="width:183px" %)AT+DWELLT=0|(% style="width:179px" %)Set uplinkdwelltime|(% style="width:131px" %)OK
1149 1149  
1150 -(% style="color:blue" %)**Downlink Command: 0x25**
1076 +{{info}}
1077 +**Downlink Command: 0x25**
1078 +{{/info}}
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
1084 +* **Example 1**: Downlink Payload: **2501** ~/~/ set uplinkdwelltime to 1
1085 +* **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  
1091 +RPL value:
1167 1167  
1168 -(% style="color:blue" %)**RPL value:**
1169 -
1170 1170  * **AT+RPL=0:** Device won't immediately reply any downlink commands from platform.
1171 -
1172 1172  * **AT+RPL=1:** Device will immediately reply message to Unconfirmed Data Down. Payload is 0x00.
1173 -
1174 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 1176  * **AT+RPL=3:** Device will immediately reply message to MAC Command. Payload is 0x00 and requied response header for this command.
1177 -
1178 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 1179  
1180 -(% style="color:blue" %)**Case Analyes:**
1099 +Case Analyes:
1181 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**
1105 +{{info}}
1106 +**AT Command: AT+RPL**
1107 +{{/info}}
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**
1109 +(% border="1" style="background-color:#ffffcc; color:green; width:536.222px" %)
1110 +|=(% colspan="3" style="width: 533px;" %)AT+RPL
1111 +|(% style="width:160px" %)**Command Example**|(% style="width:263px" %)**Function**|(% style="width:109px" %)**Response**
1192 1192  |(% style="width:160px" %)AT+RPL=?|(% style="width:263px" %)Get packet receiving response level|(% style="width:109px" %)1(((
1193 1193  OK
1194 1194  )))
1195 1195  |(% style="width:160px" %)AT+RPL=0|(% style="width:263px" %)Set packet receiving response level|(% style="width:109px" %)OK
1196 1196  
1197 -(% style="color:blue" %)**Downlink Command: 0x21**
1117 +{{info}}
1118 +**Downlink Command: 0x21**
1119 +{{/info}}
1198 1198  
1199 1199  Format: Command Code (0x21) followed by 1 bytes level value.
1200 1200  
1201 1201  If the downlink payload=2101, it means set packet receiving response level to 1, while type code is 21.
1202 1202  
1203 -* **Example 1**: Downlink Payload: **2101**  ~/~/ set packet receiving response level to 1
1125 +* **Example 1**: Downlink Payload: **2101** ~/~/ set packet receiving response level to 1
1126 +* **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  
1132 +* **AT+ADR=0 **~-~-> Disable ADR first
1133 +* **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  
1137 +{{info}}
1138 +**Downlink Command: 0x22000500**
1139 +{{/info}}
1366 1366  
1367 -(% style="color:blue" %)**Downlink Command: 0x22000500**
1141 +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 -
1143 +* AT+ADR=0  [[Reference>>||anchor="H7.1AdaptiveDataRate"]]
1144 +* AT+DR=5  [[Reference>>||anchor="H7.4DataRate"]]
1145 +* AT+TXP=0  [[Reference>>||anchor="H7.14TransmitPower"]]
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