<
From version < 7.4 >
edited by Xiaoling
on 2022/05/11 09:32
To version < 50.16 >
edited by Xiaoling
on 2022/07/13 13:47
>
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 10  * **Common Commands:** They should be available for each sensor, such as: change uplink interval, reset device.
11 11  * **Sensor Related Commands:** Only for special sensor, such as control relay, poll RS485 device.
12 12  
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 14  
18 +)))
15 15  
16 16  = 2. How to use AT Commands or Downlink command =
17 17  
22 +
18 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 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]]
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]]
27 +** See use note for more serves [[Servers Note>>doc:Main.WebHome]](IoT LoRaWAN Server)
23 23  
29 +
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 +
42 42  = 4. System Management Commands =
43 43  
108 +
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,27 +62,34 @@
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  
137 +(((
69 69  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 71  * **Example 1**: Downlink Payload:** 0100001E** ~/~/ Set Transmit Interval (TDC) = 30 seconds
72 72  * **Example 2**: Downlink Payload:** 0100003C** ~/~/ Set Transmit Interval (TDC) = 60 seconds
73 73  
144 +
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  
152 +(% style="color:blue" %)**AT Command: ATZ**
153 +
82 82  (% border="1" style="background-color:#ffffcc; color:green; width:727.222px" %)
83 -|=(% colspan="3" %) ATZ: Trig a reset of the MCU
155 +|=(% colspan="3" %)ATZ: Trig a reset of the MCU
84 84  |**Command Example**|**Function**|**Response**
85 -~)~)~)
86 86  |ATZ|Reset MCU|(((
87 87  Device reset and show booting info
88 88  
... ... @@ -97,66 +97,102 @@
97 97  <followed by the Tx and Rx information>
98 98  )))
99 99  
100 -Downlink Command: 0x04
101 101  
172 +(% style="color:blue" %)**Downlink Command: 0x04**
173 +
174 +(((
102 102  Format: Command Code (0x04) followed by FF.
176 +)))
103 103  
104 -If the downlink payload=04FF, the end node will reboot.
178 +(((
179 +If the downlink payload=**04FF**, the end node will reboot.
105 105  
181 +
182 +)))
183 +
106 106  == 4.3 Reset to factory Default ==
107 107  
186 +
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
190 +(% style="color:blue" %)**AT Command: AT+FDR**
115 115  
116 -{{{LSN50 Device/LoRa ST Module
192 +(% border="1" style="background-color:#ffffcc; color:green; width:831.222px" %)
193 +|=(% colspan="3" style="width: 828px;" %)Reset to factory default
194 +|(% style="width:181px" %)**Command Example**|(% style="width:181px" %)**Function**|(% style="width:465px" %)**Response**
195 +|(% style="width:181px" %)AT+FDR|(% style="width:181px" %)Reset to factory default|(% style="width:465px" %)(((
196 +Device reset to factory default parameters and show booting info
197 +
198 +LSN50 Device/LoRa ST Module
199 +
117 117  Image Version: XX
201 +
118 118  Frequency Band: XX
203 +
119 119  DevEui= XX XX XX XX XX XX XX XX
205 +
120 120  Please set the parameters or reset Device to apply change
121 -}}}
207 +)))
122 122  
123 123  
124 -Downlink Command: 0x04
210 +(% style="color:blue" %)**Downlink Command: 0x04**
125 125  
212 +(((
126 126  Format: Command Code (0x04) followed by FE.
214 +)))
127 127  
128 -If the downlink payload=04FE, Reset Parameters to Factory Default, Keys Reserve.
216 +(((
217 +If the downlink payload=**04FE**, Reset Parameters to Factory Default, Keys Reserve.
218 +)))
129 129  
130 130  
131 131  == 4.4 Show Firmware Version ==
132 132  
223 +
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|
227 +(% style="color:blue" %)**AT Command: AT+VER**
140 140  
141 -{{{1.3 EU868
229 +(% border="1" style="background-color:#ffffcc; color:green; width:586px" %)
230 +|=(% colspan="3" style="width: 583px;" %)AT+VER: Image Version and Frequency Band
231 +|(% style="width:170px" %)**Command Example**|(% style="width:300px" %)**Function**|(% style="width:113px" %)**Response**
232 +|(% style="width:170px" %)AT+VER=?|(% style="width:300px" %)Show Image version and Frequency Band|(% style="width:113px" %)(((
233 +1.3 EU868
234 +
142 142  OK
143 -}}}
236 +)))
144 144  
145 145  
146 -Downlink Command: 0x26 (Valid in 006 stack)
239 +(% style="color:blue" %)**Downlink Command: 0x26 (Valid in 006 stack)**
147 147  
241 +(((
148 148  Downlink Format: 0x26
243 +)))
149 149  
245 +(((
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
247 +)))
151 151  
152 -xx: Software Type:
249 +(((
250 +
153 153  
252 +
253 +**xx: Software Type:**
254 +)))
255 +
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:
260 +(((
261 +
159 159  
263 +
264 +**yy: Frequency Band:**
265 +)))
266 +
160 160  * 0x01: EU868
161 161  * 0x02: US915
162 162  * 0x03: IN865
... ... @@ -168,147 +168,204 @@
168 168  * 0x09: AS923-2
169 169  * 0xa0: AS923-3
170 170  
171 -zz: Subband
278 +(((
279 +
172 172  
281 +
282 +**zz: Subband**
283 +)))
284 +
173 173  firmware version: v1.1.0 ~-~-> 110
174 174  
175 175  
176 176  == 4.5 Show System Configure ==
177 177  
290 +
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|
294 +(% style="color:blue" %)**AT Command: AT+CFG**
185 185  
186 -{{{AT+DEUI = XX XX XX XX XX XX XX XX
296 +(% border="1" style="background-color:#ffffcc; color:green; width:599.222px" %)
297 +|=(% colspan="3" style="width: 596px;" %)AT+CFG: Print all configurations
298 +|(% style="width:160px" %)**Command Example**|(% style="width:154px" %)**Function**|(% style="width:280px" %)**Response**
299 +|(% style="width:160px" %)AT+CFG|(% style="width:154px" %)Show all configures|(% style="width:280px" %)(((
300 +AT+DEUI = XX XX XX XX XX XX XX XX
301 +
187 187  AT+DADDR=XXXXXXXX
303 +
188 188  ……….
305 +
189 189  AT+RX2WTO=X
307 +
190 190  AT+CHS=868100000
309 +
191 191  OK
192 -}}}
311 +)))
193 193  
194 194  
314 +
195 195  = 5. Keys, IDs and EUIs management =
196 196  
317 +
197 197  == 5.1 Application EUI ==
198 198  
320 +
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(((
324 +(% style="color:blue" %)**AT Command: AT+APPEUI**
325 +
326 +(% border="1" style="background-color:#ffffcc; color:green; width:686.222px" %)
327 +|=(% colspan="3" style="width: 683px;" %)AT+APPEUI
328 +|(% style="width:305px" %)**Command Example**|(% style="width:186px" %)**Function**|(% style="width:191px" %)**Response**
329 +|(% 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
332 +|(% 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  
334 +
335 +
210 210  == 5.2 Application Key ==
211 211  
338 +
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(((
342 +(% style="color:blue" %)**AT Command: AT+APPKEY**
343 +
344 +(% border="1" style="background-color:#ffffcc; color:green; width:976.222px" %)
345 +|=(% colspan="3" style="width: 973px;" %)AT+APPKEY
346 +|(% style="width:441px" %)**Command Example**|(% style="width:180px" %)**Function**|(% style="width:350px" %)**Response**
347 +|(% 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
350 +|(% 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  
352 +
353 +
223 223  == 5.3 Application Session Key ==
224 224  
356 +
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(((
360 +(% style="color:blue" %)**AT Command: AT+APPSKEY**
361 +
362 +(% border="1" style="background-color:#ffffcc; color:green; width:1040.22px" %)
363 +|=(% colspan="3" style="width: 1037px;" %)AT+APPSKEY
364 +|(% style="width:451px" %)**Command Example**|(% style="width:231px" %)**Function**|(% style="width:354px" %)**Response**
365 +|(% 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)(((
368 +|(% 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  
372 +
373 +
238 238  == 5.4 Device Address ==
239 239  
376 +
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)(((
380 +(% style="color:blue" %)**AT Command: AT+DADDR**
381 +
382 +(% border="1" style="background-color:#ffffcc; color:green; width:795.222px" %)
383 +|=(% colspan="3" style="width: 792px;" %)AT+DADDR
384 +|(% style="width:192px" %)**Command Example**|(% style="width:241px" %)**Function**|(% style="width:359px" %)**Response**
385 +|(% 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
390 +|(% style="width:192px" %)AT+DADDR=A8 40 41 FF|(% style="width:241px" %)Set the Application Session Key.|(% style="width:359px" %)OK
252 252  
392 +
393 +
253 253  == 5.5 Device EUI ==
254 254  
396 +
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(((
400 +(% style="color:blue" %)**AT Command: AT+DEUI**
401 +
402 +(% border="1" style="background-color:#ffffcc; color:green; width:1035.22px" %)
403 +|=(% colspan="3" style="width: 1032px;" %)AT+DEUI
404 +|(% style="width:250px" %)**Command Example**|(% style="width:147px" %)**Function**|(% style="width:634px" %)**Response**
405 +|(% 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)(((
408 +|(% 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  
412 +
413 +
268 268  == 5.6 Network ID ==
269 269  
416 +
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(((
420 +(% style="color:blue" %)**AT Command: AT+NWKID**
421 +
422 +(% border="1" style="background-color:#ffffcc; color:green; width:448.222px" %)
423 +|=(% colspan="3" style="width: 445px;" %)AT+NWKID
424 +|(% style="width:191px" %)**Command Example**|(% style="width:153px" %)**Function**|(% style="width:101px" %)**Response**
425 +|(% 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
428 +|(% style="width:191px" %)AT+NWKID=A8 40 41 FF|(% style="width:153px" %)Set the Network ID.|(% style="width:101px" %)OK
280 280  
430 +
431 +
281 281  == 5.7 Network Session Key ==
282 282  
434 +
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(((
438 +(% style="color:blue" %)**AT Command: AT+NWKSKEY**
439 +
440 +(% border="1" style="background-color:#ffffcc; color:green; width:1017.22px" %)
441 +|=(% colspan="3" style="width: 1014px;" %)AT+NWKSKEY
442 +|(% style="width:455px" %)**Command Example**|(% style="width:215px" %)**Function**|(% style="width:343px" %)**Response**
443 +|(% 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
446 +|(% 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  
448 +
449 +
294 294  = 6. Joining and sending date on LoRaWAN network =
295 295  
452 +
296 296  == 6.1 Confirm Mode ==
297 297  
455 +
456 +=== 6.1.1  AT+CFM command before DR-LWS007 software stack ===
457 +
458 +
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(((
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:155px" %)**Command Example**|(% style="width:205px" %)**Function**|(% style="width:346px" %)**Response**
467 +|(% 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
470 +|(% style="width:155px" %)AT+CFM=1|(% style="width:205px" %)Set the confirmation mode|(% style="width:346px" %)OK
471 +|(% 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
311 311  
474 +(% style="color:blue" %)**Downlink Command: 0x05**
475 +
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.
... ... @@ -316,100 +316,187 @@
316 316  * Example 1: Downlink Payload: 0501 ~/~/ Set AT+CFM=1
317 317  * Example 2: Downlink Payload: 0500 ~/~/ Set AT+CFM=0
318 318  
483 +
484 +
485 +
486 +=== 6.1.2  AT+CFM command since DR-LWS007 software stack ===
487 +
488 +
489 +(% style="color:blue" %)**AT Command: AT+CFM**
490 +
491 +(% border="1" style="background-color:#ffffcc; color:green; width:710.222px" %)
492 +|=(% colspan="3" style="width: 707px;" %)AT+CFM
493 +|(% style="width:160px" %)**Command Example**|(% style="width:198px" %)**Function**|(% style="width:349px" %)**Response**
494 +|(% style="width:160px" %)(((
495 +AT+CFM=1,0,0
496 +
497 +value1
498 +)))|(% style="width:198px" %)confirmed uplink|(% style="width:349px" %)(((
499 +1
500 +
501 +OK
502 +)))
503 +|(% style="width:160px" %)(((
504 +AT+CFM=0,?,0
505 +
506 +value2
507 +)))|(% style="width:198px" %)set max retry , range: 0 ~~ 7|(% style="width:349px" %)(((
508 +0~~7
509 +
510 +OK
511 +)))
512 +|(% style="width:160px" %)(((
513 +AT+CFM=0,0,1
514 +
515 +value3
516 +)))|(% style="width:198px" %)uplink fcnt increase by 1 for each retry|(% style="width:349px" %)(((
517 +1
518 +
519 +OK
520 +)))
521 +
522 +
523 +(% style="color:blue" %)**Downlink Command: 0x05**
524 +
525 +Format: Command Code (0x05) followed by 2 bytes mode value.
526 +
527 +If the downlink payload=05010101, it means set end node to use confirm mode, while type code is 05.
528 +
529 +* Example 1: Downlink Payload: 05010101 ~/~/ Set AT+CFM=1,1,1
530 +* Example 2: Downlink Payload: 05000700 ~/~/ Set AT+CFM=0,7,0
531 +
532 +
533 +
534 +
319 319  == 6.2 Confirm Status ==
320 320  
537 +
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(((
541 +(% style="color:blue" %)**AT Command: AT+CFS**
542 +
543 +(% border="1" style="background-color:#ffffcc; color:green; width:534.222px" %)
544 +|=(% colspan="3" style="width: 531px;" %)AT+CFS
545 +|(% style="width:156px" %)**Command Example**|(% style="width:193px" %)**Function**|(% style="width:178px" %)**Response**
546 +|(% style="width:156px" %)AT+CFS=?|(% style="width:193px" %)Get confirmation status|(% style="width:178px" %)0(((
328 328  OK
329 329  )))
330 330  
550 +
551 +
331 331  == 6.3 Join LoRa® Network ==
332 332  
554 +
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(((
558 +(% style="color:blue" %)**AT Command: AT+JOIN**
559 +
560 +(% border="1" style="background-color:#ffffcc; color:green; width:647.222px" %)
561 +|=(% colspan="3" style="width: 644px;" %)AT+JOIN
562 +|(% style="width:163px" %)**Command Example**|(% style="width:147px" %)**Function**|(% style="width:334px" %)**Response**
563 +|(% 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
343 343  )))
344 344  
569 +
570 +
345 345  == 6.4 LoRa® Network Join Mode ==
346 346  
573 +
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(((
577 +(% style="color:blue" %)**AT Command: AT+NJM**
578 +
579 +(% border="1" style="background-color:#ffffcc; color:green; width:753.222px" %)
580 +|=(% colspan="3" style="width: 750px;" %)AT+NJM
581 +|(% style="width:162px" %)**Command Example**|(% style="width:227px" %)**Function**|(% style="width:361px" %)**Response**
582 +|(% 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
585 +|(% style="width:162px" %)AT+NJM=0|(% style="width:227px" %)Set the Network Join Mode|(% style="width:361px" %)OK
586 +|(% 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
360 360  
589 +(% style="color:blue" %)**Downlink Command: 0x20**
590 +
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
595 +* **Example 1: **Downlink Payload: **2000** ~/~/ Set AT+NJM=0
596 +* **Example 2:** Downlink Payload: **2001** ~/~/ Set AT+NJM=1
367 367  
598 +
599 +
600 +
368 368  == 6.5 LoRa® Network Join Status ==
369 369  
603 +
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(((
607 +(% style="color:blue" %)**AT Command: AT+NJS**
608 +
609 +(% border="1" style="background-color:#ffffcc; color:green; width:498.222px" %)
610 +|=(% colspan="3" style="width: 495px;" %)AT+NJS
611 +|(% style="width:169px" %)**Command Example**|(% style="width:164px" %)**Function**|(% style="width:161px" %)**Response**
612 +|(% style="width:169px" %)AT+NJS=?|(% style="width:164px" %)Get the join status.|(% style="width:161px" %)0(((
377 377  OK
378 378  )))
379 379  
616 +
617 +
380 380  == 6.6 Print Last Received Data in Raw Format ==
381 381  
620 +
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:(((
624 +(% style="color:blue" %)**AT Command: AT+RECV**
625 +
626 +(% border="1" style="background-color:#ffffcc; color:green; width:587.222px" %)
627 +|=(% colspan="3" style="width: 584px;" %)AT+RECV
628 +|(% style="width:161px" %)**Command Example**|(% style="width:272px" %)**Function**|(% style="width:150px" %)**Response**
629 +|(% 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  
633 +
634 +
392 392  == 6.7 Print Last Received Data in Binary Format ==
393 393  
637 +
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(((
641 +(% style="color:blue" %)**AT Command: AT+RECVB**
642 +
643 +(% border="1" style="background-color:#ffffcc; color:green; width:793.222px" %)
644 +|=(% colspan="3" style="width: 790px;" %)AT+RECVB
645 +|(% style="width:173px" %)**Command Example**|(% style="width:497px" %)**Function**|(% style="width:120px" %)**Response**
646 +|(% 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  
650 +
651 +
404 404  == 6.8 Send Text Data ==
405 405  
654 +
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(((
658 +(% style="color:blue" %)**AT Command: AT+SEND**
659 +
660 +(% border="1" style="background-color:#ffffcc; color:green; width:991.222px" %)
661 +|=(% colspan="3" style="width: 988px;" %)AT+SEND
662 +|(% style="width:201px" %)**Command Example**|(% style="width:340px" %)**Function**|(% style="width:446px" %)**Response**
663 +|(% style="width:201px" %)AT+SEND=12:hello world|(% style="width:340px" %)Send text data along with the application port.|(% style="width:446px" %)OK(((
413 413  While Error in format, return
414 414  
415 415  AT_BUSY_ERROR/AT_BUSY_ERROR/AT_NO_NETWORK_JOINED
... ... @@ -417,60 +417,74 @@
417 417  
418 418  )))
419 419  
671 +
672 +
420 420  == 6.9 Send Hexadecimal Data ==
421 421  
675 +
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(((
679 +(% style="color:blue" %)**AT Command: AT+SENDB**
680 +
681 +(% border="1" style="background-color:#ffffcc; color:green; width:1120.22px" %)
682 +|=(% colspan="3" style="width: 1117px;" %)AT+SENDB
683 +|(% style="width:257px" %)**Command Example**|(% style="width:406px" %)**Function**|(% style="width:453px" %)**Response**
684 +|(% style="width:257px" %)AT+SENDB=12:abcdef0123456789|(% style="width:406px" %)Send hexadecimal data along with the application port.|(% style="width:453px" %)OK
685 +|(% style="width:257px" %)AT+SENDB=abcdef0123456789|(% style="width:406px" %)Send hexadecimal data along with the application port.|(% style="width:453px" %)While Error in format, return(((
430 430  AT_PARAM_ERROR AT_BUSY_ERROR/AT_NO_NETWORK_JOINED
431 431  
432 432  
433 433  )))
434 434  
691 +
692 +
435 435  = 7. LoRaWAN network management =
436 436  
695 +
437 437  == 7.1 Adaptive Data Rate ==
438 438  
698 +
439 439  Feature: Get or Set the Adaptive Data Rate setting. (0: off, 1: on).
440 440  
441 441  
442 -AT Command: AT+ADR
702 +(% 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(((
704 +(% border="1" style="background-color:#ffffcc; color:green; width:683.222px" %)
705 +|=(% colspan="3" style="width: 680px;" %)AT+ADR
706 +|(% style="width:162px" %)**Command Example**|(% style="width:266px" %)**Function**|(% style="width:250px" %)**Response**
707 +|(% 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(((
710 +|(% style="width:162px" %)AT+ADR=0|(% style="width:266px" %)Set the Adaptive Data Rate setting.|(% style="width:250px" %)OK
711 +|(% 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
715 +(% style="color:blue" %)**Downlink Command: 0x22**
455 455  
456 456  
718 +
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.
721 +* **Example 1**: Downlink Payload: **2201** ~/~/ Set AT+ADR=1.
722 +* **Example 2**: Downlink Payload: **2200FFFF** ~/~/ Set AT+ADR=0.
461 461  
462 462  == 7.2 LoRa® Class ==
463 463  
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(((
729 +(% style="color:blue" %)**AT Command:AT+CLASS**
730 +
731 +
732 +(% border="1" style="background-color:#ffffcc; color:green; width:507.222px" %)
733 +|=(% colspan="3" style="width: 504px;" %)AT+CLASS
734 +|(% style="width:163px" %)**Command Example**|(% style="width:166px" %)**Function**|(% style="width:175px" %)**Response**
735 +|(% 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(((
738 +|(% style="width:163px" %)AT+CLASS=C|(% style="width:166px" %)Set the Device Class.|(% style="width:175px" %)OK(((
474 474  
475 475  )))
476 476  
... ... @@ -478,14 +478,17 @@
478 478  
479 479  Feature: Get or Set the ETSI Duty Cycle setting - 0=disable, 1=enable - Only for testing.
480 480  
481 -AT Command:AT+DCS
482 482  
483 -|=(% colspan="3" %)AT+DCS
484 -|**Command Example**|**Function**|**Response**
485 -|AT+DCS=?|Get the ETSI Duty Cycle setting.|1(((
747 +(% style="color:blue" %)**AT Command:AT+DCS**
748 +
749 +
750 +(% border="1" style="background-color:#ffffcc; color:green; width:515.222px" %)
751 +|=(% colspan="3" style="width: 512px;" %)AT+DCS
752 +|(% style="width:165px" %)**Command Example**|(% style="width:239px" %)**Function**|(% style="width:107px" %)**Response**
753 +|(% 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(((
756 +|(% style="width:165px" %)AT+DCS=1|(% style="width:239px" %)Set the ETSI Duty Cycle setting.|(% style="width:107px" %)OK(((
489 489  
490 490  )))
491 491  
... ... @@ -493,37 +493,44 @@
493 493  
494 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
497 497  
498 -|=(% colspan="3" %)AT+DR
499 -|**Command Example**|**Function**|**Response**
500 -|AT+DR=?|Get the Data Rate.|5(((
765 +(% style="color:blue" %)**AT Command: AT+DR**
766 +
767 +
768 +(% border="1" style="background-color:#ffffcc; color:green; width:466.222px" %)
769 +|=(% colspan="3" style="width: 463px;" %)AT+DR
770 +|(% style="width:156px" %)**Command Example**|(% style="width:167px" %)**Function**|(% style="width:140px" %)**Response**
771 +|(% 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(((
774 +|(% 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
778 +(% style="color:blue" %)**Downlink Command: 0x2200aaFF**
508 508  
509 509  
781 +
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.
784 +* **Example 1**: Downlink Payload: **220001FF** ~/~/ Set AT+DR=1.
785 +* **Example 2**: Downlink Payload: **220000FF** ~/~/ Set AT+DR=0.
514 514  
515 515  == 7.5 Frame Counter Downlink ==
516 516  
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(((
792 +(% style="color:blue" %)**AT Command:AT+FCD**
793 +
794 +
795 +(% border="1" style="background-color:#ffffcc; color:green; width:693.222px" %)
796 +|=(% colspan="3" style="width: 690px;" %)AT+FCD
797 +|(% style="width:162px" %)**Command Example**|(% style="width:258px" %)**Function**|(% style="width:269px" %)**Response**
798 +|(% 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)(((
801 +|(% 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 528  
529 529  
... ... @@ -533,14 +533,17 @@
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(((
812 +(% style="color:blue" %)**AT Command:AT+FCU**
813 +
814 +
815 +(% border="1" style="background-color:#ffffcc; color:green; width:534.222px" %)
816 +|=(% colspan="3" style="width: 531px;" %)AT+FCU
817 +|(% style="width:177px" %)**Command Example**|(% style="width:239px" %)**Function**|(% style="width:113px" %)**Response**
818 +|(% 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(((
821 +|(% style="width:177px" %)AT+FCU=10|(% style="width:239px" %)Set the Frame Counter Uplink.|(% style="width:113px" %)OK(((
544 544  
545 545  )))
546 546  
... ... @@ -548,14 +548,17 @@
548 548  
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(((
830 +(% style="color:blue" %)**AT Command:AT+JN1DL**
831 +
832 +
833 +(% border="1" style="background-color:#ffffcc; color:green; width:537.222px" %)
834 +|=(% colspan="3" style="width: 534px;" %)AT+JN1DL
835 +|(% style="width:164px" %)**Command Example**|(% style="width:229px" %)**Function**|(% style="width:140px" %)**Response**
836 +|(% 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(((
839 +|(% style="width:164px" %)AT+JN1DL=10000|(% style="width:229px" %)Set the Join Accept Delay.|(% style="width:140px" %)OK(((
559 559  
560 560  )))
561 561  
... ... @@ -563,61 +563,80 @@
563 563  
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(((
848 +(% style="color:blue" %)**AT Command:AT+JN2DL**
849 +
850 +
851 +(% border="1" style="background-color:#ffffcc; color:green; width:538.222px" %)
852 +|=(% colspan="3" style="width: 535px;" %)AT+JN2DL
853 +|(% style="width:160px" %)**Command Example**|(% style="width:228px" %)**Function**|(% style="width:146px" %)**Response**
854 +|(% 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(((
857 +|(% style="width:160px" %)AT+JN2DL=20000|(% style="width:228px" %)Set the Join Accept Delay.|(% style="width:146px" %)OK(((
574 574  
575 575  )))
576 576  
577 577  == 7.9 Public Network Mode ==
578 578  
579 -Feature: Get or Set the public network mode. (0: off, 1: on)
863 +Feature: Get or Set the public network mode. (0: off, 1: on). A Public LoRaWAN network use 0x34 as syncword. Default Settings; PNM=1
580 580  
581 -AT Command:AT+PNM
865 +Notice: If user build their own LoRaWAN server but still use syncword=0x34, this is still considered a public LoRaWAN network
582 582  
583 -|=(% colspan="3" %)AT+PNM
584 -|**Command Example**|**Function**|**Response**
585 -|AT+PNM=?|Get the public network mode.|1(((
867 +
868 +(% style="color:blue" %)**AT Command:AT+PNM**
869 +
870 +
871 +(% border="1" style="background-color:#ffffcc; color:green; width:667.222px" %)
872 +|=(% colspan="3" style="width: 664px;" %)AT+PNM
873 +|(% style="width:166px" %)**Command Example**|(% style="width:225px" %)**Function**|(% style="width:272px" %)**Response**
874 +|(% 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)(((
877 +|(% style="width:166px" %)AT+PNM=1|(% style="width:225px" %)(((
878 +Set the public network mode.
879 +
880 +Set syncword=0x34
881 +)))|(% style="width:272px" %)(System will write new value to PNM)(((
589 589  OK
590 590  
591 591  
592 592  )))
886 +|(% 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  
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(((
893 +(% style="color:blue" %)**AT Command:AT+RX1DL**
894 +
895 +
896 +(% border="1" style="background-color:#ffffcc; color:green; width:408.222px" %)
897 +|=(% colspan="3" style="width: 405px;" %)AT+RX1DL
898 +|(% style="width:155px" %)**Command Example**|(% style="width:128px" %)**Function**|(% style="width:122px" %)**Response**
899 +|(% 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(((
902 +|(% 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 ==
906 +== 7.11 Receive Delay2 ==
610 610  
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(((
911 +(% style="color:blue" %)**AT Command:AT+RX2DL**
912 +
913 +
914 +(% border="1" style="background-color:#ffffcc; color:green; width:481.222px" %)
915 +|=(% colspan="3" style="width: 478px;" %)AT+RX2DL
916 +|(% style="width:175px" %)**Command Example**|(% style="width:152px" %)**Function**|(% style="width:150px" %)**Response**
917 +|(% 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(((
920 +|(% style="width:175px" %)AT+RX2DL=2500|(% style="width:152px" %)Set the delay.|(% style="width:150px" %)OK(((
621 621  
622 622  )))
623 623  
... ... @@ -625,14 +625,17 @@
625 625  
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(((
929 +(% style="color:blue" %)**AT Command:AT+RX2DR**
930 +
931 +
932 +(% border="1" style="background-color:#ffffcc; color:green; width:525.222px" %)
933 +|=(% colspan="3" style="width: 522px;" %)AT+RX2DR
934 +|(% style="width:160px" %)**Command Example**|(% style="width:232px" %)**Function**|(% style="width:130px" %)**Response**
935 +|(% 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(((
938 +|(% 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  
... ... @@ -640,14 +640,17 @@
640 640  
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(((
947 +(% style="color:blue" %)**AT Command:AT+RX2FQ**
948 +
949 +
950 +(% border="1" style="background-color:#ffffcc; color:green; width:587.222px" %)
951 +|=(% colspan="3" style="width: 584px;" %)AT+RX2FQ
952 +|(% style="width:183px" %)**Command Example**|(% style="width:240px" %)**Function**|(% style="width:160px" %)**Response**
953 +|(% 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(((
956 +|(% style="width:183px" %)AT+RX2FQ=434665000|(% style="width:240px" %)Set the Rx2 window frequency.|(% style="width:160px" %)OK(((
651 651  
652 652  )))
653 653  
... ... @@ -655,14 +655,17 @@
655 655  
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
659 659  
660 -|=(% colspan="3" %)AT+TXP
661 -|**Command Example**|**Function**|**Response**
662 -|AT+TXP=?|Get the Transmit Power.|0(((
965 +(% style="color:blue" %)**AT Command:AT+TXP**
966 +
967 +
968 +(% border="1" style="background-color:#ffffcc; color:green; width:465.222px" %)
969 +|=(% colspan="3" style="width: 462px;" %)AT+TXP
970 +|(% style="width:161px" %)**Command Example**|(% style="width:189px" %)**Function**|(% style="width:112px" %)**Response**
971 +|(% 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(((
974 +|(% style="width:161px" %)AT+TXP=1|(% style="width:189px" %)Set the Transmit Power.|(% style="width:112px" %)OK(((
666 666  
667 667  )))
668 668  
... ... @@ -670,18 +670,21 @@
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.
982 +* **Example 1**: Downlink Payload: **22000102** ~/~/ Set AT+TXP=2.
983 +* **Example 2**: Downlink Payload: **220000FF** ~/~/ Set AT+TXP=0.
675 675  
676 676  == 7.15 RSSI of the Last Received Packet ==
677 677  
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(((
990 +(% style="color:blue" %)**AT Command:AT+RSSI**
991 +
992 +
993 +(% border="1" style="background-color:#ffffcc; color:green; width:557.222px" %)
994 +|=(% colspan="3" style="width: 554px;" %)AT+RSSI
995 +|(% style="width:164px" %)**Command Example**|(% style="width:289px" %)**Function**|(% style="width:100px" %)**Response**
996 +|(% 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  
... ... @@ -689,11 +689,14 @@
689 689  
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(((
1005 +(% style="color:blue" %)**AT Command:AT+SNR**
1006 +
1007 +
1008 +(% border="1" style="background-color:#ffffcc; color:green; width:571.222px" %)
1009 +|=(% colspan="3" style="width: 568px;" %)AT+SNR
1010 +|(% style="width:164px" %)**Command Example**|(% style="width:290px" %)**Function**|(% style="width:113px" %)**Response**
1011 +|(% 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  
... ... @@ -701,114 +701,141 @@
701 701  
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(((
1020 +(% style="color:blue" %)**AT Command: AT+PORT**
1021 +
1022 +
1023 +(% border="1" style="background-color:#ffffcc; color:green; width:500.222px" %)
1024 +|=(% colspan="3" style="width: 497px;" %)AT+PORT
1025 +|(% style="width:157px" %)**Command Example**|(% style="width:204px" %)**Function**|(% style="width:135px" %)**Response**
1026 +|(% 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
1029 +|(% style="width:157px" %)AT+PORT=21|(% style="width:204px" %)Set the application port|(% style="width:135px" %)OK
712 712  
713 -Downlink Command: 0x23
1031 +(% style="color:blue" %)**Downlink Command: 0x23**
714 714  
1033 +
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
1038 +* **Example 1**: Downlink Payload: **2301** ~/~/ set the application port to 1
1039 +* **Example 2**: Downlink Payload:** 2305** ~/~/ set the application port to 5
721 721  
722 722  == 7.18 Single Channel Mode ==
723 723  
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(((
1046 +(% style="color:blue" %)**AT Command: AT+CHS**
1047 +
1048 +
1049 +(% border="1" style="background-color:#ffffcc; color:green; width:603.222px" %)
1050 +|=(% colspan="3" style="width: 600px;" %)AT+CHS
1051 +|(% style="width:182px" %)**Command Example**|(% style="width:295px" %)**Function**|(% style="width:122px" %)**Response**
1052 +|(% 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
1055 +|(% 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  
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(((
1062 +(% style="color:blue" %)**AT Command: AT+CHE**
1063 +
1064 +
1065 +(% border="1" style="background-color:#ffffcc; color:green; width:710.222px" %)
1066 +|=(% colspan="3" style="width: 707px;" %)AT+CHE
1067 +|(% style="width:160px" %)**Command Example**|(% style="width:198px" %)**Function**|(% style="width:349px" %)**Response**
1068 +|(% 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
1073 +|(% style="width:160px" %)AT+CHE=1|(% style="width:198px" %)Set eight channels mode|(% style="width:349px" %)OK
749 749  
750 -Downlink Command: 0x24
1075 +(% style="color:blue" %)**Downlink Command: 0x24**
751 751  
1077 +
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
1082 +* **Example 1**: Downlink Payload: 2401 ~/~/ set channel mode to 1
1083 +* **Example 2**: Downlink Payload: 2405 ~/~/ set channel mode to 5
758 758  
759 759  == 7.20 Get or Set RXwindows1 timeout ==
760 760  
761 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
764 764  
765 -|=(% colspan="3" %)AT+ RX1WTO
766 -|**Command Example**|**Function**|**Response**
767 -|AT+RX1WTO=?|Get RXwindows1 timeout|14(((
1090 +(% style="color:blue" %)**AT Command: AT+RX1WTO**
1091 +
1092 +
1093 +(% border="1" style="background-color:#ffffcc; color:green; width:460.222px" %)
1094 +|=(% colspan="3" style="width: 457px;" %)AT+ RX1WTO
1095 +|(% style="width:163px" %)**Command Example**|(% style="width:201px" %)**Function**|(% style="width:93px" %)**Response**
1096 +|(% 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
1099 +|(% 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.
1101 +(((
1102 +**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.
1103 +)))
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]]
1105 +[[image:image-20220526162535-1.png]]
775 775  
1107 +(((
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  
1110 +
1111 +)))
1112 +
778 778  == 7.21 Get or Set RXwindows2 timeout ==
779 779  
780 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
783 783  
784 -|=(% colspan="3" %)AT+ RX2WTO
785 -|**Command Example**|**Function**|**Response**
786 -|AT+RX2WTO=?|Get RXwindows2 timeout|7(((
1118 +(% style="color:blue" %)**AT Command: AT+RX2WTO**
1119 +
1120 +
1121 +(% border="1" style="background-color:#ffffcc; color:green; width:497.222px" %)
1122 +|=(% colspan="3" style="width: 494px;" %)AT+ RX2WTO
1123 +|(% style="width:190px" %)**Command Example**|(% style="width:199px" %)**Function**|(% style="width:104px" %)**Response**
1124 +|(% 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
1127 +|(% 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  
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(((
1134 +(% style="color:blue" %)**AT Command: AT+DWELLT**
1135 +
1136 +
1137 +(% border="1" style="background-color:#ffffcc; color:green; width:497.222px" %)
1138 +|=(% colspan="3" style="width: 494px;" %)AT+DWELLT
1139 +|(% style="width:183px" %)**Command Example**|(% style="width:179px" %)**Function**|(% style="width:131px" %)**Response**
1140 +|(% 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
1143 +|(% style="width:183px" %)AT+DWELLT=0|(% style="width:179px" %)Set uplinkdwelltime|(% style="width:131px" %)OK
803 803  
804 -Downlink Command: 0x25
1145 +(% style="color:blue" %)**Downlink Command: 0x25**
805 805  
1147 +
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
1152 +* **Example 1**: Downlink Payload: **2501** ~/~/ set uplinkdwelltime to 1
1153 +* **Example 2**: Downlink Payload: **2500** ~/~/ set uplinkdwelltime to 0
812 812  
813 813  == 7.23 Set Packet Receiving Response Level ==
814 814  
... ... @@ -816,11 +816,11 @@
816 816  
817 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.
1161 +* **AT+RPL=0:** Device won't immediately reply any downlink commands from platform.
1162 +* **AT+RPL=1:** Device will immediately reply message to Unconfirmed Data Down. Payload is 0x00.
1163 +* **AT+RPL=2:** Device will immediately reply message to Confirmed Data Down. Payload is 0x00 and requied response header for this command.
1164 +* **AT+RPL=3:** Device will immediately reply message to MAC Command. Payload is 0x00 and requied response header for this command.
1165 +* **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.
824 824  
825 825  Case Analyes:
826 826  
... ... @@ -828,37 +828,162 @@
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
1173 +(% 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(((
1175 +
1176 +(% border="1" style="background-color:#ffffcc; color:green; width:536.222px" %)
1177 +|=(% colspan="3" style="width: 533px;" %)AT+RPL
1178 +|(% style="width:160px" %)**Command Example**|(% style="width:263px" %)**Function**|(% style="width:109px" %)**Response**
1179 +|(% 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
1182 +|(% style="width:160px" %)AT+RPL=0|(% style="width:263px" %)Set packet receiving response level|(% style="width:109px" %)OK
839 839  
840 -Downlink Command: 0x21
1184 +(% style="color:blue" %)**Downlink Command: 0x21**
841 841  
1186 +
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
1191 +* **Example 1**: Downlink Payload: **2101** ~/~/ set packet receiving response level to 1
1192 +* **Example 2**: Downlink Payload: **2102** ~/~/ set packet receiving response level to 2
848 848  
1194 +== 7.24 Controls NBTrans in unconfirmed uplink mode(LWS007 NBTrans:Set retransmission packets) ==
1195 +
1196 +
1197 +(% style="color:blue" %)**AT Command: AT+SETMAXNBTRANS **
1198 +
1199 +
1200 +(% border="1" style="background-color:#ffffcc; color:green; width:536.222px" %)
1201 +|=(% colspan="3" style="width: 533px;" %)AT+**SETMAXNBTRANS**
1202 +|(% style="width:160px" %)**Command Example**|(% style="width:263px" %)**Function**|(% style="width:109px" %)**Response**
1203 +|(% style="width:160px" %)**AT+SETMAXNBTRANS=1,0**|(% style="width:263px" %)Value1: set the maximum NBTrans.|(% style="width:109px" %)1(((
1204 +OK
1205 +)))
1206 +|(% style="width:160px" %)**AT+SETMAXNBTRANS=?,1**|(% style="width:263px" %)value2: 0: uplink fcnt doesn't change for each NBTrans; 1: uplink fcnt increase by 1 for each NBTrans.|(% style="width:109px" %)(((
1207 +1
1208 +
1209 +OK
1210 +)))
1211 +
1212 +(% style="color:blue" %)**Downlink Command: 0x33**
1213 +
1214 +
1215 +Format: Command Code (0x33) followed by 2 bytes mode value.
1216 +
1217 +If the downlink payload=330100, it means set end node to use confirm mode, while type code is 33.
1218 +
1219 +* Example 1: Downlink Payload: 330100 ~/~/ Set AT+SETMAXNBTRANS=1,0
1220 +* Example 2: Downlink Payload: 330201 ~/~/ Set AT+SETMAXNBTRANS=2,1
1221 +
1222 +== 7.25 Device offline rejoining (LWS007) ==
1223 +
1224 +
1225 +(% style="color:blue" %)**AT Command: AT+DDETECT**
1226 +
1227 +
1228 +(% border="1" style="background-color:#ffffcc; color:green; width:710.222px" %)
1229 +|=(% colspan="3" style="width: 707px;" %)AT+**DDETECT**
1230 +|(% style="width:160px" %)**Command Example**|(% style="width:198px" %)**Function**|(% style="width:349px" %)**Response**
1231 +|(% style="width:160px" %)(((
1232 +AT+DDETECT=1,1440,2880
1233 +
1234 +value1
1235 +)))|(% style="width:198px" %)Enable online detect|(% style="width:349px" %)(((
1236 +1
1237 +
1238 +OK
1239 +)))
1240 +|(% style="width:160px" %)(((
1241 +AT+DDETECT=1,?,2880
1242 +
1243 +value2
1244 +)))|(% style="width:198px" %)Online detection packet sending time|(% style="width:349px" %)(((
1245 +
1246 +
1247 +OK
1248 +)))
1249 +|(% style="width:160px" %)(((
1250 +AT+DDETECT=1,1440,?
1251 +
1252 +value3
1253 +)))|(% style="width:198px" %)Process rejoin|(% style="width:349px" %)(((
1254 +
1255 +
1256 +OK
1257 +)))
1258 +
1259 +(% style="color:blue" %)**Downlink Command: 0x33**
1260 +
1261 +
1262 +Format: Command Code (0x32) followed by 2 bytes mode value.
1263 +
1264 +If the downlink payload=320105A00B40, it means set end node to use confirm mode, while type code is 33.
1265 +
1266 +* Example 1: Downlink Payload: 320105A00B40 ~/~/ Set AT+DDETECT=1,1440,2880
1267 +
1268 +== 7.26 Request the server to send an ACK ==
1269 +
1270 +
1271 +(% style="color:blue" %)**AT Command: AT+PNACKMD**
1272 +
1273 +
1274 +(% border="1" style="background-color:#ffffcc; color:green; width:536.222px" %)
1275 +|=(% colspan="3" style="width: 533px;" %)**AT+PNACKMD**
1276 +|(% style="width:160px" %)**Command Example**|(% style="width:263px" %)**Function**|(% style="width:109px" %)**Response**
1277 +|(% 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(((
1278 +OK
1279 +)))
1280 +|(% style="width:160px" %)**AT+PNACKMD=0**|(% style="width:263px" %)off request the server to send an ACK|(% style="width:109px" %)(((
1281 +0
1282 +
1283 +OK
1284 +)))
1285 +
1286 +== 7.27 Adjust network rejoining interval ==
1287 +
1288 +
1289 +(% style="color:blue" %)**AT Command: AT+RJTDC**
1290 +
1291 +
1292 +(% border="1" style="background-color:#ffffcc; color:green; width:727.222px" %)
1293 +|=(% colspan="3" style="width: 724px;" %)AT+RJTDC
1294 +|(% style="width:165px" %)**Command Example**|(% style="width:227px" %)**Function**|(% style="width:329px" %)**Response**
1295 +|(% style="width:165px" %)AT+RJTDC=?|(% style="width:227px" %)Show the ReJoin data transmission interval in min|(% style="width:329px" %)30000(((
1296 +OK
1297 +
1298 +the interval is 30000ms = 30s
1299 +)))
1300 +|(% style="width:165px" %)AT+RJTDC=60000|(% style="width:227px" %)Set the ReJoin data transmission interval in min|(% style="width:329px" %)OK(((
1301 +Set the ReJoin data transmission interval to 60000ms = 60 seconds
1302 +)))
1303 +
1304 +(% style="color:blue" %)**Downlink Command: 0x26**
1305 +
1306 +
1307 +Format: Command Code (0x26) followed by 2 bytes mode value.
1308 +
1309 +If the downlink payload=26000A, it means set end node to use confirm mode, while type code is 26.
1310 +
1311 +* Example 1: Downlink Payload: 26000A ~/~/ Set AT+RJTDC=10
1312 +* Example 2: Downlink Payload: 260002 ~/~/ Set AT+RJTDC=2
1313 +
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
1318 +* **AT+ADR=0 **~-~-> Disable ADR first
1319 +* **AT+RX2DR=xxxx** ~-~-> Set xxxx to your wanted DataRate
855 855  
856 856  == 8.2 Use Downlink Command to set a fix uplink DR ==
857 857  
858 -Downlink Command: 0x22000500
859 859  
1324 +(% style="color:blue" %)**Downlink Command: 0x22000500**
1325 +
1326 +
860 860  Same as:
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]]
1329 +* AT+ADR=0  [[Reference>>||anchor="H7.1AdaptiveDataRate"]]
1330 +* AT+DR=5  [[Reference>>||anchor="H7.4DataRate"]]
1331 +* AT+TXP=0  [[Reference>>||anchor="H7.14TransmitPower"]]
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