<
From version < 7.4 >
edited by Xiaoling
on 2022/05/11 09:32
To version < 60.5 >
edited by Xiaoling
on 2023/03/27 14:01
>
Change comment: There is no comment for this version

Summary

Details

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