<
From version < 4.1 >
edited by Xiaoling
on 2022/05/10 17:14
To version < 58.2 >
edited by Xiaoling
on 2022/12/02 13:45
>
Change comment: There is no comment for this version

Summary

Details

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