Last modified by Mengting Qiu on 2025/07/14 09:59

From version 6.1
edited by Xiaoling
on 2022/05/19 17:41
Change comment: Uploaded new attachment "1652953304999-717.png", version {1}
To version 57.34
edited by Xiaoling
on 2022/06/06 09:31
Change comment: There is no comment for this version

Summary

Details

Page properties
Title
... ... @@ -1,1 +1,1 @@
1 -RS485-BL – Waterproof RS485 to LoRaWAN Converter
1 +RS485-LN – RS485 to LoRaWAN Converter
Content
... ... @@ -1,77 +1,65 @@
1 1  (% style="text-align:center" %)
2 -[[image:1652947681187-144.png||height="385" width="385"]]
2 +[[image:1653266934636-343.png||height="385" width="385"]]
3 3  
4 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image001.jpg]]
5 5  
6 6  
6 +**RS485-LN – RS485 to LoRaWAN Converter User Manual**
7 7  
8 -**RS485-BL – Waterproof RS485 to LoRaWAN Converter User Manual**
9 9  
10 10  
10 +
11 11  **Table of Contents:**
12 12  
13 +{{toc/}}
13 13  
14 14  
15 15  
16 16  
18 +
19 +
20 +
17 17  = 1.Introduction =
18 18  
19 -== 1.1 What is RS485-BL RS485 to LoRaWAN Converter ==
23 +== 1.1 What is RS485-LN RS485 to LoRaWAN Converter ==
20 20  
21 21  (((
22 -
23 -)))
24 -
25 25  (((
26 -The Dragino RS485-BL is a **RS485 / UART to LoRaWAN Converter** for Internet of Things solutions. User can connect RS485 or UART sensor to RS485-BL converter, and configure RS485-BL to periodically read sensor data and upload via LoRaWAN network to IoT server.
27 +The Dragino RS485-LN is a (% style="color:blue" %)**RS485 to LoRaWAN Converter**(%%). It converts the RS485 signal into LoRaWAN wireless signal which simplify the IoT installation and reduce the installation/maintaining cost.
27 27  )))
28 28  
29 29  (((
30 -RS485-BL can interface to RS485 sensor, 3.3v/5v UART sensor or interrupt sensor. RS485-BL provides **a 3.3v output** and** a 5v output** to power external sensors. Both output voltages are controllable to minimize the total system power consumption.
31 +RS485-LN allows user to (% style="color:blue" %)**monitor / control RS485 devices**(%%) and reach extremely long ranges. It provides ultra-long range spread spectrum communication and high interference immunity whilst minimizing current consumption. It targets professional wireless sensor network applications such as irrigation systems, smart metering, smart cities, smartphone detection, building automation, and so on.
31 31  )))
32 32  
33 33  (((
34 -RS485-BL is IP67 **waterproof** and powered by **8500mAh Li-SOCI2 battery**, it is designed for long term use for several years.
35 +(% style="color:blue" %)**For data uplink**(%%), RS485-LN sends user-defined commands to RS485 devices and gets the return from the RS485 devices. RS485-LN will process these returns according to user-define rules to get the final payload and upload to LoRaWAN server.
35 35  )))
36 36  
37 37  (((
38 -RS485-BL runs standard **LoRaWAN 1.0.3 in Class A**. It can reach long transfer range and easy to integrate with LoRaWAN compatible gateway and IoT server.
39 -)))
39 +(% style="color:blue" %)**For data downlink**(%%), RS485-LN runs in LoRaWAN Class C. When there downlink commands from LoRaWAN server, RS485-LN will forward the commands from LoRaWAN server to RS485 devices.
40 40  
41 -(((
42 -For data uplink, RS485-BL sends user-defined commands to RS485 devices and gets the return from the RS485 devices. RS485-BL will process these returns data according to user-define rules to get the final payload and upload to LoRaWAN server.
41 +(% style="color:blue" %)**Demo Dashboard for RS485-LN**(%%) connect to two energy meters: [[https:~~/~~/app.datacake.de/dashboard/d/58844a26-378d-4c5a-aaf5-b5b5b153447a>>url:https://app.datacake.de/dashboard/d/58844a26-378d-4c5a-aaf5-b5b5b153447a]]
43 43  )))
44 -
45 -(((
46 -For data downlink, RS485-BL runs in LoRaWAN Class A. When there is downlink commands from LoRaWAN server, RS485-BL will forward the commands from LoRaWAN server to RS485 devices.
47 47  )))
48 48  
49 -(((
50 -Each RS485-BL pre-load with a set of unique keys for LoRaWAN registration, register these keys to LoRaWAN server and it will auto connect after power on.
51 -)))
45 +[[image:1653267211009-519.png||height="419" width="724"]]
52 52  
53 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image002.png]]
54 54  
55 55  == 1.2 Specifications ==
56 56  
50 +
57 57  **Hardware System:**
58 58  
59 59  * STM32L072CZT6 MCU
60 -* SX1276/78 Wireless Chip
54 +* SX1276/78 Wireless Chip 
61 61  * Power Consumption (exclude RS485 device):
62 -** Idle: 6uA@3.3v
56 +** Idle: 32mA@12v
57 +** 20dB Transmit: 65mA@12v
63 63  
64 -*
65 -** 20dB Transmit: 130mA@3.3v
66 -
67 67  **Interface for Model:**
68 68  
69 -* 1 x RS485 Interface
70 -* 1 x TTL Serial , 3.3v or 5v.
71 -* 1 x I2C Interface, 3.3v or 5v.
72 -* 1 x one wire interface
73 -* 1 x Interrupt Interface
74 -* 1 x Controllable 5V output, max
61 +* RS485
62 +* Power Input 7~~ 24V DC. 
75 75  
76 76  **LoRa Spec:**
77 77  
... ... @@ -80,27 +80,30 @@
80 80  ** Band 2 (LF): 410 ~~ 528 Mhz
81 81  * 168 dB maximum link budget.
82 82  * +20 dBm - 100 mW constant RF output vs.
71 +* +14 dBm high efficiency PA.
83 83  * Programmable bit rate up to 300 kbps.
84 84  * High sensitivity: down to -148 dBm.
85 85  * Bullet-proof front end: IIP3 = -12.5 dBm.
86 86  * Excellent blocking immunity.
76 +* Low RX current of 10.3 mA, 200 nA register retention.
87 87  * Fully integrated synthesizer with a resolution of 61 Hz.
88 -* LoRa modulation.
78 +* FSK, GFSK, MSK, GMSK, LoRaTM and OOK modulation.
89 89  * Built-in bit synchronizer for clock recovery.
90 90  * Preamble detection.
91 91  * 127 dB Dynamic Range RSSI.
92 -* Automatic RF Sense and CAD with ultra-fast AFC. ​​​
82 +* Automatic RF Sense and CAD with ultra-fast AFC.
83 +* Packet engine up to 256 bytes with CRC
93 93  
94 94  == 1.3 Features ==
95 95  
96 -* LoRaWAN Class A & Class C protocol (default Class A)
87 +* LoRaWAN Class A & Class C protocol (default Class C)
97 97  * Frequency Bands: CN470/EU433/KR920/US915/EU868/AS923/AU915/IN865/RU864
98 98  * AT Commands to change parameters
99 -* Remote configure parameters via LoRaWAN Downlink
90 +* Remote configure parameters via LoRa Downlink
100 100  * Firmware upgradable via program port
101 101  * Support multiply RS485 devices by flexible rules
102 102  * Support Modbus protocol
103 -* Support Interrupt uplink
94 +* Support Interrupt uplink (Since hardware version v1.2)
104 104  
105 105  == 1.4 Applications ==
106 106  
... ... @@ -111,263 +111,242 @@
111 111  * Smart Cities
112 112  * Smart Factory
113 113  
114 -== 1.5 Firmware Change log ==
105 +== 1.5 Firmware Change log ==
115 115  
116 -[[RS485-BL Image files – Download link and Change log>>url:http://www.dragino.com/downloads/index.php?dir=LoRa_End_Node/RS485-BL/Firmware/||style="background-color: rgb(255, 255, 255);"]]
107 +[[RS485-LN Image files – Download link and Change log>>url:http://www.dragino.com/downloads/index.php?dir=RS485-LN/]]
117 117  
109 +
118 118  == 1.6 Hardware Change log ==
119 119  
120 120  (((
121 -v1.4
122 -)))
123 -
124 124  (((
125 -~1. Change Power IC to TPS22916
126 -)))
114 +v1.2: Add External Interrupt Pin.
127 127  
116 +v1.0: Release
128 128  
129 -(((
130 -v1.3
118 +
131 131  )))
132 -
133 -(((
134 -~1. Change JP3 from KF350-8P to KF350-11P, Add one extra interface for I2C and one extra interface for one-wire
135 135  )))
136 136  
122 += 2. Power ON Device =
137 137  
138 138  (((
139 -v1.2
140 -)))
125 +The RS485-LN can be powered by 7 ~~ 24V DC power source. Connection as below
141 141  
127 +* Power Source VIN to RS485-LN VIN+
128 +* Power Source GND to RS485-LN VIN-
129 +
142 142  (((
143 -Release version ​​​​​
131 +Once there is power, the RS485-LN will be on.
144 144  )))
145 145  
146 -= 2. Pin mapping and Power ON Device =
134 +[[image:1653268091319-405.png]]
147 147  
148 -The RS485-BL is powered on by 8500mAh battery. To save battery life, RS485-BL is shipped with power off. User can put the jumper to power on RS485-BL.
136 +
137 +)))
149 149  
150 -[[image:1652953055962-143.png||height="387" width="728"]]
139 += 3. Operation Mode =
151 151  
152 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image003.png]]
141 +== 3.1 How it works? ==
153 153  
154 -The Left TXD and RXD are TTL interface for external sensor. TTL level is controlled by 3.3/5v Jumper.
143 +(((
144 +The RS485-LN is configured as LoRaWAN OTAA Class C mode by default. It has OTAA keys to join network. To connect a local LoRaWAN network, user just need to input the OTAA keys in the network server and power on the RS485-LN. It will auto join the network via OTAA.
155 155  
146 +
147 +)))
156 156  
149 +== 3.2 Example to join LoRaWAN network ==
157 157  
158 -3. Operation Mode
159 -3.1 How it works?
151 +Here shows an example for how to join the TTN V3 Network. Below is the network structure, we use [[LG308>>url:http://www.dragino.com/products/lora-lorawan-gateway/item/140-lg308.html]] as LoRaWAN gateway here. 
160 160  
161 -The RS485-BL is configured as LoRaWAN OTAA Class A mode by default. It has OTAA keys to join network. To connect a local LoRaWAN network, user just need to input the OTAA keys in the network server and power on the RS485-BL. It will auto join the network via OTAA.
153 +[[image:1653268155545-638.png||height="334" width="724"]]
162 162  
163 163  
164 -1.
165 -11. Example to join LoRaWAN network
156 +(((
157 +(((
158 +The RS485-LN in this example connected to two RS485 devices for demonstration, user can connect to other RS485 devices via the same method. The connection is as below:
159 +)))
166 166  
167 -Here shows an example for how to join the TTN V3 Network. Below is the network structure, we use [[LG308>>url:http://www.dragino.com/products/lora-lorawan-gateway/item/140-lg308.html]] as LoRaWAN gateway here.
161 +(((
162 +485A+ and 485B- of the sensor are connected to RS485A and RA485B of RS485-LN respectively.
163 +)))
168 168  
169 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image004.png]]
165 +[[image:1653268227651-549.png||height="592" width="720"]]
170 170  
167 +(((
168 +The LG308 is already set to connect to [[TTN V3 network >>path:https://www.thethingsnetwork.org/]]. So what we need to now is only configure the TTN V3:
169 +)))
171 171  
172 -The RS485-BL in this example connected to two RS485 devices for demonstration, user can connect to other RS485 devices via the same method.
171 +(((
172 +**Step 1**: Create a device in TTN V3 with the OTAA keys from RS485-LN.
173 +)))
173 173  
175 +(((
176 +Each RS485-LN is shipped with a sticker with unique device EUI:
177 +)))
178 +)))
174 174  
175 -The LG308 is already set to connect to [[TTN V3 network >>url:https://www.thethingsnetwork.org/]]. So what we need to now is only configure the TTN V3:
180 +[[image:1652953462722-299.png]]
176 176  
177 -**Step 1**: Create a device in TTN V3 with the OTAA keys from RS485-BL.
178 -
179 -Each RS485-BL is shipped with a sticker with unique device EUI:
180 -
181 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image005.png]]
182 -
183 -
184 -
185 -
182 +(((
183 +(((
186 186  User can enter this key in their LoRaWAN Server portal. Below is TTN V3 screen shot:
185 +)))
187 187  
187 +(((
188 188  Add APP EUI in the application.
189 +)))
190 +)))
189 189  
190 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image006.png]]
192 +[[image:image-20220519174512-1.png]]
191 191  
192 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image007.png]]
194 +[[image:image-20220519174512-2.png||height="323" width="720"]]
193 193  
194 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image008.png]]
196 +[[image:image-20220519174512-3.png||height="556" width="724"]]
195 195  
196 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image009.png]]
198 +[[image:image-20220519174512-4.png]]
197 197  
200 +You can also choose to create the device manually.
198 198  
202 +[[image:1652953542269-423.png||height="710" width="723"]]
199 199  
204 +Add APP KEY and DEV EUI
200 200  
206 +[[image:1652953553383-907.png||height="514" width="724"]]
201 201  
202 202  
209 +(((
210 +**Step 2**: Power on RS485-LN and it will auto join to the TTN V3 network. After join success, it will start to upload message to TTN V3 and user can see in the panel.
211 +)))
203 203  
213 +[[image:1652953568895-172.png||height="232" width="724"]]
204 204  
205 205  
216 +== 3.3 Configure Commands to read data ==
206 206  
218 +(((
219 +(((
220 +There are plenty of RS485 devices in the market and each device has different command to read the valid data. To support these devices in flexible, RS485-LN supports flexible command set. User can use [[AT Commands>>||anchor="H3.5ConfigureRS485-BLviaATorDownlink"]] or LoRaWAN Downlink Command to configure what commands RS485-LN should send for each sampling and how to handle the return from RS485 devices.
221 +)))
207 207  
223 +(((
224 +(% style="color:red" %)Note: below description and commands are for firmware version >v1.1, if you have firmware version v1.0. Please check the [[user manual v1.0>>url:http://www.dragino.com/downloads/index.php?dir=RS485-LN/&file=RS485-LN_UserManual_v1.0.1.pdf]] or upgrade the firmware to v1.1
208 208  
209 -
210 -
211 -
212 -
213 -
214 -You can also choose to create the device manually.
215 -
216 -|(((
217 217  
218 218  )))
228 +)))
219 219  
230 +=== 3.3.1 onfigure UART settings for RS485 or TTL communication ===
220 220  
232 +To use RS485-LN to read data from RS485 sensors, connect the RS485-LN A/B traces to the sensors. And user need to make sure RS485-LN use the match UART setting to access the sensors. The related commands for UART settings are:
221 221  
222 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image010.png]]
223 -
224 -Add APP KEY and DEV EUI
225 -
226 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image011.png]]
227 -
228 -
229 -**Step 2**: Power on RS485-BL and it will auto join to the TTN V3 network. After join success, it will start to upload message to TTN V3 and user can see in the panel.
230 -
231 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image012.png]]
232 -
233 -
234 -
235 -
236 -1.
237 -11. Configure Commands to read data
238 -
239 -There are plenty of RS485 and TTL level devices in the market and each device has different command to read the valid data. To support these devices in flexible, RS485-BL supports flexible command set. User can use [[AT Commands or LoRaWAN Downlink>>path:#AT_COMMAND]] Command to configure how RS485-BL should read the sensor and how to handle the return from RS485 or TTL sensors.
240 -
241 -
242 -1.
243 -11.
244 -111. Configure UART settings for RS485 or TTL communication
245 -
246 -RS485-BL can connect to either RS485 sensors or TTL sensor. User need to specify what type of sensor need to connect.
247 -
248 -1. RS485-MODBUS mode:
249 -
250 -AT+MOD=1 ~/~/ Support RS485-MODBUS type sensors. User can connect multiply RS485 , Modbus sensors to the A / B pins.
251 -
252 -
253 -1. TTL mode:
254 -
255 -AT+MOD=2 ~/~/ Support TTL Level sensors, User can connect one TTL Sensor to the TXD/RXD/GND pins.
256 -
257 -
258 -RS485-BL default UART settings is **9600, no parity, stop bit 1**. If the sensor has a different settings, user can change the RS485-BL setting to match.
259 -
260 -
261 -|**AT Commands**|**Description**|**Example**
262 -|AT+BAUDR|Set the baud rate (for RS485 connection). Default Value is: 9600.|(((
234 +(% border="1" style="background-color:#ffffcc; color:green; width:782px" %)
235 +|(% style="width:128px" %)(((
236 +**AT Commands**
237 +)))|(% style="width:305px" %)(((
238 +**Description**
239 +)))|(% style="width:346px" %)(((
240 +**Example**
241 +)))
242 +|(% style="width:128px" %)(((
243 +AT+BAUDR
244 +)))|(% style="width:305px" %)(((
245 +Set the baud rate (for RS485 connection). Default Value is: 9600.
246 +)))|(% style="width:346px" %)(((
247 +(((
263 263  AT+BAUDR=9600
249 +)))
264 264  
251 +(((
265 265  Options: (1200,2400,4800,14400,19200,115200)
266 266  )))
267 -|AT+PARITY|(((
254 +)))
255 +|(% style="width:128px" %)(((
256 +AT+PARITY
257 +)))|(% style="width:305px" %)(((
268 268  Set UART parity (for RS485 connection)
269 -
270 -Default Value is: no parity.
271 -)))|(((
259 +)))|(% style="width:346px" %)(((
260 +(((
272 272  AT+PARITY=0
262 +)))
273 273  
264 +(((
274 274  Option: 0: no parity, 1: odd parity, 2: even parity
275 275  )))
276 -|AT+STOPBIT|(((
267 +)))
268 +|(% style="width:128px" %)(((
269 +AT+STOPBIT
270 +)))|(% style="width:305px" %)(((
271 +(((
277 277  Set serial stopbit (for RS485 connection)
273 +)))
278 278  
279 -Default Value is: 1bit.
280 -)))|(((
275 +(((
276 +
277 +)))
278 +)))|(% style="width:346px" %)(((
279 +(((
281 281  AT+STOPBIT=0 for 1bit
281 +)))
282 282  
283 +(((
283 283  AT+STOPBIT=1 for 1.5 bit
285 +)))
284 284  
287 +(((
285 285  AT+STOPBIT=2 for 2 bits
286 286  )))
290 +)))
287 287  
292 +=== 3.3.2 Configure sensors ===
288 288  
294 +(((
295 +(((
296 +Some sensors might need to configure before normal operation. User can configure such sensor via PC and RS485 adapter or through RS485-LN AT Commands (% style="color:#4f81bd" %)**AT+CFGDEV**(%%). Each (% style="color:#4f81bd" %)**AT+CFGDEV **(%%)equals to send a RS485 command to sensors. This command will only run when user input it and won’t run during each sampling.
297 +)))
298 +)))
289 289  
290 -
291 -
292 -1.
293 -11.
294 -111. Configure sensors
295 -
296 -Some sensors might need to configure before normal operation. User can configure such sensor via PC or through RS485-BL AT Commands AT+CFGDEV.
297 -
298 -
299 -When user issue an AT+CFGDEV command, Each AT+CFGDEV equals to send a command to the RS485 or TTL sensors. This command will only run when user input it and won’t run during each sampling.
300 -
301 -|**AT Commands**|**Description**|**Example**
302 -|AT+CFGDEV|(((
300 +(% border="1" style="background-color:#ffffcc; color:green; width:806px" %)
301 +|**AT Commands**|(% style="width:418px" %)**Description**|(% style="width:256px" %)**Example**
302 +|AT+CFGDEV|(% style="width:418px" %)(((
303 303  This command is used to configure the RS485/TTL devices; they won’t be used during sampling.
304 304  
305 -AT+CFGDEV=xx xx xx xx xx xx xx xx xx xx xx xx,m
305 +AT+CFGDEV=xx xx xx xx xx xx xx xx xx xx xx xx,
306 306  
307 -m: 0: no CRC, 1: add CRC-16/MODBUS in the end of this command
308 -)))|AT+CFGDEV=xx xx xx xx xx xx xx xx xx xx xx xx,m
307 +mm: 0: no CRC, 1: add CRC-16/MODBUS in the end of this command
308 +)))|(% style="width:256px" %)AT+CFGDEV=xx xx xx xx xx xx xx xx xx xx xx xx,m
309 309  
310 -Detail of AT+CFGDEV command see [[AT+CFGDEV detail>>path:#AT_CFGDEV]].
310 +=== 3.3.3 Configure read commands for each sampling ===
311 311  
312 +(((
313 +During each sampling, we need confirm what commands we need to send to the RS485 sensors to read data. After the RS485 sensors send back the value, it normally include some bytes and we only need a few from them for a shorten payload.
312 312  
313 -
314 -
315 -
316 -1.
317 -11.
318 -111. Configure read commands for each sampling
319 -
320 -RS485-BL is a battery powered device; it will sleep most of time. And wake up on each period and read RS485 / TTL sensor data and uplink.
321 -
322 -
323 -During each sampling, we need to confirm what commands we need to send to the sensors to read data. After the RS485/TTL sensors send back the value, it normally includes some bytes and we only need a few from them for a shorten payload.
324 -
325 -
326 326  To save the LoRaWAN network bandwidth, we might need to read data from different sensors and combine their valid value into a short payload.
327 327  
328 -
329 329  This section describes how to achieve above goals.
330 330  
319 +During each sampling, the RS485-LN can support 15 commands to read sensors. And combine the return to one or several uplink payloads.
331 331  
332 -During each sampling, the RS485-BL can support 15 commands to read sensors. And combine the return to one or several uplink payloads.
333 333  
322 +**Each RS485 commands include two parts:**
334 334  
335 -**Command from RS485-BL to Sensor:**
324 +~1. What commands RS485-LN will send to the RS485 sensors. There are total 15 commands from **AT+COMMAD1**, **ATCOMMAND2**,…, to **AT+COMMANDF**. All commands are of same grammar.
336 336  
337 -RS485-BL can send out pre-set max 15 strings via **AT+COMMAD1**, **ATCOMMAND2**,…, to **AT+COMMANDF** . All commands are of same grammar.
326 +2. How to get wanted value the from RS485 sensors returns from by 1). There are total 15 AT Commands to handle the return, commands are **AT+DATACUT1**,**AT+DATACUT2**,…, **AT+DATACUTF** corresponding to the commands from 1). All commands are of same grammar.
338 338  
328 +3. Some RS485 device might has longer delay on reply, so user can use AT+CMDDL to set the timeout for getting reply after the RS485 command is sent. For example **AT+CMDDL1=1000** to send the open time to 1000ms
339 339  
340 -**Handle return from sensors to RS485-BL**:
341 341  
342 -After RS485-BL send out a string to sensor, RS485-BL will wait for the return from RS485 or TTL sensor. And user can specify how to handle the return, by **AT+DATACUT or AT+SEARCH commands**
343 -
344 -
345 -* **AT+DATACUT**
346 -
347 -When the return value from sensor have fix length and we know which position the valid value we should get, we can use AT+DATACUT command.
348 -
349 -
350 -* **AT+SEARCH**
351 -
352 -When the return value from sensor is dynamic length and we are not sure which bytes the valid data is, instead, we know what value the valid value following. We can use AT+SEARCH to search the valid value in the return string.
353 -
354 -
355 -**Define wait timeout:**
356 -
357 -Some RS485 device might has longer delay on reply, so user can use AT+CMDDL to set the timeout for getting reply after the RS485 command is sent. For example, AT+CMDDL1=1000 to send the open time to 1000ms
358 -
359 -
360 360  After we got the valid value from each RS485 commands, we need to combine them together with the command **AT+DATAUP**.
361 361  
362 362  
363 -**Examples:**
364 -
365 365  Below are examples for the how above AT Commands works.
366 366  
367 367  
368 -**AT+COMMANDx : **This command will be sent to RS485/TTL devices during each sampling, Max command length is 14 bytes. The grammar is:
337 +**AT+COMMANDx : **This command will be sent to RS485 devices during each sampling, Max command length is 14 bytes. The grammar is:
369 369  
370 -|(((
339 +(% border="1" style="background-color:#4bacc6; color:white; width:499px" %)
340 +|(% style="width:496px" %)(((
371 371  **AT+COMMANDx=xx xx xx xx xx xx xx xx xx xx xx xx,m**
372 372  
373 373  **xx xx xx xx xx xx xx xx xx xx xx xx: The RS485 command to be sent**
... ... @@ -377,290 +377,198 @@
377 377  
378 378  For example, if we have a RS485 sensor. The command to get sensor value is: 01 03 0B B8 00 02 46 0A. Where 01 03 0B B8 00 02 is the Modbus command to read the register 0B B8 where stored the sensor value. The 46 0A is the CRC-16/MODBUS which calculate manually.
379 379  
380 -In the RS485-BL, we should use this command AT+COMMAND1=01 03 0B B8 00 02,1 for the same.
350 +In the RS485-LN, we should use this command AT+COMMAND1=01 03 0B B8 00 02,1 for the same.
381 381  
382 382  
383 -**AT+SEARCHx**: This command defines how to handle the return from AT+COMMANDx.
384 -
385 -|(((
386 -**AT+SEARCHx=aa,xx xx xx xx xx**
387 -
388 -* **aa: 1: prefix match mode; 2: prefix and suffix match mode**
389 -* **xx xx xx xx xx: match string. Max 5 bytes for prefix and 5 bytes for suffix**
390 -
391 -
392 -)))
393 -
394 -Examples:
395 -
396 -1. For a return string from AT+COMMAND1: 16 0c 1e 56 34 2e 30 58 5f 36 41 30 31 00 49
397 -
398 -If we set AT+SEARCH1=1,1E 56 34.      (max 5 bytes for prefix)
399 -
400 -The valid data will be all bytes after 1E 56 34 , so it is 2e 30 58 5f 36 41 30 31 00 49
401 -
402 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image013.png]]
403 -
404 -
405 -1. For a return string from AT+COMMAND1:  16 0c 1e 56 34 2e 30 58 5f 36 41 30 31 00 49
406 -
407 -If we set AT+SEARCH1=2, 1E 56 34+31 00 49
408 -
409 -Device will search the bytes between 1E 56 34 and 31 00 49. So it is 2e 30 58 5f 36 41 30
410 -
411 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image014.png]]
412 -
413 -
414 414  **AT+DATACUTx : **This command defines how to handle the return from AT+COMMANDx, max return length is 45 bytes.
415 415  
416 -|(((
355 +(% border="1" style="background-color:#4bacc6; color:white; width:725px" %)
356 +|(% style="width:722px" %)(((
417 417  **AT+DATACUTx=a,b,c**
418 418  
419 419  * **a: length for the return of AT+COMMAND**
420 420  * **b:1: grab valid value by byte, max 6 bytes. 2: grab valid value by bytes section, max 3 sections.**
421 -* **c: define the position for valid value. **
361 +* **c: define the position for valid value.  **
422 422  )))
423 423  
424 -Examples:
364 +**Examples:**
425 425  
426 426  * Grab bytes:
427 427  
428 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image015.png]]
368 +[[image:image-20220602153621-1.png]]
429 429  
370 +
430 430  * Grab a section.
431 431  
432 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image016.png]]
373 +[[image:image-20220602153621-2.png]]
433 433  
375 +
434 434  * Grab different sections.
435 435  
436 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image017.png]]
378 +[[image:image-20220602153621-3.png]]
437 437  
380 +
381 +)))
438 438  
439 -Note:
383 +=== 3.3.4 Compose the uplink payload ===
440 440  
441 -AT+SEARCHx and AT+DATACUTx can be used together, if both commands are set, RS485-BL will first process AT+SEARCHx on the return string and get a temporary string, and then process AT+DATACUTx on this temporary string to get the final payload. In this case, AT+DATACUTx need to set to format AT+DATACUTx=0,xx,xx where the return bytes set to 0.
442 -
443 -Example:
444 -
445 -AT+COMMAND1=11 01 1E D0,0
446 -
447 -AT+SEARCH1=1,1E 56 34
448 -
449 -AT+DATACUT1=0,2,1~~5
450 -
451 -Return string from AT+COMMAND1: 16 0c 1e 56 34 2e 30 58 5f 36 41 30 31 00 49
452 -
453 -String after SEARCH command: 2e 30 58 5f 36 41 30 31 00 49
454 -
455 -Valid payload after DataCUT command: 2e 30 58 5f 36
456 -
457 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image018.png]]
458 -
459 -
460 -
461 -
462 -1.
463 -11.
464 -111. Compose the uplink payload
465 -
385 +(((
466 466  Through AT+COMMANDx and AT+DATACUTx we got valid value from each RS485 commands, Assume these valid value are RETURN1, RETURN2, .., to RETURNx. The next step is how to compose the LoRa Uplink Payload by these RETURNs. The command is **AT+DATAUP.**
467 467  
388 +
389 +)))
468 468  
469 -**Examples: AT+DATAUP=0**
391 +(((
392 +(% style="color:#037691" %)**Examples: AT+DATAUP=0**
470 470  
471 -Compose the uplink payload with value returns in sequence and send with **A SIGNLE UPLINK**.
394 +
395 +)))
472 472  
397 +(((
398 +Compose the uplink payload with value returns in sequence and send with (% style="color:red" %)**A SIGNLE UPLINK**.
399 +)))
400 +
401 +(((
473 473  Final Payload is
403 +)))
474 474  
475 -Battery Info+PAYVER + VALID Value from RETURN1 + Valid Value from RETURN2 + … + RETURNx
405 +(((
406 +(% style="color:#4f81bd" %)**Battery Info+PAYVER + VALID Value from RETURN1 + Valid Value from RETURN2 + … + RETURNx**
407 +)))
476 476  
409 +(((
477 477  Where PAYVER is defined by AT+PAYVER, below is an example screen shot.
411 +)))
478 478  
479 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image019.png]]
413 +[[image:1653269759169-150.png||height="513" width="716"]]
480 480  
481 481  
416 +(% style="color:#037691" %)**Examples: AT+DATAUP=1**
482 482  
483 -**Examples: AT+DATAUP=1**
484 484  
485 -Compose the uplink payload with value returns in sequence and send with **Multiply UPLINKs**.
419 +Compose the uplink payload with value returns in sequence and send with (% style="color:red" %)**Multiply UPLINKs**.
486 486  
487 487  Final Payload is
488 488  
489 -Battery Info+PAYVER + PAYLOAD COUNT + PAYLOAD# + DATA
423 +(% style="color:#4f81bd" %)**Battery Info+PAYVER + PAYLOAD COUNT + PAYLOAD# + DATA**
490 490  
491 -1. Battery Info (2 bytes): Battery voltage
492 -1. PAYVER (1 byte): Defined by AT+PAYVER
493 -1. PAYLOAD COUNT (1 byte): Total how many uplinks of this sampling.
494 -1. PAYLOAD# (1 byte): Number of this uplink. (from 0,1,2,3…,to PAYLOAD COUNT)
495 -1. DATA: Valid value: max 6 bytes(US915 version here, [[Notice*!>>path:#max_byte]]) for each uplink so each uplink <= 11 bytes. For the last uplink, DATA will might less than 6 bytes
496 496  
497 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image020.png]]
426 +1. PAYVER: Defined by AT+PAYVER
427 +1. PAYLOAD COUNT: Total how many uplinks of this sampling.
428 +1. PAYLOAD#: Number of this uplink. (from 0,1,2,3…,to PAYLOAD COUNT)
429 +1. DATA: Valid value: max 8 bytes for each uplink so each uplink <= 11 bytes. For the last uplink, DATA will might less than 8 bytes
498 498  
431 +[[image:image-20220602155039-4.png]]
499 499  
500 -So totally there will be 3 uplinks for this sampling, each uplink includes 6 bytes DATA
501 501  
502 -DATA1=RETURN1 Valid Value = 20 20 0a 33 90 41
434 +So totally there will be 3 uplinks for this sampling, each uplink include 8 bytes DATA
503 503  
504 -DATA2=1^^st^^ ~~ 6^^th^^ byte of Valid value of RETURN10= 02 aa 05 81 0a 20
436 +DATA1=RETURN1 Valid Value + the first two of Valid value of RETURN10= **20 20 0a 33 90 41 02 aa**
505 505  
506 -DATA3=7^^th^^ ~~ 11^^th^^ bytes of Valid value of RETURN10 = 20 20 20 2d 30
438 +DATA2=3^^rd^^ ~~ 10^^th^^ byte of Valid value of RETURN10= **05 81 0a 20 20 20 20 2d**
507 507  
440 +DATA3=the rest of Valid value of RETURN10= **30**
508 508  
509 509  
510 -Below are the uplink payloads:
443 +(% style="color:red" %)Notice: In firmware v1.3, the Max bytes has been changed according to the max bytes in different Frequency Bands for lowest SF. As below:
511 511  
512 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image021.png]]
445 + ~* For AU915/AS923 bands, if UplinkDwell time=0, max 51 bytes for each uplink.
513 513  
447 + * For AU915/AS923 bands, if UplinkDwell time=0, max 11 bytes for each uplink.
514 514  
515 -Notice: the Max bytes is according to the max support bytes in different Frequency Bands for lowest SF. As below:
449 + * For US915 band, max 11 bytes for each uplink.
516 516  
517 - ~* For AU915/AS923 bands, if UplinkDwell time=0, max 51 bytes for each uplink ( so 51 -5 = 46 max valid date)
451 + ~* For all other bands: max 51 bytes for each uplink.
518 518  
519 - * For AU915/AS923 bands, if UplinkDwell time=1, max 11 bytes for each uplink ( so 11 -5 = 6 max valid date).
520 520  
521 - * For US915 band, max 11 bytes for each uplink ( so 11 -5 = 6 max valid date).
454 +Below are the uplink payloads:
522 522  
523 - ~* For all other bands: max 51 bytes for each uplink  ( so 51 -5 = 46 max valid date).
456 +[[image:1654157178836-407.png]]
524 524  
525 525  
459 +=== 3.3.5 Uplink on demand ===
526 526  
527 -1.
528 -11.
529 -111. Uplink on demand
461 +Except uplink periodically, RS485-LN is able to uplink on demand. The server send downlink command to RS485-LN and RS485 will uplink data base on the command.
530 530  
531 -Except uplink periodically, RS485-BL is able to uplink on demand. The server sends downlink command to RS485-BL and RS485 will uplink data base on the command.
532 -
533 533  Downlink control command:
534 534  
535 -[[0x08 command>>path:#downlink_08]]: Poll an uplink with current command set in RS485-BL.
465 +**0x08 command**: Poll an uplink with current command set in RS485-LN.
536 536  
537 -[[0xA8 command>>path:#downlink_A8]]: Send a command to RS485-BL and uplink the output from sensors.
467 +**0xA8 command**: Send a command to RS485-LN and uplink the output from sensors.
538 538  
539 539  
540 540  
541 -1.
542 -11.
543 -111. Uplink on Interrupt
471 +=== 3.3.6 Uplink on Interrupt ===
544 544  
545 -Put the interrupt sensor between 3.3v_out and GPIO ext.[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image022.png]]
473 +RS485-LN support external Interrupt uplink since hardware v1.2 release.
546 546  
547 -AT+INTMOD=0  Disable Interrupt
475 +[[image:1654157342174-798.png]]
548 548  
549 -AT+INTMOD=1  Interrupt trigger by rising or falling edge.
477 +Connect the Interrupt pin to RS485-LN INT port and connect the GND pin to V- port. When there is a high voltage (Max 24v) on INT pin. Device will send an uplink packet.
550 550  
551 -AT+INTMOD=2  Interrupt trigger by falling edge. ( Default Value)
552 552  
553 -AT+INTMOD=3  Interrupt trigger by rising edge.
480 +== 3.4 Uplink Payload ==
554 554  
555 -
556 -1.
557 -11. Uplink Payload
558 -
559 -
560 -|**Size(bytes)**|**2**|**1**|**Length depends on the return from the commands**
561 -|Value|(((
482 +(% border="1" style="background-color:#4bacc6; color:white; width:734px" %)
483 +|**Size(bytes)**|(% style="width:120px" %)**2**|(% style="width:116px" %)**1**|(% style="width:386px" %)**Length depends on the return from the commands**
484 +|Value|(% style="width:120px" %)(((
562 562  Battery(mV)
563 563  
564 564  &
565 565  
566 566  Interrupt _Flag
567 -)))|(((
490 +)))|(% style="width:116px" %)(((
568 568  PAYLOAD_VER
569 569  
570 570  
571 -)))|If the valid payload is too long and exceed the maximum support payload length in server, server will show payload not provided in the LoRaWAN server.
494 +)))|(% style="width:386px" %)If the valid payload is too long and exceed the maximum support payload length in server, server will show payload not provided in the LoRaWAN server.
572 572  
573 573  Below is the decoder for the first 3 bytes. The rest bytes are dynamic depends on different RS485 sensors.
574 574  
575 575  
576 -function Decoder(bytes, port) {
499 +== 3.5 Configure RS485-BL via AT or Downlink ==
577 577  
578 -~/~/Payload Formats of RS485-BL Deceive
501 +User can configure RS485-LN via AT Commands or LoRaWAN Downlink Commands
579 579  
580 -return {
581 -
582 - ~/~/Battery,units:V
583 -
584 - BatV:((bytes[0]<<8 | bytes[1])&0x7fff)/1000,
585 -
586 - ~/~/GPIO_EXTI 
587 -
588 - EXTI_Trigger:(bytes[0] & 0x80)? "TRUE":"FALSE",
589 -
590 - ~/~/payload of version
591 -
592 - Pay_ver:bytes[2],
593 -
594 - };
595 -
596 - }
597 -
598 -
599 -
600 -
601 -
602 -
603 -
604 -TTN V3 uplink screen shot.
605 -
606 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image023.png]]
607 -
608 -1.
609 -11. Configure RS485-BL via AT or Downlink
610 -
611 -User can configure RS485-BL via [[AT Commands >>path:#_​Using_the_AT]]or LoRaWAN Downlink Commands
612 -
613 613  There are two kinds of Commands:
614 614  
615 -* **Common Commands**: They should be available for each sensor, such as: change uplink interval, reset device. For firmware v1.3, user can find what common commands it supports: http:~/~/wiki.dragino.com/index.php?title=End_Device_AT_Commands_and_Downlink_Commands
505 +* (% style="color:#4f81bd" %)**Common Commands**(%%): They should be available for each sensor, such as: change uplink interval, reset device. For firmware v1.3, user can find what common commands it supports: [[AT Commands and Downlink Command>>doc:Main.End Device AT Commands and Downlink Command.WebHome]]
616 616  
617 -* **Sensor Related Commands**: These commands are special designed for RS485-BL.  User can see these commands below:
507 +* (% style="color:#4f81bd" %)**Sensor Related Commands**(%%): These commands are special designed for RS485-LN.  User can see these commands below:
618 618  
509 +=== 3.5.1 Common Commands ===
619 619  
620 -1.
621 -11.
622 -111. Common Commands:
511 +They should be available for each of Dragino Sensors, such as: change uplink interval, reset device. For firmware v1.3, user can find what common commands it supports: [[End Device AT Commands and Downlink Command>>doc:Main.End Device AT Commands and Downlink Command.WebHome]]
623 623  
624 624  
625 -They should be available for each of Dragino Sensors, such as: change uplink interval, reset device. For firmware v1.3, user can find what common commands it supports: [[http:~~/~~/wiki.dragino.com/index.php?title=End_Device_AT_Commands_and_Downlink_Commands>>url:http://wiki.dragino.com/index.php?title=End_Device_AT_Commands_and_Downlink_Commands]]
514 +=== 3.5.2 Sensor related commands ===
626 626  
516 +Response feature is added to the server's downlink, a special package with a FPort of 200 will be uploaded immediately after receiving the data sent by the server.
627 627  
628 -1.
629 -11.
630 -111. Sensor related commands:
518 +[[image:image-20220602163333-5.png||height="263" width="1160"]]
631 631  
520 +The first byte of this package represents whether the configuration is successful, 00 represents failure, 01 represents success. Except for the first byte, the other is the previous downlink. (All commands except A8 type commands are applicable)
632 632  
633 -==== Choose Device Type (RS485 or TTL) ====
634 634  
635 -RS485-BL can connect to either RS485 sensors or TTL sensor. User need to specify what type of sensor need to connect.
523 +=== 3.5.3 Sensor related commands ===
636 636  
637 -* AT Command
638 638  
639 -**AT+MOD=1** ~/~/ Set to support RS485-MODBUS type sensors. User can connect multiply RS485 , Modbus sensors to the A / B pins.
640 640  
641 -**AT+MOD=2** ~/~/ Set to support TTL Level sensors, User can connect one TTL Sensor to the TXD/RXD/GND pins.
527 +==== **RS485 Debug Command** ====
642 642  
529 +This command is used to configure the RS485 devices; they won’t be used during sampling.
643 643  
644 -* Downlink Payload
531 +* **AT Command**
645 645  
646 -**0A aa**     à same as AT+MOD=aa
533 +(% class="box infomessage" %)
534 +(((
535 +**AT+CFGDEV=xx xx xx xx xx xx xx xx xx xx xx xx,m**
536 +)))
647 647  
538 +m: 0: no CRC, 1: add CRC-16/MODBUS in the end of this command
648 648  
540 +* **Downlink Payload**
649 649  
650 -==== [[RS485 Debug Command>>path:#downlink_A8]] (AT+CFGDEV) ====
651 -
652 -This command is used to configure the RS485 or TTL sensors; they won’t be used during sampling.
653 -
654 -* AT Command
655 -
656 -AT+CFGDEV=xx xx xx xx xx xx xx xx xx xx xx xx,m
657 -
658 -m: 0: no CRC; 1: add CRC-16/MODBUS in the end of this command.
659 -
660 -
661 -
662 -* Downlink Payload
663 -
664 664  Format: A8 MM NN XX XX XX XX YY
665 665  
666 666  Where:
... ... @@ -668,11 +668,13 @@
668 668  * MM: 1: add CRC-16/MODBUS ; 0: no CRC
669 669  * NN: The length of RS485 command
670 670  * XX XX XX XX: RS485 command total NN bytes
671 -* YY: How many bytes will be uplink from the return of this RS485 command, if YY=0, RS485-BL will execute the downlink command without uplink; if YY>0, RS485-BL will uplink total YY bytes from the output of this RS485 command
549 +* YY: How many bytes will be uplink from the return of this RS485 command,
550 +** if YY=0, RS485-LN will execute the downlink command without uplink;
551 +** if YY>0, RS485-LN will uplink total YY bytes from the output of this RS485 command; Fport=200
552 +** if YY=FF, RS485-LN will uplink RS485 output with the downlink command content; Fport=200.
672 672  
554 +**Example 1** ~-~-> Configure without ask for uplink (YY=0)
673 673  
674 -**Example 1:**
675 -
676 676  To connect a Modbus Alarm with below commands.
677 677  
678 678  * The command to active alarm is: 0A 05 00 04 00 01 4C B0. Where 0A 05 00 04 00 01 is the Modbus command to read the register 00 40 where stored the DI status. The 4C B0 is the CRC-16/MODBUS which calculate manually.
... ... @@ -681,428 +681,414 @@
681 681  
682 682  So if user want to use downlink command to control to RS485 Alarm, he can use:
683 683  
684 -**A8 01 06 0A 05 00 04 00 01 00**: to activate the RS485 Alarm
564 +(% style="color:#4f81bd" %)**A8 01 06 0A 05 00 04 00 01 00**(%%): to activate the RS485 Alarm
685 685  
686 -**A8 01 06 0A 05 00 04 00 00 00**: to deactivate the RS485 Alarm
566 +(% style="color:#4f81bd" %)**A8 01 06 0A 05 00 04 00 00 00**(%%): to deactivate the RS485 Alarm
687 687  
688 688  A8 is type code and 01 means add CRC-16/MODBUS at the end, the 3^^rd^^ byte is 06, means the next 6 bytes are the command to be sent to the RS485 network, the final byte 00 means this command don’t need to acquire output.
689 689  
690 690  
691 -**Example 2:**
571 +**Example 2** ~-~-> Configure with requesting uplink and original downlink command (**YY=FF**)
692 692  
693 -Check TTL Sensor return:
573 +User in IoT server send a downlink command: (% style="color:#4f81bd" %)**A8 01 06 0A 08 00 04 00 01 YY**
694 694  
695 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image024.png]]
696 696  
576 +RS485-LN got this downlink command and send (% style="color:#4f81bd" %)**0A 08 00 04 00 01 **(%%)to Modbus network. One of the RS485 sensor in the network send back Modbus reply **0A 08 00 04 00 00**. RS485-LN get this reply and combine with the original downlink command and uplink. The uplink message is:
697 697  
578 + **A8** (% style="color:#4f81bd" %)**0A 08 00 04 00  **(% style="color:red" %)**01 06** ** **(% style="color:green" %)**0A 08 00 04 00 00**
698 698  
580 + [[image:1654159460680-153.png]]
699 699  
700 -==== Set Payload version ====
701 701  
702 -This is the first byte of the uplink payload. RS485-BL can connect to different sensors. User can set the PAYVER field to tell server how to decode the current payload.
703 703  
704 -* AT Command:
584 +==== **Set Payload version** ====
705 705  
706 -AT+PAYVER: Set PAYVER field = 1
586 +This is the first byte of the uplink payload. RS485-BL can connect to different sensors. User can set the PAYVER field to tell server how to decode the current payload.
707 707  
588 +* **AT Command:**
708 708  
709 -* Downlink Payload:
590 +(% class="box infomessage" %)
591 +(((
592 +**AT+PAYVER: Set PAYVER field = 1**
593 +)))
710 710  
711 -0xAE 01   à Set PAYVER field =  0x01
595 +* **Downlink Payload:**
712 712  
713 -0xAE 0F   à Set PAYVER field =  0x0F
597 +**0xAE 01**  ~-~-> Set PAYVER field =  0x01
714 714  
599 +**0xAE 0F**   ~-~-> Set PAYVER field =  0x0F
715 715  
716 -==== Set RS485 Sampling Commands ====
717 717  
718 -AT+COMMANDx, AT+DATACUTx and AT+SEARCHx
719 719  
720 -These three commands are used to configure how the RS485-BL polling data from Modbus device. Detail of usage please see : [[polling RS485 device>>path:#polling_485]].
603 +==== **Set RS485 Sampling Commands** ====
721 721  
605 +AT+COMMANDx or AT+DATACUTx
722 722  
723 -* AT Command:
607 +These three commands are used to configure how the RS485-LN polling data from Modbus device. Detail of usage please see : [[polling RS485 device>>||anchor="H3.3.3Configurereadcommandsforeachsampling"]].
724 724  
725 -AT+COMMANDx: Configure RS485 read command to sensor.
726 726  
727 -AT+DATACUTx: Configure how to handle return from RS485 devices.
610 +* **AT Command:**
728 728  
729 -AT+SEARCHx: Configure search command
612 +(% class="box infomessage" %)
613 +(((
614 +**AT+COMMANDx: Configure RS485 read command to sensor.**
615 +)))
730 730  
617 +(% class="box infomessage" %)
618 +(((
619 +**AT+DATACUTx: Configure how to handle return from RS485 devices.**
620 +)))
731 731  
732 -* Downlink Payload:
733 733  
734 -0xAF downlink command can be used to set AT+COMMANDx or AT+DATACUTx.
623 +* **Downlink Payload:**
735 735  
736 -Note: if user use AT+COMMANDx to add a new command, he also need to send AT+DATACUTx downlink.
625 +**0xAF** downlink command can be used to set AT+COMMANDx or AT+DATACUTx.
737 737  
627 +(% style="color:red" %)**Note**(%%): if user use AT+COMMANDx to add a new command, he also need to send AT+DATACUTx downlink.
628 +
738 738  Format: AF MM NN LL XX XX XX XX YY
739 739  
740 740  Where:
741 741  
742 742  * MM: the ATCOMMAND or AT+DATACUT to be set. Value from 01 ~~ 0F,
743 -* NN: 0: no CRC; 1: add CRC-16/MODBUS ; 2: set the AT+DATACUT value.
744 -* LL: The length of AT+COMMAND or AT+DATACUT command
634 +* NN:  0: no CRC; 1: add CRC-16/MODBUS ; 2: set the AT+DATACUT value.
635 +* LL:  The length of AT+COMMAND or AT+DATACUT command
745 745  * XX XX XX XX: AT+COMMAND or AT+DATACUT command
746 -* YY: If YY=0, RS485-BL will execute the downlink command without uplink; if YY=1, RS485-BL will execute an uplink after got this command.
637 +* YY:  If YY=0, RS485-BL will execute the downlink command without uplink; if YY=1, RS485-LN will execute an uplink after got this command.
747 747  
748 -Example:
639 +**Example:**
749 749  
750 -**AF 03 01 06 0A 05 00 04 00 01 00**: Same as AT+COMMAND3=0A 05 00 04 00 01,1
641 +(% style="color:#037691" %)**AF 03 01 06 0A 05 00 04 00 01 00**(%%): Same as AT+COMMAND3=0A 05 00 04 00 01,1
751 751  
752 -**AF 03 02 06 10 01 05 06 09 0A 00**: Same as AT+DATACUT3=**16**,**1**,**5+6+9+10**
643 +(% style="color:#037691" %)**AF 03 02 06**(% style="color:orange" %)** 10 **(% style="color:red" %)**01 **(% style="color:green" %)**05 06 09 0A**(% style="color:#037691" %)** 00**(%%): Same as AT+DATACUT3=(% style="color:orange" %)**16**(%%),(% style="color:red" %)**1**(%%),(% style="color:green" %)**5+6+9+10**
753 753  
754 -**AF 03 02 06 0B 02 05 07 08 0A 00**: Same as AT+DATACUT3=**11**,**2**,**5~~7+8~~10**
645 +(% style="color:#037691" %)**AF 03 02 06 **(% style="color:orange" %)**0B**(% style="color:red" %)** 02 **(% style="color:green" %)**05 07 08 0A **(% style="color:#037691" %)**00**(%%): Same as AT+DATACUT3=(% style="color:orange" %)**11**(%%),(% style="color:red" %)**2**(%%),(% style="color:green" %)**5~~7+8~~10**
755 755  
756 756  
757 -0xAB downlink command can be used for set AT+SEARCHx
758 758  
759 -Example: **AB aa 01 03 xx xx xx** (03 here means there are total 3 bytes after 03) So
649 +==== **Fast command to handle MODBUS device** ====
760 760  
761 -* AB aa 01 03 xx xx xx  same as AT+SEARCHaa=1,xx xx xx
762 -* AB aa 02 03 xx xx xx 02 yy yy(03 means there are 3 bytes after 03, they are xx xx xx;02 means there are 2 bytes after 02, they are yy yy) so the commands
763 -
764 -**AB aa 02 03 xx xx xx 02 yy yy**  same as **AT+SEARCHaa=2,xx xx xx+yy yy**
765 -
766 -
767 -==== Fast command to handle MODBUS device ====
768 -
769 769  AT+MBFUN is valid since v1.3 firmware version. The command is for fast configure to read Modbus devices. It is only valid for the devices which follow the [[MODBUS-RTU protocol>>url:https://www.modbustools.com/modbus.html]].
770 770  
771 771  This command is valid since v1.3 firmware version
772 772  
655 +AT+MBFUN can auto read the Modbus function code: 01, 02, 03 or 04. AT+MBFUN has lower priority vs AT+DATACUT command. If AT+DATACUT command is configured, AT+MBFUN will be ignore.
773 773  
774 -AT+MBFUN has only two value:
775 775  
776 -* AT+MBFUN=1: Enable Modbus reading. And get response base on the MODBUS return
658 +**Example:**
777 777  
778 -AT+MBFUN=1, device can auto read the Modbus function code: 01, 02, 03 or 04. AT+MBFUN has lower priority vs AT+DATACUT command. If AT+DATACUT command is configured, AT+MBFUN will be ignore.
779 -
780 -* AT+MBFUN=0: Disable Modbus fast reading.
781 -
782 -
783 -Example:
784 -
785 -* AT+MBFUN=1 and AT+DATACUT1/AT+DATACUT2 are not configure (0,0,0).
660 +* AT+MBFUN=1 and AT+DATACUT1/AT+DATACUT2 are not configure (0,0,0). So RS485-LN.
786 786  * AT+COMMAND1= 01 03 00 10 00 08,1 ~-~-> read slave address 01 , function code 03, start address 00 01, quantity of registers 00 08.
787 787  * AT+COMMAND2= 01 02 00 40 00 10,1 ~-~-> read slave address 01 , function code 02, start address 00 40, quantity of inputs 00 10.
788 788  
789 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image025.png]]
664 +[[image:image-20220602165351-6.png]]
790 790  
666 +[[image:image-20220602165351-7.png]]
791 791  
792 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image026.png]]
793 793  
794 794  
795 -* Downlink Commands:
670 +==== **RS485 command timeout** ====
796 796  
797 -A9 aa Same as AT+MBFUN=aa
672 +Some Modbus device has slow action to send replies. This command is used to configure the RS485-LN to use longer time to wait for their action.
798 798  
674 +Default value: 0, range:  0 ~~ 65 seconds
799 799  
800 -==== RS485 command timeout ====
676 +* **AT Command:**
801 801  
802 -Some Modbus device has slow action to send replies. This command is used to configure the RS485-BL to use longer time to wait for their action.
678 +(% class="box infomessage" %)
679 +(((
680 +**AT+CMDDLaa=hex(bb cc)*1000**
681 +)))
803 803  
804 -Default value: 0, range:  0 ~~ 5 seconds
683 +**Example:**
805 805  
685 +**AT+CMDDL1=1000** to send the open time to 1000ms
806 806  
807 -* AT Command:
808 808  
809 -AT+CMDDLaa=hex(bb cc)
688 +* **Downlink Payload:**
810 810  
811 -Example:
690 +**0x AA aa bb cc**
812 812  
813 -**AT+CMDDL1=1000** to send the open time to 1000ms
692 +Same as: AT+CMDDLaa=hex(bb cc)*1000
814 814  
694 + **Example:**
815 815  
816 -* Downlink Payload:
696 + 0xAA 01 00 01  ~-~-> Same as **AT+CMDDL1=1000 ms**
817 817  
818 -0x AA aa bb cc
819 819  
820 -Same as: AT+CMDDLaa=hex(bb cc)
821 821  
822 - Example:
700 +==== **Uplink payload mode** ====
823 823  
824 - 0xAA 01 03 E8  à Same as **AT+CMDDL1=1000 ms**
702 +Define to use one uplink or multiple uplinks for the sampling.
825 825  
704 +The use of this command please see: [[Compose Uplink payload>>||anchor="H3.3.4Composetheuplinkpayload"]]
826 826  
827 -==== [[Uplink>>path:#downlink_A8]] payload mode ====
706 +* **AT Command:**
828 828  
829 -Define to use one uplink or multiple uplinks for the sampling.
708 +(% class="box infomessage" %)
709 +(((
710 +**AT+DATAUP=0**
711 +)))
830 830  
831 -The use of this command please see: [[Compose Uplink payload>>path:#DataUP]]
713 +(% class="box infomessage" %)
714 +(((
715 +**AT+DATAUP=1**
716 +)))
832 832  
833 -* AT Command:
834 834  
835 -AT+DATAUP=0
719 +* **Downlink Payload:**
836 836  
837 -AT+DATAUP=1
721 +**0xAD 00**  **~-~->** Same as AT+DATAUP=0
838 838  
723 +**0xAD 01**  **~-~->** Same as AT+DATAUP=1
839 839  
840 -* Downlink Payload:
841 841  
842 -0xAD 00   à Same as AT+DATAUP=0
843 843  
844 -0xAD 01   à Same as AT+DATAUP=1
727 +==== **Manually trigger an Uplink** ====
845 845  
729 +Ask device to send an uplink immediately.
846 846  
847 -==== Manually trigger an Uplink ====
731 +* **AT Command:**
848 848  
849 -Ask device to send an uplink immediately.
733 +No AT Command for this, user can press the [[ACT button>>||anchor="H3.7Buttons"]] for 1 second for the same.
850 850  
851 -* Downlink Payload:
852 852  
853 -0x08 FF, RS485-BL will immediately send an uplink.
736 +* **Downlink Payload:**
854 854  
738 +**0x08 FF**, RS485-LN will immediately send an uplink.
855 855  
856 -==== Clear RS485 Command ====
857 857  
858 -The AT+COMMANDx and AT+DATACUTx settings are stored in special location, user can use below command to clear them.
859 859  
742 +==== **Clear RS485 Command** ====
860 860  
861 -* AT Command:
744 +The AT+COMMANDx and AT+DATACUTx settings are stored in special location, user can use below command to clear them.
862 862  
746 +* **AT Command:**
747 +
863 863  **AT+CMDEAR=mm,nn**   mm: start position of erase ,nn: stop position of erase
864 864  
865 865  Etc. AT+CMDEAR=1,10 means erase AT+COMMAND1/AT+DATACUT1 to AT+COMMAND10/AT+DATACUT10
866 866  
867 -Example screen shot after clear all RS485 commands.
752 +Example screen shot after clear all RS485 commands. 
868 868  
869 869  
870 -
871 871  The uplink screen shot is:
872 872  
873 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image023.png]]
757 +[[image:1654160691922-496.png]]
874 874  
875 875  
876 -* Downlink Payload:
760 +* **Downlink Payload:**
877 877  
878 -0x09 aa bb same as AT+CMDEAR=aa,bb
762 +**0x09 aa bb** same as AT+CMDEAR=aa,bb
879 879  
880 880  
881 -==== Set Serial Communication Parameters ====
882 882  
766 +==== **Set Serial Communication Parameters** ====
767 +
883 883  Set the Rs485 serial communication parameters:
884 884  
885 -* AT Command:
770 +* **AT Command:**
886 886  
887 887  Set Baud Rate:
888 888  
889 -AT+BAUDR=9600    ~/~/ Options: (1200,2400,4800,14400,19200,115200)
774 +(% class="box infomessage" %)
775 +(((
776 +**AT+BAUDR=9600**    ~/~/ Options: (1200,2400,4800,14400,19200,115200)
777 +)))
890 890  
779 +Set UART Parity
891 891  
892 -Set UART parity
781 +(% class="box infomessage" %)
782 +(((
783 +**AT+PARITY=0**    ~/~/ Option: 0: no parity, 1: odd parity, 2: even parity
784 +)))
893 893  
894 -AT+PARITY=0    ~/~/ Option: 0: no parity, 1: odd parity, 2: even parity
895 -
896 -
897 897  Set STOPBIT
898 898  
899 -AT+STOPBIT=0    ~/~/ Option: 0 for 1bit; 1 for 1.5 bit ; 2 for 2 bits
788 +(% class="box infomessage" %)
789 +(((
790 +**AT+STOPBIT=0**    ~/~/ Option: 0 for 1bit; 1 for 1.5 bit ; 2 for 2 bits
791 +)))
900 900  
901 901  
902 -* Downlink Payload:
794 +* **Downlink Payload:**
903 903  
904 -A7 01 aa bb: Same  AT+BAUDR=hex(aa bb)*100
796 +**A7 01 aa bb**: Same  AT+BAUDR=hex(aa bb)*100
905 905  
906 -Example:
798 +**Example:**
907 907  
908 908  * A7 01 00 60   same as AT+BAUDR=9600
909 909  * A7 01 04 80  same as AT+BAUDR=115200
910 910  
911 -
912 912  A7 02 aa: Same as  AT+PARITY=aa  (aa value: 00 , 01 or 02)
913 913  
914 914  A7 03 aa: Same as  AT+STOPBIT=aa  (aa value: 00 , 01 or 02)
915 915  
916 916  
917 -==== Control output power duration ====
808 +== 3.6 Listening mode for RS485 network ==
918 918  
919 -User can set the output power duration before each sampling.
810 +This feature support since firmware v1.4
920 920  
921 -* AT Command:
812 +RS485-LN supports listening mode, it can listen the RS485 network packets and send them via LoRaWAN uplink. Below is the structure. The blue arrow shows the RS485 network packets to RS485-LN.
922 922  
923 -Example:
814 +[[image:image-20220602171200-8.png||height="567" width="1007"]]
924 924  
925 -AT+3V3T=1000 ~/~/ 3V3 output power will open 1s before each sampling.
816 +To enable the listening mode, use can run the command AT+RXMODE.
926 926  
927 -AT+5VT=1000 ~/~/ +5V output power will open 1s before each sampling.
928 928  
819 +(% border="1" style="background-color:#ffffcc; width:500px" %)
820 +|=(% style="width: 161px;" %)**Command example:**|=(% style="width: 337px;" %)**Function**
821 +|(% style="width:161px" %)AT+RXMODE=1,10 |(% style="width:337px" %)Enable listening mode 1, if RS485-LN has received more than 10 RS485 commands from the network. RS485-LN will send these commands via LoRaWAN uplinks.
822 +|(% style="width:161px" %)AT+RXMODE=2,500|(% style="width:337px" %)Enable listening mode 2, RS485-LN will capture and send a 500ms content once from the first detect of character. Max value is 65535 ms
823 +|(% style="width:161px" %)AT+RXMODE=0,0|(% style="width:337px" %)Disable listening mode. This is the default settings.
824 +|(% style="width:161px" %) |(% style="width:337px" %)A6 aa bb cc  same as AT+RXMODE=aa,(bb<<8 ~| cc)
929 929  
930 -* LoRaWAN Downlink Command:
826 +**Downlink Command:**
931 931  
932 -07 01 aa bb  Same as AT+5VT=(aa bb)
828 +**0xA6 aa bb cc ** same as AT+RXMODE=aa,(bb<<8 | cc)
933 933  
934 -07 02 aa bb  Same as AT+3V3T=(aa bb)
935 935  
831 +**Example**:
936 936  
833 +The RS485-LN is set to AT+RXMODE=2,1000
937 937  
835 +There is a two Modbus commands in the RS485 network as below:
938 938  
939 -1.
940 -11. Buttons
837 +The Modbus master send a command: (% style="background-color:#ffc000" %)01 03 00 00 00 02 c4 0b
941 941  
839 +And Modbus slave reply with: (% style="background-color:green" %)01 03 04 00 00 00 00 fa 33
942 942  
943 -|**Button**|**Feature**
944 -|**RST**|Reboot RS485-BL
841 +RS485-LN will capture both and send the uplink: (% style="background-color:#ffc000" %)01 03 00 00 00 02 c4 0b  (% style="background-color:green" %)01 03 04 00 00 00 00 fa 33
945 945  
843 +[[image:image-20220602171200-9.png]]
946 946  
947 -1.
948 -11. +3V3 Output
949 949  
950 -RS485-BL has a Controllable +3V3 output, user can use this output to power external sensor.
846 +(% style="color:red" %)Notice: Listening mode can work with the default polling mode of RS485-LN. When RS485-LN is in to send the RS485 commands (from AT+COMMANDx), the listening mode will be interrupt for a while.
951 951  
952 -The +3V3 output will be valid for every sampling. RS485-BL will enable +3V3 output before all sampling and disable the +3V3 after all sampling.
953 953  
849 +== 3.7 Buttons ==
954 954  
955 -The +3V3 output time can be controlled by AT Command.
956 956  
957 -**AT+3V3T=1000**
852 +(% border="1" style="background-color:#f7faff; width:500px" %)
853 +|=**Button**|=(% style="width: 1420px;" %)**Feature**
854 +|**ACT**|(% style="width:1420px" %)If RS485 joined in network, press this button for more than 1 second, RS485 will upload a packet, and the SYS LED will give a (% style="color:blue" %)**Blue blink**
855 +|**RST**|(% style="width:1420px" %)Reboot RS485
856 +|**PRO**|(% style="width:1420px" %)Use for upload image, see [[How to Update Image>>||anchor="H6.1Howtoupgradetheimage3F"]]
958 958  
959 -Means set +3v3 valid time to have 1000ms. So, the real +3v3 output will actually have 1000ms + sampling time for other sensors.
960 960  
859 +== 3.8 LEDs ==
961 961  
962 -By default, the AT+3V3T=0. This is a special case, means the +3V3 output is always on at any time
861 +(% border="1" style="background-color:#f7faff; width:500px" %)
862 +|=**LEDs**|=**Feature**
863 +|**PWR**|Always on if there is power
864 +|**SYS**|After device is powered on, the SYS will (% style="color:green" %)**fast blink in GREEN** (%%)for 5 times, means RS485-LN start to join LoRaWAN network. If join success, SYS will be (% style="color:green" %)**on GREEN for 5 seconds**(%%)**. **SYS will (% style="color:green" %)**blink Blue**(%%) on every upload and (% style="color:green" %)**blink Green**(%%) once receive a downlink message.
963 963  
964 964  
965 -1.
966 -11. +5V Output
867 += 4. Case Study =
967 967  
968 -RS485-BL has a Controllable +5V output, user can use this output to power external sensor.
869 +User can check this URL for some case studies: [[APP RS485 COMMUNICATE WITH SENSORS>>doc:Main.Application Note \: Communicate with Different Sensors ----- RS485-LN RS485-BL.WebHome]]
969 969  
970 -The +5V output will be valid for every sampling. RS485-BL will enable +5V output before all sampling and disable the +5v after all sampling.
971 971  
872 += 5. Use AT Command =
972 972  
973 -The 5V output time can be controlled by AT Command.
874 +== 5.1 Access AT Command ==
974 974  
975 -**AT+5VT=1000**
876 +RS485-BL supports AT Command set. User can use a USB to TTL adapter plus the 3.5mm Program Cable to connect to RS485-BL to use AT command, as below.
976 976  
977 -Means set 5V valid time to have 1000ms. So, the real 5V output will actually have 1000ms + sampling time for other sensors.
878 +[[image:1654162355560-817.png]]
978 978  
979 979  
980 -By default, the AT+5VT=0. If the external sensor which require 5v and require more time to get stable state, user can use this command to increase the power ON duration for this sensor.
881 +In PC, User needs to set (% style="color:blue" %)**serial tool**(%%)(such as [[putty>>url:https://www.chiark.greenend.org.uk/~~sgtatham/putty/latest.html]], SecureCRT) baud rate to (% style="color:green" %)**9600**(%%) to access to access serial console of RS485-BL. The default password is 123456. Below is the output for reference:
981 981  
883 +[[image:1654162368066-342.png]]
982 982  
983 983  
886 +More detail AT Command manual can be found at [[AT Command Manual>>https://www.dragino.com/downloads/index.php?dir=LT_LoRa_IO_Controller/LT33222-L/]]
984 984  
985 -1.
986 -11. LEDs
987 987  
988 -|**LEDs**|**Feature**
989 -|**LED1**|Blink when device transmit a packet.
889 +== 5.2 Common AT Command Sequence ==
990 990  
891 +=== 5.2.1 Multi-channel ABP mode (Use with SX1301/LG308) ===
991 991  
992 -1.
993 -11. Switch Jumper
893 +If device has not joined network yet:
994 994  
995 -|**Switch Jumper**|**Feature**
996 -|**SW1**|(((
997 -ISP position: Upgrade firmware via UART
895 +(% class="box infomessage" %)
896 +(((
897 +**AT+FDR**
898 +)))
998 998  
999 -Flash position: Configure device, check running status.
900 +(% class="box infomessage" %)
901 +(((
902 +**AT+NJM=0**
1000 1000  )))
1001 -|**SW2**|(((
1002 -5V position: set to compatible with 5v I/O.
1003 1003  
1004 -3.3v position: set to compatible with 3.3v I/O.,
905 +(% class="box infomessage" %)
906 +(((
907 +**ATZ**
1005 1005  )))
1006 1006  
1007 -+3.3V: is always ON
1008 1008  
1009 -+5V: Only open before every sampling. The time is by default, it is AT+5VT=0.  Max open time. 5000 ms.
911 +If device already joined network:
1010 1010  
1011 -1. Case Study
913 +(% class="box infomessage" %)
914 +(((
915 +**AT+NJM=0**
916 +)))
1012 1012  
918 +(% class="box infomessage" %)
919 +(((
920 +**ATZ**
921 +)))
1013 1013  
1014 -User can check this URL for some case studies.
1015 1015  
1016 -[[http:~~/~~/wiki.dragino.com/index.php?title=APP_RS485_COMMUNICATE_WITH_SENSORS>>url:http://wiki.dragino.com/index.php?title=APP_RS485_COMMUNICATE_WITH_SENSORS]]
924 +=== 5.5.2 Single-channel ABP mode (Use with LG01/LG02) ===
1017 1017  
1018 1018  
927 +(% style="background-color:#dcdcdc" %)**AT+FDR** (%%) Reset Parameters to Factory Default, Keys Reserve
1019 1019  
929 +(% style="background-color:#dcdcdc" %)**AT+NJM=0 **(%%)Set to ABP mode
1020 1020  
1021 -1. Use AT Command
1022 -11. Access AT Command
931 +(% style="background-color:#dcdcdc" %)**AT+ADR=0** (%%)Set the Adaptive Data Rate Off
1023 1023  
1024 -RS485-BL supports AT Command set. User can use a USB to TTL adapter plus the 3.5mm Program Cable to connect to RS485-BL to use AT command, as below.
933 +(% style="background-color:#dcdcdc" %)**AT+DR=5**   (%%)Set Data Rate
1025 1025  
1026 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image027.png]]
935 +(% style="background-color:#dcdcdc" %)**AT+TDC=60000** (%%) Set transmit interval to 60 seconds
1027 1027  
937 +(% style="background-color:#dcdcdc" %)**AT+CHS=868400000**(%%) Set transmit frequency to 868.4Mhz
1028 1028  
1029 -In PC, User needs to set **serial tool**(such as [[putty>>url:https://www.chiark.greenend.org.uk/~~sgtatham/putty/latest.html]], SecureCRT) baud rate to **9600** to access to access serial console of RS485-BL. The default password is 123456. Below is the output for reference:
939 +(% style="background-color:#dcdcdc" %)**AT+RX2FQ=868400000** (%%) Set RX2Frequency to 868.4Mhz (according to the result from server)
1030 1030  
1031 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image028.png]]
941 +(% style="background-color:#dcdcdc" %)**AT+RX2DR=5**  (%%) Set RX2DR to match the downlink DR from server. see below
1032 1032  
943 +(% style="background-color:#dcdcdc" %)**AT+DADDR=26** (%%) 01 1A F1 Set Device Address to 26 01 1A F1, this ID can be found in the LoRa Server portal.
1033 1033  
945 +(% style="background-color:#dcdcdc" %)**ATZ**       (%%) Reset MCU
1034 1034  
1035 -More detail AT Command manual can be found at [[AT Command Manual>>path:#AT_COMMAND]]
1036 1036  
948 +(% style="color:red" %)**Note:**
1037 1037  
950 +(% style="color:red" %)1. Make sure the device is set to ABP mode in the IoT Server.
951 +2. Make sure the LG01/02 gateway RX frequency is exactly the same as AT+CHS setting.
952 +3. Make sure SF / bandwidth setting in LG01/LG02 match the settings of AT+DR. refer [[this link>>url:http://www.dragino.com/downloads/index.php?dir=LoRa_Gateway/&file=LoRaWAN%201.0.3%20Regional%20Parameters.xlsx]] to see what DR means.
953 +4. The command AT+RX2FQ and AT+RX2DR is to let downlink work. to set the correct parameters, user can check the actually downlink parameters to be used. As below. Which shows the RX2FQ should use 868400000 and RX2DR should be 5
1038 1038  
1039 -1.
1040 -11. Common AT Command Sequence
1041 -111. Multi-channel ABP mode (Use with SX1301/LG308)
955 +[[image:1654162478620-421.png]]
1042 1042  
1043 -If device has not joined network yet:
1044 1044  
1045 -AT+FDR
958 += 6. FAQ =
1046 1046  
1047 -AT+NJM=0
960 +== 6.1 How to upgrade the image? ==
1048 1048  
1049 -ATZ
962 +The RS485-LN LoRaWAN Controller is shipped with a 3.5mm cable, the cable is used to upload image to RS485-LN to:
1050 1050  
1051 -
1052 -If device already joined network:
1053 -
1054 -AT+NJM=0
1055 -
1056 -ATZ
1057 -
1058 -1.
1059 -11.
1060 -111. Single-channel ABP mode (Use with LG01/LG02)
1061 -
1062 -AT+FDR   Reset Parameters to Factory Default, Keys Reserve
1063 -
1064 -AT+NJM=0 Set to ABP mode
1065 -
1066 -AT+ADR=0 Set the Adaptive Data Rate Off
1067 -
1068 -AT+DR=5  Set Data Rate
1069 -
1070 -AT+TDC=60000  Set transmit interval to 60 seconds
1071 -
1072 -AT+CHS=868400000 Set transmit frequency to 868.4Mhz
1073 -
1074 -AT+RX2FQ=868400000 Set RX2Frequency to 868.4Mhz (according to the result from server)
1075 -
1076 -AT+RX2DR=5  Set RX2DR to match the downlink DR from server. see below
1077 -
1078 -AT+DADDR=26 01 1A F1 Set Device Address to 26 01 1A F1, this ID can be found in the LoRa Server portal.
1079 -
1080 -ATZ          Reset MCU
1081 -
1082 -**Note:**
1083 -
1084 -1. Make sure the device is set to ABP mode in the IoT Server.
1085 -1. Make sure the LG01/02 gateway RX frequency is exactly the same as AT+CHS setting.
1086 -1. Make sure SF / bandwidth setting in LG01/LG02 match the settings of AT+DR. refer [[this link>>url:http://www.dragino.com/downloads/index.php?dir=LoRa_Gateway/&file=LoRaWAN%201.0.3%20Regional%20Parameters.xlsx]] to see what DR means.
1087 -1. The command AT+RX2FQ and AT+RX2DR is to let downlink work. to set the correct parameters, user can check the actually downlink parameters to be used. As below. Which shows the RX2FQ should use 868400000 and RX2DR should be 5
1088 -
1089 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image029.png]]
1090 -
1091 -
1092 -1. FAQ
1093 -11. How to upgrade the image?
1094 -
1095 -The RS485-BL LoRaWAN Controller is shipped with a 3.5mm cable, the cable is used to upload image to RS485-BL to:
1096 -
1097 1097  * Support new features
1098 1098  * For bug fix
1099 1099  * Change LoRaWAN bands.
1100 1100  
968 +Below shows the hardware connection for how to upload an image to RS485-LN:
1101 1101  
1102 -Below shows the hardware connection for how to upload an image to RS485-BL:
970 +[[image:1654162535040-878.png]]
1103 1103  
1104 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image030.png]]
1105 -
1106 1106  **Step1:** Download [[flash loader>>url:https://www.st.com/content/st_com/en/products/development-tools/software-development-tools/stm32-software-development-tools/stm32-programmers/flasher-stm32.html]].
1107 1107  
1108 1108  **Step2**: Download the [[LT Image files>>url:http://www.dragino.com/downloads/index.php?dir=LT_LoRa_IO_Controller/LT33222-L/image/]].
... ... @@ -1109,91 +1109,80 @@
1109 1109  
1110 1110  **Step3: **Open flashloader; choose the correct COM port to update.
1111 1111  
1112 -
1113 -|(((
1114 -HOLD PRO then press the RST button, SYS will be ON, then click next
978 +(((
979 +(% style="color:blue" %) Hold down the PRO button and then momentarily press the RST reset button and the SYS led will change from OFF to ON, While SYS LED is RED ON, it means the RS485-LN is ready to be program.
1115 1115  )))
1116 1116  
1117 -|(((
1118 -Board detected
1119 -)))
1120 1120  
1121 -|(((
1122 -
1123 -)))
983 +[[image:image-20220602175818-12.png]]
1124 1124  
1125 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image031.png]] [[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image032.png]]
1126 1126  
986 +[[image:image-20220602175848-13.png]]
1127 1127  
1128 1128  
1129 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image033.png]] [[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image034.png]]
989 +[[image:image-20220602175912-14.png]]
1130 1130  
1131 1131  
1132 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image035.png]] [[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image036.png]]
992 +**Notice**: In case user has lost the program cable. User can hand made one from a 3.5mm cable. The pin mapping is:
1133 1133  
994 +[[image:image-20220602175638-10.png]]
1134 1134  
1135 -1.
1136 -11. How to change the LoRa Frequency Bands/Region?
1137 1137  
1138 -User can follow the introduction for [[how to upgrade image>>path:#upgrade_image]]. When download the images, choose the required image file for download.
997 +== 6.2 How to change the LoRa Frequency Bands/Region? ==
1139 1139  
999 +User can follow the introduction for [[how to upgrade image>>||anchor="H6.1Howtoupgradetheimage3F"]]. When download the images, choose the required image file for download.
1140 1140  
1141 1141  
1142 -1.
1143 -11. How many RS485-Slave can RS485-BL connects?
1002 +== 6.3 How many RS485-Slave can RS485-BL connects? ==
1144 1144  
1004 +The RS485-BL can support max 32 RS485 devices. Each uplink command of RS485-BL can support max 16 different RS485 command. So RS485-BL can support max 16 RS485 devices pre-program in the device for uplink. For other devices no pre-program, user can use the [[downlink message (type code 0xA8) to poll their info>>||anchor="H3.3.3Configurereadcommandsforeachsampling"]].
1145 1145  
1146 -The RS485-BL can support max 32 RS485 devices. Each uplink command of RS485-BL can support max 16 different RS485 command. So RS485-BL can support max 16 RS485 devices pre-program in the device for uplink. For other devices no pre-program, user can use the [[downlink message (type code 0xA8) to poll their info>>path:#downlink_A8]].
1147 1147  
1007 +== 6.4 Compatible question to ChirpStack and TTI LoRaWAN server ? ==
1148 1148  
1009 +When user need to use with ChirpStack or TTI. Please set AT+RPL=4.
1149 1149  
1011 +Detail info check this link: [[Set Packet Receiving Response Level>>doc:Main.End Device AT Commands and Downlink Command.WebHome||anchor="H7.23SetPacketReceivingResponseLevel"]]
1150 1150  
1151 -1. Trouble Shooting     
1152 -11. Downlink doesn’t work, how to solve it?
1153 1153  
1154 -Please see this link for debug:
1014 += 7. Trouble Shooting =
1155 1155  
1156 -[[http:~~/~~/wiki.dragino.com/index.php?title=Main_Page#LoRaWAN_Communication_Debug>>url:http://wiki.dragino.com/index.php?title=Main_Page#LoRaWAN_Communication_Debug]]
1016 +== 7.1 Downlink doesnt work, how to solve it? ==
1157 1157  
1018 +Please see this link for debug: [[LoRaWAN Communication Debug>>doc:Main.LoRaWAN Communication Debug.WebHome]]
1158 1158  
1159 1159  
1160 -1.
1161 -11. Why I can’t join TTN V3 in US915 /AU915 bands?
1021 +== 7.2 Why I can’t join TTN V3 in US915 /AU915 bands? ==
1162 1162  
1163 -It might about the channels mapping. Please see for detail.
1023 +It might about the channels mapping. Please see for detail: [[Notice of Frequency band>>doc:Main.LoRaWAN Communication Debug.WebHome||anchor="H2.NoticeofUS9152FCN4702FAU915Frequencyband"]]
1164 1164  
1165 -[[http:~~/~~/wiki.dragino.com/index.php?title=LoRaWAN_Communication_Debug#Notice_of_US915.2FCN470.2FAU915_Frequency_band>>url:http://wiki.dragino.com/index.php?title=LoRaWAN_Communication_Debug#Notice_of_US915.2FCN470.2FAU915_Frequency_band]]
1166 1166  
1026 += 8. Order Info =
1167 1167  
1028 +(% style="color:blue" %)**Part Number: RS485-LN-XXX**
1168 1168  
1169 -1. Order Info
1030 +(% style="color:blue" %)**XXX:**
1170 1170  
1032 +* (% style="color:blue" %)**EU433**(%%): frequency bands EU433
1033 +* (% style="color:blue" %)**EU868**(%%): frequency bands EU868
1034 +* (% style="color:blue" %)**KR920**(%%): frequency bands KR920
1035 +* (% style="color:blue" %)**CN470**(%%): frequency bands CN470
1036 +* (% style="color:blue" %)**AS923**(%%): frequency bands AS923
1037 +* (% style="color:blue" %)**AU915**(%%): frequency bands AU915
1038 +* (% style="color:blue" %)**US915**(%%): frequency bands US915
1039 +* (% style="color:blue" %)**IN865**(%%): frequency bands IN865
1040 +* (% style="color:blue" %)**RU864**(%%): frequency bands RU864
1041 +* (% style="color:blue" %)**KZ865**(%%): frequency bands KZ865
1171 1171  
1172 -**Part Number: RS485-BL-XXX**
1043 += 9.Packing Info =
1173 1173  
1174 -**XXX:**
1175 1175  
1176 -* **EU433**: frequency bands EU433
1177 -* **EU868**: frequency bands EU868
1178 -* **KR920**: frequency bands KR920
1179 -* **CN470**: frequency bands CN470
1180 -* **AS923**: frequency bands AS923
1181 -* **AU915**: frequency bands AU915
1182 -* **US915**: frequency bands US915
1183 -* **IN865**: frequency bands IN865
1184 -* **RU864**: frequency bands RU864
1185 -* **KZ865: **frequency bands KZ865
1186 -
1187 -
1188 -1. Packing Info
1189 -
1190 1190  **Package Includes**:
1191 1191  
1192 -* RS485-BL x 1
1048 +* RS485-LN x 1
1193 1193  * Stick Antenna for LoRa RF part x 1
1194 1194  * Program cable x 1
1195 1195  
1196 -
1197 1197  **Dimension and weight**:
1198 1198  
1199 1199  * Device Size: 13.5 x 7 x 3 cm
... ... @@ -1201,10 +1201,32 @@
1201 1201  * Package Size / pcs : 14.5 x 8 x 5 cm
1202 1202  * Weight / pcs : 170g
1203 1203  
1059 += 10. FCC Caution for RS485LN-US915 =
1204 1204  
1205 -1. Support
1061 +Any Changes or modifications not expressly approved by the party responsible for compliance could void the user's authority to operate the equipment.
1206 1206  
1207 -* Support is provided Monday to Friday, from 09:00 to 18:00 GMT+8. Due to different timezones we cannot offer live support. However, your questions will be answered as soon as possible in the before-mentioned schedule.
1208 -* Provide as much information as possible regarding your enquiry (product models, accurately describe your problem and steps to replicate it etc) and send a mail to
1063 +This device complies with part 15 of the FCC Rules. Operation is subject to the following two conditions: (1) This device may not cause harmful interference, and (2) this device must accept any interference received, including interference that may cause undesired operation.
1209 1209  
1210 -[[support@dragino.com>>url:file:///D:/市场资料/说明书/LoRa/LT系列/support@dragino.com]]
1065 +
1066 +**IMPORTANT NOTE:**
1067 +
1068 +**Note: **This equipment has been tested and found to comply with the limits for a Class B digital device, pursuant to part 15 of the FCC Rules. These limits are designed to provide reasonable protection against harmful interference in a residential installation. This equipment generates, uses and can radiate radio frequency energy and, if not installed and used in accordance with the instructions, may cause harmful interference to radio communications. However, there is no guarantee that interference will not occur in a particular installation. If this equipment does cause harmful interference to radio or television reception, which can be determined by turning the equipment off and on, the user is encouraged to try to correct the interference by one or more of the following measures:
1069 +
1070 +—Reorient or relocate the receiving antenna.
1071 +
1072 +—Increase the separation between the equipment and receiver.
1073 +
1074 +—Connect the equipment into an outlet on a circuit different from that to which the receiver is connected.
1075 +
1076 +—Consult the dealer or an experienced radio/TV technician for help.
1077 +
1078 +
1079 +**FCC Radiation Exposure Statement:**
1080 +
1081 +This equipment complies with FCC radiation exposure limits set forth for an uncontrolled environment.This equipment should be installed and operated with minimum distance 20cm between the radiator& your body.
1082 +
1083 +
1084 += 11. Support =
1085 +
1086 +* Support is provided Monday to Friday, from 09:00 to 18:00 GMT+8. Due to different timezones we cannot offer live support. However, your questions will be answered as soon as possible in the before-mentioned schedule.
1087 +* Provide as much information as possible regarding your enquiry (product models, accurately describe your problem and steps to replicate it etc) and send a mail to [[support@dragino.com>>url:file:///D:/市场资料/说明书/LoRa/LT系列/support@dragino.com]].
1652953414711-647.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +119.3 KB
Content
1652953462722-299.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +202.7 KB
Content
1652953542269-423.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +118.5 KB
Content
1652953553383-907.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +94.0 KB
Content
1652953568895-172.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +109.3 KB
Content
1652954654347-831.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +138.7 KB
Content
1653266934636-343.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +176.5 KB
Content
1653267211009-519.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +138.7 KB
Content
1653268091319-405.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +399.3 KB
Content
1653268155545-638.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +113.7 KB
Content
1653268227651-549.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +1.3 MB
Content
1653269403619-508.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +27.8 KB
Content
1653269438444-278.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +26.6 KB
Content
1653269551753-223.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +138.7 KB
Content
1653269568276-930.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +131.4 KB
Content
1653269593172-426.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +142.6 KB
Content
1653269618463-608.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +27.7 KB
Content
1653269759169-150.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +294.0 KB
Content
1653269916228-732.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +143.3 KB
Content
1653270130359-810.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +197.8 KB
Content
1654157178836-407.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +179.9 KB
Content
1654157342174-798.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +31.9 KB
Content
1654158783574-851.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +40.6 KB
Content
1654159460680-153.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +24.9 KB
Content
1654160691922-496.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +109.3 KB
Content
1654162355560-817.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +670.0 KB
Content
1654162368066-342.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +192.9 KB
Content
1654162478620-421.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +158.9 KB
Content
1654162535040-878.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +670.0 KB
Content
image-20220519174512-1.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +32.2 KB
Content
image-20220519174512-2.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +42.7 KB
Content
image-20220519174512-3.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +36.3 KB
Content
image-20220519174512-4.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +19.1 KB
Content
image-20220602153621-1.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +23.4 KB
Content
image-20220602153621-2.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +22.2 KB
Content
image-20220602153621-3.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +22.3 KB
Content
image-20220602155039-4.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +24.6 KB
Content
image-20220602163333-5.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +48.2 KB
Content
image-20220602165351-6.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +10.6 KB
Content
image-20220602165351-7.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +19.3 KB
Content
image-20220602171200-8.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +276.1 KB
Content
image-20220602171200-9.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +10.0 KB
Content
image-20220602175638-10.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +85.5 KB
Content
image-20220602175743-11.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +85.5 KB
Content
image-20220602175818-12.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +102.5 KB
Content
image-20220602175848-13.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +250.9 KB
Content
image-20220602175912-14.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +176.1 KB
Content