Last modified by Xiaoling on 2025/04/23 15:57

From version 3.2
edited by Xiaoling
on 2022/05/19 17:30
Change comment: There is no comment for this version
To version 38.1
edited by Xiaoling
on 2022/06/02 10:26
Change comment: Uploaded new attachment "image-20220602102605-1.png", version {1}

Summary

Details

Page properties
Content
... ... @@ -1,7 +1,6 @@
1 1  (% style="text-align:center" %)
2 2  [[image:1652947681187-144.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  
7 7  
... ... @@ -8,12 +8,15 @@
8 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 +
17 17  = 1.Introduction =
18 18  
19 19  == 1.1 What is RS485-BL RS485 to LoRaWAN Converter ==
... ... @@ -23,19 +23,19 @@
23 23  )))
24 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.
28 +The Dragino RS485-BL is a (% style="color:blue" %)**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 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.
32 +RS485-BL can interface to RS485 sensor, 3.3v/5v UART sensor or interrupt sensor. RS485-BL provides (% style="color:blue" %)**a 3.3v output**(%%) and** (% style="color:blue" %)a 5v output(%%)** to power external sensors. Both output voltages are controllable to minimize the total system power consumption.
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.
36 +RS485-BL is IP67 (% style="color:blue" %)**waterproof**(%%) and powered by (% style="color:blue" %)**8500mAh Li-SOCI2 battery**(%%), it is designed for long term use for several years.
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.
40 +RS485-BL runs standard (% style="color:blue" %)**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  )))
40 40  
41 41  (((
... ... @@ -50,21 +50,21 @@
50 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 51  )))
52 52  
53 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image002.png]]
55 +[[image:1652953304999-717.png||height="424" width="733"]]
54 54  
57 +
58 +
55 55  == 1.2 Specifications ==
56 56  
61 +
57 57  **Hardware System:**
58 58  
59 59  * STM32L072CZT6 MCU
60 -* SX1276/78 Wireless Chip
65 +* SX1276/78 Wireless Chip 
61 61  * Power Consumption (exclude RS485 device):
62 62  ** Idle: 6uA@3.3v
63 -
64 -*
65 65  ** 20dB Transmit: 130mA@3.3v
66 66  
67 -
68 68  **Interface for Model:**
69 69  
70 70  * 1 x RS485 Interface
... ... @@ -74,7 +74,6 @@
74 74  * 1 x Interrupt Interface
75 75  * 1 x Controllable 5V output, max
76 76  
77 -
78 78  **LoRa Spec:**
79 79  
80 80  * Frequency Range:
... ... @@ -91,11 +91,10 @@
91 91  * Built-in bit synchronizer for clock recovery.
92 92  * Preamble detection.
93 93  * 127 dB Dynamic Range RSSI.
94 -* Automatic RF Sense and CAD with ultra-fast AFC.
95 +* Automatic RF Sense and CAD with ultra-fast AFC. ​​​
95 95  
97 +== 1.3 Features ==
96 96  
97 -*
98 -*1. Features
99 99  * LoRaWAN Class A & Class C protocol (default Class A)
100 100  * Frequency Bands: CN470/EU433/KR920/US915/EU868/AS923/AU915/IN865/RU864
101 101  * AT Commands to change parameters
... ... @@ -105,9 +105,8 @@
105 105  * Support Modbus protocol
106 106  * Support Interrupt uplink
107 107  
108 +== 1.4 Applications ==
108 108  
109 -*
110 -*1. Applications
111 111  * Smart Buildings & Home Automation
112 112  * Logistics and Supply Chain Management
113 113  * Smart Metering
... ... @@ -115,264 +115,305 @@
115 115  * Smart Cities
116 116  * Smart Factory
117 117  
117 +== 1.5 Firmware Change log ==
118 118  
119 -1.
120 -11. Firmware Change log
119 +[[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);"]]
121 121  
122 -[[RS485-BL Image files – Download link and Change log>>url:http://www.dragino.com/downloads/index.php?dir=LoRa_End_Node/RS485-BL/Firmware/]]
123 123  
122 +== 1.6 Hardware Change log ==
124 124  
125 -1.
126 -11. Hardware Change log
124 +(((
125 +
127 127  
128 -
129 129  v1.4
128 +)))
130 130  
130 +(((
131 131  ~1. Change Power IC to TPS22916
132 +)))
132 132  
133 133  
135 +(((
134 134  v1.3
137 +)))
135 135  
139 +(((
136 136  ~1. Change JP3 from KF350-8P to KF350-11P, Add one extra interface for I2C and one extra interface for one-wire
141 +)))
137 137  
138 138  
144 +(((
139 139  v1.2
146 +)))
140 140  
141 -Release version
148 +(((
149 +Release version ​​​​​
142 142  
151 +
152 +)))
143 143  
154 += 2. Pin mapping and Power ON Device =
144 144  
145 -
146 -
147 -1. Pin mapping and Power ON Device
148 -
156 +(((
149 149  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.
158 +)))
150 150  
160 +[[image:1652953055962-143.png||height="387" width="728"]]
151 151  
152 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image003.png]]
153 153  
154 -
155 -
156 156  The Left TXD and RXD are TTL interface for external sensor. TTL level is controlled by 3.3/5v Jumper.
157 157  
158 158  
166 += 3. Operation Mode =
159 159  
168 +== 3.1 How it works? ==
160 160  
161 -
162 -
163 -1. Operation Mode
164 -11. How it works?
165 -
170 +(((
166 166  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.
167 167  
173 +
174 +)))
168 168  
169 -1.
170 -11. Example to join LoRaWAN network
176 +== 3.2 Example to join LoRaWAN network ==
171 171  
172 -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.
178 +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. 
173 173  
174 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image004.png]]
180 +[[image:1652953414711-647.png||height="337" width="723"]]
175 175  
176 -
182 +(((
177 177  The RS485-BL in this example connected to two RS485 devices for demonstration, user can connect to other RS485 devices via the same method.
184 +)))
178 178  
179 -
186 +(((
180 180  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:
188 +)))
181 181  
190 +(((
182 182  **Step 1**: Create a device in TTN V3 with the OTAA keys from RS485-BL.
192 +)))
183 183  
194 +(((
184 184  Each RS485-BL is shipped with a sticker with unique device EUI:
196 +)))
185 185  
186 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image005.png]]
198 +[[image:1652953462722-299.png]]
187 187  
188 -
189 -
190 -
200 +(((
191 191  User can enter this key in their LoRaWAN Server portal. Below is TTN V3 screen shot:
202 +)))
192 192  
204 +(((
193 193  Add APP EUI in the application.
206 +)))
194 194  
195 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image006.png]]
196 196  
197 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image007.png]]
209 +[[image:image-20220519174512-1.png]]
198 198  
199 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image008.png]]
211 +[[image:image-20220519174512-2.png||height="328" width="731"]]
200 200  
201 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image009.png]]
213 +[[image:image-20220519174512-3.png||height="556" width="724"]]
202 202  
215 +[[image:image-20220519174512-4.png]]
203 203  
204 -
205 -
206 -
207 -
208 -
209 -
210 -
211 -
212 -
213 -
214 -
215 -
216 -
217 -
218 -
219 219  You can also choose to create the device manually.
220 220  
221 -|(((
222 -
223 -)))
219 +[[image:1652953542269-423.png||height="710" width="723"]]
224 224  
225 -
226 -
227 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image010.png]]
228 -
229 229  Add APP KEY and DEV EUI
230 230  
231 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image011.png]]
223 +[[image:1652953553383-907.png||height="514" width="724"]]
232 232  
233 233  
226 +(((
234 234  **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.
228 +)))
235 235  
236 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image012.png]]
230 +[[image:1652953568895-172.png||height="232" width="724"]]
237 237  
238 238  
233 +== 3.3 Configure Commands to read data ==
239 239  
235 +(((
236 +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>>||anchor="H3.5ConfigureRS485-BLviaATorDownlink"]] Command to configure how RS485-BL should read the sensor and how to handle the return from RS485 or TTL sensors.
240 240  
241 -1.
242 -11. Configure Commands to read data
238 +
239 +)))
243 243  
244 -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.
241 +=== 3.3.1 onfigure UART settings for RS485 or TTL communication ===
245 245  
246 -
247 -1.
248 -11.
249 -111. Configure UART settings for RS485 or TTL communication
250 -
251 251  RS485-BL can connect to either RS485 sensors or TTL sensor. User need to specify what type of sensor need to connect.
252 252  
253 -1. RS485-MODBUS mode:
245 +**~1. RS485-MODBUS mode:**
254 254  
255 255  AT+MOD=1 ~/~/ Support RS485-MODBUS type sensors. User can connect multiply RS485 , Modbus sensors to the A / B pins.
256 256  
249 +**2. TTL mode:**
257 257  
258 -1. TTL mode:
259 -
260 260  AT+MOD=2 ~/~/ Support TTL Level sensors, User can connect one TTL Sensor to the TXD/RXD/GND pins.
261 261  
262 -
263 263  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.
264 264  
265 -
266 -|**AT Commands**|**Description**|**Example**
267 -|AT+BAUDR|Set the baud rate (for RS485 connection). Default Value is: 9600.|(((
255 +(% border="1" style="background-color:#ffffcc; color:green; width:795px" %)
256 +|(((
257 +**AT Commands**
258 +)))|(% style="width:285px" %)(((
259 +**Description**
260 +)))|(% style="width:347px" %)(((
261 +**Example**
262 +)))
263 +|(((
264 +AT+BAUDR
265 +)))|(% style="width:285px" %)(((
266 +Set the baud rate (for RS485 connection). Default Value is: 9600.
267 +)))|(% style="width:347px" %)(((
268 +(((
268 268  AT+BAUDR=9600
270 +)))
269 269  
272 +(((
270 270  Options: (1200,2400,4800,14400,19200,115200)
271 271  )))
272 -|AT+PARITY|(((
275 +)))
276 +|(((
277 +AT+PARITY
278 +)))|(% style="width:285px" %)(((
279 +(((
273 273  Set UART parity (for RS485 connection)
281 +)))
274 274  
283 +(((
275 275  Default Value is: no parity.
276 -)))|(((
285 +)))
286 +)))|(% style="width:347px" %)(((
287 +(((
277 277  AT+PARITY=0
289 +)))
278 278  
291 +(((
279 279  Option: 0: no parity, 1: odd parity, 2: even parity
280 280  )))
281 -|AT+STOPBIT|(((
294 +)))
295 +|(((
296 +AT+STOPBIT
297 +)))|(% style="width:285px" %)(((
298 +(((
282 282  Set serial stopbit (for RS485 connection)
300 +)))
283 283  
302 +(((
284 284  Default Value is: 1bit.
285 -)))|(((
304 +)))
305 +)))|(% style="width:347px" %)(((
306 +(((
286 286  AT+STOPBIT=0 for 1bit
308 +)))
287 287  
310 +(((
288 288  AT+STOPBIT=1 for 1.5 bit
312 +)))
289 289  
314 +(((
290 290  AT+STOPBIT=2 for 2 bits
291 291  )))
317 +)))
292 292  
319 +=== 3.3.2 Configure sensors ===
293 293  
321 +(((
322 +Some sensors might need to configure before normal operation. User can configure such sensor via PC or through RS485-BL AT Commands (% style="color:#4f81bd" %)**AT+CFGDEV**.
323 +)))
294 294  
325 +(((
326 +When user issue an (% style="color:#4f81bd" %)**AT+CFGDEV**(%%) command, Each (% style="color:#4f81bd" %)**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.
327 +)))
295 295  
296 -
297 -1.
298 -11.
299 -111. Configure sensors
300 -
301 -Some sensors might need to configure before normal operation. User can configure such sensor via PC or through RS485-BL AT Commands AT+CFGDEV.
302 -
303 -
304 -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.
305 -
306 -|**AT Commands**|**Description**|**Example**
307 -|AT+CFGDEV|(((
329 +(% border="1" style="background-color:#ffffcc; color:green; width:806px" %)
330 +|**AT Commands**|(% style="width:418px" %)**Description**|(% style="width:256px" %)**Example**
331 +|AT+CFGDEV|(% style="width:418px" %)(((
308 308  This command is used to configure the RS485/TTL devices; they won’t be used during sampling.
309 309  
310 -AT+CFGDEV=xx xx xx xx xx xx xx xx xx xx xx xx,m
334 +AT+CFGDEV=xx xx xx xx xx xx xx xx xx xx xx xx,
311 311  
312 -m: 0: no CRC, 1: add CRC-16/MODBUS in the end of this command
313 -)))|AT+CFGDEV=xx xx xx xx xx xx xx xx xx xx xx xx,m
336 +mm: 0: no CRC, 1: add CRC-16/MODBUS in the end of this command
337 +)))|(% style="width:256px" %)AT+CFGDEV=xx xx xx xx xx xx xx xx xx xx xx xx,m
314 314  
315 -Detail of AT+CFGDEV command see [[AT+CFGDEV detail>>path:#AT_CFGDEV]].
339 +Detail of AT+CFGDEV command see [[AT+CFGDEV detail>>||anchor="HRS485DebugCommand28AT2BCFGDEV29"]].
316 316  
317 317  
342 +=== 3.3.3 Configure read commands for each sampling ===
318 318  
319 -
320 -
321 -1.
322 -11.
323 -111. Configure read commands for each sampling
324 -
344 +(((
325 325  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.
346 +)))
326 326  
327 -
348 +(((
328 328  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.
350 +)))
329 329  
330 -
352 +(((
331 331  To save the LoRaWAN network bandwidth, we might need to read data from different sensors and combine their valid value into a short payload.
354 +)))
332 332  
333 -
356 +(((
334 334  This section describes how to achieve above goals.
358 +)))
335 335  
336 -
360 +(((
337 337  During each sampling, the RS485-BL can support 15 commands to read sensors. And combine the return to one or several uplink payloads.
362 +)))
338 338  
339 -
364 +(((
340 340  **Command from RS485-BL to Sensor:**
366 +)))
341 341  
368 +(((
342 342  RS485-BL can send out pre-set max 15 strings via **AT+COMMAD1**, **ATCOMMAND2**,…, to **AT+COMMANDF** . All commands are of same grammar.
370 +)))
343 343  
344 -
372 +(((
345 345  **Handle return from sensors to RS485-BL**:
374 +)))
346 346  
376 +(((
347 347  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**
378 +)))
348 348  
380 +* (((
381 +**AT+DATACUT**
382 +)))
349 349  
350 -* **AT+DATACUT**
351 -
384 +(((
352 352  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.
386 +)))
353 353  
388 +* (((
389 +**AT+SEARCH**
390 +)))
354 354  
355 -* **AT+SEARCH**
356 -
392 +(((
357 357  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.
394 +)))
358 358  
359 -
396 +(((
360 360  **Define wait timeout:**
398 +)))
361 361  
400 +(((
362 362  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
402 +)))
363 363  
364 -
404 +(((
365 365  After we got the valid value from each RS485 commands, we need to combine them together with the command **AT+DATAUP**.
406 +)))
366 366  
367 -
368 368  **Examples:**
369 369  
370 370  Below are examples for the how above AT Commands works.
371 371  
372 -
373 373  **AT+COMMANDx : **This command will be sent to RS485/TTL devices during each sampling, Max command length is 14 bytes. The grammar is:
374 374  
375 -|(((
414 +(% border="1" class="table-bordered" style="background-color:#4f81bd; color:white; width:501px" %)
415 +|(% style="width:498px" %)(((
376 376  **AT+COMMANDx=xx xx xx xx xx xx xx xx xx xx xx xx,m**
377 377  
378 378  **xx xx xx xx xx xx xx xx xx xx xx xx: The RS485 command to be sent**
... ... @@ -384,140 +384,182 @@
384 384  
385 385  In the RS485-BL, we should use this command AT+COMMAND1=01 03 0B B8 00 02,1 for the same.
386 386  
387 -
388 388  **AT+SEARCHx**: This command defines how to handle the return from AT+COMMANDx.
389 389  
390 -|(((
429 +(% border="1" class="table-bordered" style="background-color:#4f81bd; color:white; width:580px" %)
430 +|(% style="width:577px" %)(((
391 391  **AT+SEARCHx=aa,xx xx xx xx xx**
392 392  
393 393  * **aa: 1: prefix match mode; 2: prefix and suffix match mode**
394 394  * **xx xx xx xx xx: match string. Max 5 bytes for prefix and 5 bytes for suffix**
395 -
396 -
397 397  )))
398 398  
399 -Examples:
437 +**Examples:**
400 400  
401 -1. For a return string from AT+COMMAND1: 16 0c 1e 56 34 2e 30 58 5f 36 41 30 31 00 49
439 +1For a return string from AT+COMMAND1: 16 0c 1e 56 34 2e 30 58 5f 36 41 30 31 00 49
402 402  
403 403  If we set AT+SEARCH1=1,1E 56 34.      (max 5 bytes for prefix)
404 404  
405 -The valid data will be all bytes after 1E 56 34 , so it is 2e 30 58 5f 36 41 30 31 00 49
443 +The valid data will be all bytes after 1E 56 34 , so it is (% style="background-color:yellow" %)**2e 30 58 5f 36 41 30 31 00 49**
406 406  
407 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image013.png]]
445 +[[image:1653271044481-711.png]]
408 408  
447 +2)For a return string from AT+COMMAND1:  16 0c 1e 56 34 2e 30 58 5f 36 41 30 31 00 49
409 409  
410 -1. For a return string from AT+COMMAND1:  16 0c 1e 56 34 2e 30 58 5f 36 41 30 31 00 49
411 -
412 412  If we set AT+SEARCH1=2, 1E 56 34+31 00 49
413 413  
414 -Device will search the bytes between 1E 56 34 and 31 00 49. So it is 2e 30 58 5f 36 41 30
451 +Device will search the bytes between 1E 56 34 and 31 00 49. So it is(% style="background-color:yellow" %) **2e 30 58 5f 36 41 30**
415 415  
416 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image014.png]]
453 +[[image:1653271276735-972.png]]
417 417  
418 -
419 419  **AT+DATACUTx : **This command defines how to handle the return from AT+COMMANDx, max return length is 45 bytes.
420 420  
421 -|(((
457 +(% style="background-color:#4f81bd; color:white; width:729px" %)
458 +|(% style="width:726px" %)(((
422 422  **AT+DATACUTx=a,b,c**
423 423  
424 424  * **a: length for the return of AT+COMMAND**
425 425  * **b:1: grab valid value by byte, max 6 bytes. 2: grab valid value by bytes section, max 3 sections.**
426 -* **c: define the position for valid value. **
463 +* **c: define the position for valid value.  **
427 427  )))
428 428  
429 -Examples:
466 +**Examples:**
430 430  
431 431  * Grab bytes:
432 432  
433 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image015.png]]
470 +[[image:1653271581490-837.png||height="313" width="722"]]
434 434  
472 +
435 435  * Grab a section.
436 436  
437 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image016.png]]
475 +[[image:1653271648378-342.png||height="326" width="720"]]
438 438  
477 +
439 439  * Grab different sections.
440 440  
441 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image017.png]]
480 +[[image:1653271657255-576.png||height="305" width="730"]]
442 442  
482 +(((
483 +(% style="color:red" %)**Note:**
484 +)))
443 443  
444 -Note:
445 -
486 +(((
446 446  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.
488 +)))
447 447  
448 -Example:
490 +(((
491 +**Example:**
492 +)))
449 449  
450 -AT+COMMAND1=11 01 1E D0,0
494 +(((
495 +(% style="color:red" %)AT+COMMAND1=11 01 1E D0,0
496 +)))
451 451  
452 -AT+SEARCH1=1,1E 56 34
498 +(((
499 +(% style="color:red" %)AT+SEARCH1=1,1E 56 34
500 +)))
453 453  
454 -AT+DATACUT1=0,2,1~~5
502 +(((
503 +(% style="color:red" %)AT+DATACUT1=0,2,1~~5
504 +)))
455 455  
456 -Return string from AT+COMMAND1: 16 0c 1e 56 34 2e 30 58 5f 36 41 30 31 00 49
506 +(((
507 +(% style="color:red" %)Return string from AT+COMMAND1: 16 0c 1e 56 34 2e 30 58 5f 36 41 30 31 00 49
508 +)))
457 457  
458 -String after SEARCH command: 2e 30 58 5f 36 41 30 31 00 49
510 +(((
511 +(% style="color:red" %)String after SEARCH command: 2e 30 58 5f 36 41 30 31 00 49
512 +)))
459 459  
460 -Valid payload after DataCUT command: 2e 30 58 5f 36
514 +(((
515 +(% style="color:red" %)Valid payload after DataCUT command: 2e 30 58 5f 36
516 +)))
461 461  
462 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image018.png]]
518 +[[image:1653271763403-806.png]]
463 463  
464 464  
521 +=== 3.3.4 Compose the uplink payload ===
465 465  
466 -
467 -1.
468 -11.
469 -111. Compose the uplink payload
470 -
523 +(((
471 471  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.**
525 +)))
472 472  
527 +(((
528 +(% style="color:#037691" %)**Examples: AT+DATAUP=0**
529 +)))
473 473  
474 -**Examples: AT+DATAUP=0**
531 +(((
532 +Compose the uplink payload with value returns in sequence and send with (% style="color:red" %)**A SIGNLE UPLINK**.
533 +)))
475 475  
476 -Compose the uplink payload with value returns in sequence and send with **A SIGNLE UPLINK**.
477 -
535 +(((
478 478  Final Payload is
537 +)))
479 479  
480 -Battery Info+PAYVER + VALID Value from RETURN1 + Valid Value from RETURN2 + … + RETURNx
539 +(((
540 +(% style="color:#4f81bd" %)**Battery Info+PAYVER + VALID Value from RETURN1 + Valid Value from RETURN2 + … + RETURNx**
541 +)))
481 481  
543 +(((
482 482  Where PAYVER is defined by AT+PAYVER, below is an example screen shot.
545 +)))
483 483  
484 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image019.png]]
547 +[[image:1653272787040-634.png||height="515" width="719"]]
485 485  
486 486  
487 487  
488 -**Examples: AT+DATAUP=1**
551 +(((
552 +(% style="color:#037691" %)**Examples: AT+DATAUP=1**
489 489  
490 -Compose the uplink payload with value returns in sequence and send with **Multiply UPLINKs**.
554 +
555 +)))
491 491  
557 +(((
558 +Compose the uplink payload with value returns in sequence and send with (% style="color:red" %)**Multiply UPLINKs**.
559 +)))
560 +
561 +(((
492 492  Final Payload is
563 +)))
493 493  
494 -Battery Info+PAYVER + PAYLOAD COUNT + PAYLOAD# + DATA
565 +(((
566 +(% style="color:#4f81bd" %)**Battery Info+PAYVER + PAYLOAD COUNT + PAYLOAD# + DATA**
567 +)))
495 495  
496 -1. Battery Info (2 bytes): Battery voltage
497 -1. PAYVER (1 byte): Defined by AT+PAYVER
498 -1. PAYLOAD COUNT (1 byte): Total how many uplinks of this sampling.
499 -1. PAYLOAD# (1 byte): Number of this uplink. (from 0,1,2,3…,to PAYLOAD COUNT)
500 -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
569 +1. (((
570 +Battery Info (2 bytes): Battery voltage
571 +)))
572 +1. (((
573 +PAYVER (1 byte): Defined by AT+PAYVER
574 +)))
575 +1. (((
576 +PAYLOAD COUNT (1 byte): Total how many uplinks of this sampling.
577 +)))
578 +1. (((
579 +PAYLOAD# (1 byte): Number of this uplink. (from 0,1,2,3…,to PAYLOAD COUNT)
580 +)))
581 +1. (((
582 +DATA: Valid value: max 6 bytes(US915 version here, Notice*!) for each uplink so each uplink <= 11 bytes. For the last uplink, DATA will might less than 6 bytes
583 +)))
501 501  
502 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image020.png]]
585 +[[image:1653272817147-600.png||height="437" width="717"]]
503 503  
504 -
505 505  So totally there will be 3 uplinks for this sampling, each uplink includes 6 bytes DATA
506 506  
507 -DATA1=RETURN1 Valid Value = 20 20 0a 33 90 41
508 508  
509 -DATA2=1^^st^^ ~~ 6^^th^^ byte of Valid value of RETURN10= 02 aa 05 81 0a 20
590 +DATA1=RETURN1 Valid Value = (% style="background-color:#4f81bd; color:white" %) 20 20 0a 33 90 41
510 510  
511 -DATA3=7^^th^^ ~~ 11^^th^^ bytes of Valid value of RETURN10 = 20 20 20 2d 30
592 +DATA2=1^^st^^ ~~ 6^^th^^ byte of Valid value of RETURN10= (% style="background-color:#4f81bd; color:white" %)02 aa 05 81 0a 20
512 512  
594 +DATA3=7^^th^^ ~~ 11^^th^^ bytes of Valid value of RETURN10 =(% style="background-color:#4f81bd; color:white" %) 20 20 20 2d 30
513 513  
514 514  
515 515  Below are the uplink payloads:
516 516  
517 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image021.png]]
599 +[[image:1653272901032-107.png]]
518 518  
519 519  
520 -Notice: the Max bytes is according to the max support bytes in different Frequency Bands for lowest SF. As below:
602 +(% style="color:red" %)Notice: the Max bytes is according to the max support bytes in different Frequency Bands for lowest SF. As below:
521 521  
522 522   ~* For AU915/AS923 bands, if UplinkDwell time=0, max 51 bytes for each uplink ( so 51 -5 = 46 max valid date)
523 523  
... ... @@ -529,143 +529,186 @@
529 529  
530 530  
531 531  
532 -1.
533 -11.
534 -111. Uplink on demand
614 +=== 3.3.5 Uplink on demand ===
535 535  
616 +(((
536 536  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.
618 +)))
537 537  
620 +(((
538 538  Downlink control command:
622 +)))
539 539  
540 -[[0x08 command>>path:#downlink_08]]: Poll an uplink with current command set in RS485-BL.
624 +(((
625 +**0x08 command**: Poll an uplink with current command set in RS485-BL.
626 +)))
541 541  
542 -[[0xA8 command>>path:#downlink_A8]]: Send a command to RS485-BL and uplink the output from sensors.
628 +(((
629 +**0xA8 command**: Send a command to RS485-BL and uplink the output from sensors.
543 543  
631 +
632 +)))
544 544  
634 +=== 3.3.6 Uplink on Interrupt ===
545 545  
546 -1.
547 -11.
548 -111. Uplink on Interrupt
636 +Put the interrupt sensor between 3.3v_out and GPIO ext.
549 549  
550 -Put the interrupt sensor between 3.3v_out and GPIO ext.[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image022.png]]
638 +[[image:1653273818896-432.png]]
551 551  
640 +
641 +(((
552 552  AT+INTMOD=0  Disable Interrupt
643 +)))
553 553  
645 +(((
554 554  AT+INTMOD=1  Interrupt trigger by rising or falling edge.
647 +)))
555 555  
649 +(((
556 556  AT+INTMOD=2  Interrupt trigger by falling edge. ( Default Value)
651 +)))
557 557  
653 +(((
558 558  AT+INTMOD=3  Interrupt trigger by rising edge.
559 559  
656 +
657 +)))
560 560  
561 -1.
562 -11. Uplink Payload
659 +== 3.4 Uplink Payload ==
563 563  
564 -
565 -|**Size(bytes)**|**2**|**1**|**Length depends on the return from the commands**
566 -|Value|(((
661 +(% border="1" style="background-color:#4f81bd; color:white; width:850px" %)
662 +|**Size(bytes)**|(% style="width:130px" %)**2**|(% style="width:93px" %)**1**|(% style="width:509px" %)**Length depends on the return from the commands**
663 +|Value|(% style="width:130px" %)(((
664 +(((
567 567  Battery(mV)
666 +)))
568 568  
668 +(((
569 569  &
670 +)))
570 570  
672 +(((
571 571  Interrupt _Flag
572 -)))|(((
674 +)))
675 +)))|(% style="width:93px" %)(((
573 573  PAYLOAD_VER
574 574  
575 575  
576 -)))|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.
679 +)))|(% style="width:509px" %)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.
577 577  
578 578  Below is the decoder for the first 3 bytes. The rest bytes are dynamic depends on different RS485 sensors.
579 579  
683 +(((
684 +{{{function Decoder(bytes, port) {}}}
685 +)))
580 580  
581 -function Decoder(bytes, port) {
687 +(((
688 +{{{//Payload Formats of RS485-BL Deceive}}}
689 +)))
582 582  
583 -~/~/Payload Formats of RS485-BL Deceive
691 +(((
692 +{{{return {}}}
693 +)))
584 584  
585 -return {
695 +(((
696 +{{{ //Battery,units:V}}}
697 +)))
586 586  
587 - ~/~/Battery,units:V
699 +(((
700 +{{{ BatV:((bytes[0]<<8 | bytes[1])&0x7fff)/1000,}}}
701 +)))
588 588  
589 - BatV:((bytes[0]<<8 | bytes[1])&0x7fff)/1000,
703 +(((
704 +{{{ //GPIO_EXTI }}}
705 +)))
590 590  
591 - ~/~/GPIO_EXTI 
707 +(((
708 +{{{ EXTI_Trigger:(bytes[0] & 0x80)? "TRUE":"FALSE",}}}
709 +)))
592 592  
593 - EXTI_Trigger:(bytes[0] & 0x80)? "TRUE":"FALSE",
711 +(((
712 +{{{ //payload of version}}}
713 +)))
594 594  
595 - ~/~/payload of version
715 +(((
716 +{{{ Pay_ver:bytes[2],}}}
717 +)))
596 596  
597 - Pay_ver:bytes[2],
719 +(((
720 +{{{ }; }}}
721 +)))
598 598  
599 - };
723 +(((
724 +}
600 600  
601 - }
726 +
727 +)))
602 602  
603 -
604 -
605 -
606 -
607 -
608 -
729 +(((
609 609  TTN V3 uplink screen shot.
731 +)))
610 610  
611 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image023.png]]
733 +[[image:1653274001211-372.png||height="192" width="732"]]
612 612  
613 -1.
614 -11. Configure RS485-BL via AT or Downlink
615 615  
616 -User can configure RS485-BL via [[AT Commands >>path:#_​Using_the_AT]]or LoRaWAN Downlink Commands
736 +== 3.5 Configure RS485-BL via AT or Downlink ==
617 617  
738 +User can configure RS485-BL via AT Commands or LoRaWAN Downlink Commands
739 +
618 618  There are two kinds of Commands:
619 619  
620 -* **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
742 +* (% 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: [[End Device AT Commands and Downlink Command>>doc:Main.End Device AT Commands and Downlink Command.WebHome]]
621 621  
622 -* **Sensor Related Commands**: These commands are special designed for RS485-BL.  User can see these commands below:
744 +* (% style="color:#4f81bd" %)**Sensor Related Commands**(%%): These commands are special designed for RS485-BL.  User can see these commands below:
623 623  
746 +=== 3.5.1 Common Commands: ===
624 624  
625 -1.
626 -11.
627 -111. Common Commands:
748 +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]]
628 628  
629 629  
630 -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]]
751 +=== 3.5.2 Sensor related commands: ===
631 631  
753 +==== ====
632 632  
633 -1.
634 -11.
635 -111. Sensor related commands:
755 +==== **Choose Device Type (RS485 or TTL)** ====
636 636  
637 -
638 -==== Choose Device Type (RS485 or TTL) ====
639 -
640 640  RS485-BL can connect to either RS485 sensors or TTL sensor. User need to specify what type of sensor need to connect.
641 641  
642 -* AT Command
759 +* **AT Command**
643 643  
761 +(% class="box infomessage" %)
762 +(((
644 644  **AT+MOD=1** ~/~/ Set to support RS485-MODBUS type sensors. User can connect multiply RS485 , Modbus sensors to the A / B pins.
764 +)))
645 645  
766 +(% class="box infomessage" %)
767 +(((
646 646  **AT+MOD=2** ~/~/ Set to support TTL Level sensors, User can connect one TTL Sensor to the TXD/RXD/GND pins.
769 +)))
647 647  
648 648  
649 -* Downlink Payload
772 +* **Downlink Payload**
650 650  
651 -**0A aa**     à same as AT+MOD=aa
774 +**0A aa**  ~-~->  same as AT+MOD=aa
652 652  
653 653  
654 654  
655 -==== [[RS485 Debug Command>>path:#downlink_A8]] (AT+CFGDEV) ====
778 +==== **RS485 Debug Command (AT+CFGDEV)** ====
656 656  
657 657  This command is used to configure the RS485 or TTL sensors; they won’t be used during sampling.
658 658  
659 -* AT Command
782 +* **AT Command**
660 660  
661 -AT+CFGDEV=xx xx xx xx xx xx xx xx xx xx xx xx,m
784 +(% class="box infomessage" %)
785 +(((
786 +**AT+CFGDEV=xx xx xx xx xx xx xx xx xx xx xx xx,m**
787 +)))
662 662  
663 663  m: 0: no CRC; 1: add CRC-16/MODBUS in the end of this command.
664 664  
665 665  
792 +* **Downlink Payload**
666 666  
667 -* Downlink Payload
668 -
669 669  Format: A8 MM NN XX XX XX XX YY
670 670  
671 671  Where:
... ... @@ -675,20 +675,19 @@
675 675  * XX XX XX XX: RS485 command total NN bytes
676 676  * 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
677 677  
678 -
679 679  **Example 1:**
680 680  
681 681  To connect a Modbus Alarm with below commands.
682 682  
683 -* 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.
807 +* 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.
684 684  
685 -* The command to deactivate alarm is: 0A 05 00 04 00 00 8D 70. Where 0A 05 00 04 00 00 is the Modbus command to read the register 00 40 where stored the DI status. The 8D 70 is the CRC-16/MODBUS which calculate manually.
809 +* The command to deactivate alarm is: 0A 05 00 04 00 00 **8D 70**. Where 0A 05 00 04 00 00 is the Modbus command to read the register 00 40 where stored the DI status. The 8D 70 is the CRC-16/MODBUS which calculate manually.
686 686  
687 687  So if user want to use downlink command to control to RS485 Alarm, he can use:
688 688  
689 -**A8 01 06 0A 05 00 04 00 01 00**: to activate the RS485 Alarm
813 +(% style="color:#037691" %)**A8 01 06 0A 05 00 04 00 01 00**(%%): to activate the RS485 Alarm
690 690  
691 -**A8 01 06 0A 05 00 04 00 00 00**: to deactivate the RS485 Alarm
815 +(% style="color:#037691" %)**A8 01 06 0A 05 00 04 00 00 00**(%%): to deactivate the RS485 Alarm
692 692  
693 693  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.
694 694  
... ... @@ -697,48 +697,60 @@
697 697  
698 698  Check TTL Sensor return:
699 699  
700 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image024.png]]
824 +[[image:1654132684752-193.png]]
701 701  
702 702  
703 703  
828 +==== **Set Payload version** ====
704 704  
705 -==== Set Payload version ====
706 -
707 707  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.
708 708  
709 -* AT Command:
832 +* **AT Command:**
710 710  
711 -AT+PAYVER: Set PAYVER field = 1
834 +(% class="box infomessage" %)
835 +(((
836 +**AT+PAYVER: Set PAYVER field = 1**
837 +)))
712 712  
713 713  
714 -* Downlink Payload:
840 +* **Downlink Payload:**
715 715  
716 -0xAE 01   à Set PAYVER field =  0x01
842 +**0xAE 01**  ~-~-> Set PAYVER field =  0x01
717 717  
718 -0xAE 0F   à Set PAYVER field =  0x0F
844 +**0xAE 0F**   ~-~-> Set PAYVER field =  0x0F
719 719  
720 720  
721 -==== Set RS485 Sampling Commands ====
722 722  
848 +==== **Set RS485 Sampling Commands** ====
849 +
723 723  AT+COMMANDx, AT+DATACUTx and AT+SEARCHx
724 724  
725 -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]].
852 +These three commands are used to configure how the RS485-BL polling data from Modbus device. Detail of usage please see : [[polling RS485 device>>||anchor="H3.3.3Configurereadcommandsforeachsampling"]].
726 726  
727 727  
728 -* AT Command:
855 +* **AT Command:**
729 729  
730 -AT+COMMANDx: Configure RS485 read command to sensor.
857 +(% class="box infomessage" %)
858 +(((
859 +**AT+COMMANDx: Configure RS485 read command to sensor.**
860 +)))
731 731  
732 -AT+DATACUTx: Configure how to handle return from RS485 devices.
862 +(% class="box infomessage" %)
863 +(((
864 +**AT+DATACUTx: Configure how to handle return from RS485 devices.**
865 +)))
733 733  
734 -AT+SEARCHx: Configure search command
867 +(% class="box infomessage" %)
868 +(((
869 +**AT+SEARCHx: Configure search command**
870 +)))
735 735  
736 736  
737 -* Downlink Payload:
873 +* **Downlink Payload:**
738 738  
739 -0xAF downlink command can be used to set AT+COMMANDx or AT+DATACUTx.
875 +**0xAF** downlink command can be used to set AT+COMMANDx or AT+DATACUTx.
740 740  
741 -Note: if user use AT+COMMANDx to add a new command, he also need to send AT+DATACUTx downlink.
877 +(% style="color:red" %)**Note**(%%): if user use AT+COMMANDx to add a new command, he also need to send AT+DATACUTx downlink.
742 742  
743 743  Format: AF MM NN LL XX XX XX XX YY
744 744  
... ... @@ -745,23 +745,23 @@
745 745  Where:
746 746  
747 747  * MM: the ATCOMMAND or AT+DATACUT to be set. Value from 01 ~~ 0F,
748 -* NN: 0: no CRC; 1: add CRC-16/MODBUS ; 2: set the AT+DATACUT value.
749 -* LL: The length of AT+COMMAND or AT+DATACUT command
884 +* NN:  0: no CRC; 1: add CRC-16/MODBUS ; 2: set the AT+DATACUT value.
885 +* LL:  The length of AT+COMMAND or AT+DATACUT command
750 750  * XX XX XX XX: AT+COMMAND or AT+DATACUT command
751 -* 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.
887 +* 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.
752 752  
753 -Example:
889 +**Example:**
754 754  
755 -**AF 03 01 06 0A 05 00 04 00 01 00**: Same as AT+COMMAND3=0A 05 00 04 00 01,1
891 +(% 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
756 756  
757 -**AF 03 02 06 10 01 05 06 09 0A 00**: Same as AT+DATACUT3=**16**,**1**,**5+6+9+10**
893 +(% 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**
758 758  
759 -**AF 03 02 06 0B 02 05 07 08 0A 00**: Same as AT+DATACUT3=**11**,**2**,**5~~7+8~~10**
895 +(% 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**
760 760  
761 761  
762 -0xAB downlink command can be used for set AT+SEARCHx
898 +**0xAB** downlink command can be used for set AT+SEARCHx
763 763  
764 -Example: **AB aa 01 03 xx xx xx** (03 here means there are total 3 bytes after 03) So
900 +**Example:** **AB aa 01 03 xx xx xx** (03 here means there are total 3 bytes after 03) So
765 765  
766 766  * AB aa 01 03 xx xx xx  same as AT+SEARCHaa=1,xx xx xx
767 767  * 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
... ... @@ -769,334 +769,355 @@
769 769  **AB aa 02 03 xx xx xx 02 yy yy**  same as **AT+SEARCHaa=2,xx xx xx+yy yy**
770 770  
771 771  
772 -==== Fast command to handle MODBUS device ====
773 773  
909 +==== **Fast command to handle MODBUS device** ====
910 +
774 774  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]].
775 775  
776 776  This command is valid since v1.3 firmware version
777 777  
778 778  
779 -AT+MBFUN has only two value:
916 +**AT+MBFUN has only two value:**
780 780  
781 -* AT+MBFUN=1: Enable Modbus reading. And get response base on the MODBUS return
918 +* **AT+MBFUN=1**: Enable Modbus reading. And get response base on the MODBUS return
782 782  
783 783  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.
784 784  
785 -* AT+MBFUN=0: Disable Modbus fast reading.
922 +* **AT+MBFUN=0**: Disable Modbus fast reading.
786 786  
924 +**Example:**
787 787  
788 -Example:
789 -
790 790  * AT+MBFUN=1 and AT+DATACUT1/AT+DATACUT2 are not configure (0,0,0).
791 791  * 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.
792 792  * 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.
793 793  
794 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image025.png]]
930 +[[image:1654133913295-597.png]]
795 795  
796 796  
797 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image026.png]]
933 +[[image:1654133954153-643.png]]
798 798  
799 799  
800 -* Downlink Commands:
936 +* **Downlink Commands:**
801 801  
802 -A9 aa -à Same as AT+MBFUN=aa
938 +**A9 aa** ~-~-> Same as AT+MBFUN=aa
803 803  
804 804  
805 -==== RS485 command timeout ====
806 806  
942 +==== **RS485 command timeout** ====
943 +
807 807  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.
808 808  
809 809  Default value: 0, range:  0 ~~ 5 seconds
810 810  
811 811  
812 -* AT Command:
949 +* **AT Command:**
813 813  
814 -AT+CMDDLaa=hex(bb cc)
951 +(% class="box infomessage" %)
952 +(((
953 +**AT+CMDDLaa=hex(bb cc)**
954 +)))
815 815  
816 -Example:
956 +**Example:**
817 817  
818 818  **AT+CMDDL1=1000** to send the open time to 1000ms
819 819  
820 820  
821 -* Downlink Payload:
961 +* **Downlink Payload:**
822 822  
823 823  0x AA aa bb cc
824 824  
825 825  Same as: AT+CMDDLaa=hex(bb cc)
826 826  
827 - Example:
967 + **Example:**
828 828  
829 - 0xAA 01 03 E8  à Same as **AT+CMDDL1=1000 ms**
969 + **0xAA 01 03 E8**  ~-~-> Same as **AT+CMDDL1=1000 ms**
830 830  
831 831  
832 -==== [[Uplink>>path:#downlink_A8]] payload mode ====
833 833  
973 +==== **Uplink payload mode** ====
974 +
834 834  Define to use one uplink or multiple uplinks for the sampling.
835 835  
836 -The use of this command please see: [[Compose Uplink payload>>path:#DataUP]]
977 +The use of this command please see: [[Compose Uplink payload>>||anchor="H3.3.4Composetheuplinkpayload"]]
837 837  
838 -* AT Command:
979 +* **AT Command:**
839 839  
840 -AT+DATAUP=0
981 +(% class="box infomessage" %)
982 +(((
983 +**AT+DATAUP=0**
984 +)))
841 841  
842 -AT+DATAUP=1
986 +(% class="box infomessage" %)
987 +(((
988 +**AT+DATAUP=1**
989 +)))
843 843  
844 844  
845 -* Downlink Payload:
992 +* **Downlink Payload:**
846 846  
847 -0xAD 00   à Same as AT+DATAUP=0
994 +**0xAD 00**  **~-~->** Same as AT+DATAUP=0
848 848  
849 -0xAD 01   à Same as AT+DATAUP=1
996 +**0xAD 01**  **~-~->** Same as AT+DATAUP=1
850 850  
851 851  
852 -==== Manually trigger an Uplink ====
853 853  
1000 +==== **Manually trigger an Uplink** ====
1001 +
854 854  Ask device to send an uplink immediately.
855 855  
856 -* Downlink Payload:
1004 +* **Downlink Payload:**
857 857  
858 -0x08 FF, RS485-BL will immediately send an uplink.
1006 +**0x08 FF**, RS485-BL will immediately send an uplink.
859 859  
860 860  
861 -==== Clear RS485 Command ====
862 862  
1010 +==== **Clear RS485 Command** ====
1011 +
863 863  The AT+COMMANDx and AT+DATACUTx settings are stored in special location, user can use below command to clear them.
864 864  
865 865  
866 -* AT Command:
1015 +* **AT Command:**
867 867  
868 -**AT+CMDEAR=mm,nn**   mm: start position of erase ,nn: stop position of erase
1017 +(% style="color:#037691" %)**AT+CMDEAR=mm,nn** (%%) mm: start position of erase ,nn: stop position of erase Etc. AT+CMDEAR=1,10 means erase AT+COMMAND1/AT+DATACUT1 to AT+COMMAND10/AT+DATACUT10
869 869  
870 -Etc. AT+CMDEAR=1,10 means erase AT+COMMAND1/AT+DATACUT1 to AT+COMMAND10/AT+DATACUT10
1019 +Example screen shot after clear all RS485 commands. 
871 871  
872 -Example screen shot after clear all RS485 commands.
873 873  
874 -
875 -
876 876  The uplink screen shot is:
877 877  
878 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image023.png]]
1024 +[[image:1654134704555-320.png]]
879 879  
880 880  
881 -* Downlink Payload:
1027 +* **Downlink Payload:**
882 882  
883 -0x09 aa bb same as AT+CMDEAR=aa,bb
1029 +**0x09 aa bb** same as AT+CMDEAR=aa,bb
884 884  
885 885  
886 -==== Set Serial Communication Parameters ====
887 887  
1033 +==== **Set Serial Communication Parameters** ====
1034 +
888 888  Set the Rs485 serial communication parameters:
889 889  
890 -* AT Command:
1037 +* **AT Command:**
891 891  
892 892  Set Baud Rate:
893 893  
894 -AT+BAUDR=9600    ~/~/ Options: (1200,2400,4800,14400,19200,115200)
1041 +(% class="box infomessage" %)
1042 +(((
1043 +**AT+BAUDR=9600**    ~/~/ Options: (1200,2400,4800,14400,19200,115200)
1044 +)))
895 895  
1046 +Set UART Parity
896 896  
897 -Set UART parity
1048 +(% class="box infomessage" %)
1049 +(((
1050 +**AT+PARITY=0**    ~/~/ Option: 0: no parity, 1: odd parity, 2: even parity
1051 +)))
898 898  
899 -AT+PARITY=0    ~/~/ Option: 0: no parity, 1: odd parity, 2: even parity
900 -
901 -
902 902  Set STOPBIT
903 903  
904 -AT+STOPBIT=0    ~/~/ Option: 0 for 1bit; 1 for 1.5 bit ; 2 for 2 bits
1055 +(% class="box infomessage" %)
1056 +(((
1057 +**AT+STOPBIT=0**    ~/~/ Option: 0 for 1bit; 1 for 1.5 bit ; 2 for 2 bits
1058 +)))
905 905  
906 906  
907 -* Downlink Payload:
1061 +* **Downlink Payload:**
908 908  
909 -A7 01 aa bb: Same  AT+BAUDR=hex(aa bb)*100
1063 +**A7 01 aa bb**: Same  AT+BAUDR=hex(aa bb)*100
910 910  
911 -Example:
1065 +**Example:**
912 912  
913 913  * A7 01 00 60   same as AT+BAUDR=9600
914 914  * A7 01 04 80  same as AT+BAUDR=115200
915 915  
916 -
917 917  A7 02 aa: Same as  AT+PARITY=aa  (aa value: 00 , 01 or 02)
918 918  
919 919  A7 03 aa: Same as  AT+STOPBIT=aa  (aa value: 00 , 01 or 02)
920 920  
921 921  
922 -==== Control output power duration ====
923 923  
1076 +==== **Control output power duration** ====
1077 +
924 924  User can set the output power duration before each sampling.
925 925  
926 -* AT Command:
1080 +* **AT Command:**
927 927  
928 -Example:
1082 +**Example:**
929 929  
930 -AT+3V3T=1000 ~/~/ 3V3 output power will open 1s before each sampling.
1084 +**AT+3V3T=1000**  ~/~/ 3V3 output power will open 1s before each sampling.
931 931  
932 -AT+5VT=1000 ~/~/ +5V output power will open 1s before each sampling.
1086 +**AT+5VT=1000**  ~/~/ +5V output power will open 1s before each sampling.
933 933  
934 934  
935 -* LoRaWAN Downlink Command:
1089 +* **LoRaWAN Downlink Command:**
936 936  
937 -07 01 aa bb  Same as AT+5VT=(aa bb)
1091 +**07 01 aa bb**  Same as AT+5VT=(aa bb)
938 938  
939 -07 02 aa bb  Same as AT+3V3T=(aa bb)
1093 +**07 02 aa bb**  Same as AT+3V3T=(aa bb)
940 940  
941 941  
1096 +== 3.6 Buttons ==
942 942  
1098 +(% border="1" style="background-color:#ffffcc; color:green; width:233px" %)
1099 +|=(% style="width: 89px;" %)**Button**|=(% style="width: 141px;" %)**Feature**
1100 +|(% style="width:89px" %)**RST**|(% style="width:141px" %)Reboot RS485-BL
943 943  
944 -1.
945 -11. Buttons
1102 +== 3.7 +3V3 Output ==
946 946  
947 -
948 -|**Button**|**Feature**
949 -|**RST**|Reboot RS485-BL
950 -
951 -
952 -1.
953 -11. +3V3 Output
954 -
955 955  RS485-BL has a Controllable +3V3 output, user can use this output to power external sensor.
956 956  
957 -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.
1106 +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. 
958 958  
959 -
960 960  The +3V3 output time can be controlled by AT Command.
961 961  
962 -**AT+3V3T=1000**
963 963  
964 -Means set +3v3 valid time to have 1000ms. So, the real +3v3 output will actually have 1000ms + sampling time for other sensors.
1111 +(% style="color:#037691" %)**AT+3V3T=1000**
965 965  
966 966  
1114 +Means set +3v3 valid time to have 1000ms. So, the real +3v3 output will actually have 1000ms + sampling time for other sensors.
1115 +
967 967  By default, the AT+3V3T=0. This is a special case, means the +3V3 output is always on at any time
968 968  
969 969  
970 -1.
971 -11. +5V Output
1119 +== 3.8 +5V Output ==
972 972  
973 973  RS485-BL has a Controllable +5V output, user can use this output to power external sensor.
974 974  
975 -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.
1123 +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. 
976 976  
977 -
978 978  The 5V output time can be controlled by AT Command.
979 979  
980 -**AT+5VT=1000**
981 981  
982 -Means set 5V valid time to have 1000ms. So, the real 5V output will actually have 1000ms + sampling time for other sensors.
1128 +(% style="color:#037691" %)**AT+5VT=1000**
983 983  
984 984  
1131 +Means set 5V valid time to have 1000ms. So, the real 5V output will actually have 1000ms + sampling time for other sensors.
1132 +
985 985  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.
986 986  
987 987  
1136 +== 3.9 LEDs ==
988 988  
1138 +(% border="1" style="background-color:#ffffcc; color:green; width:332px" %)
1139 +|=**LEDs**|=(% style="width: 274px;" %)**Feature**
1140 +|**LED1**|(% style="width:274px" %)Blink when device transmit a packet.
989 989  
990 -1.
991 -11. LEDs
1142 +== 3.10 Switch Jumper ==
992 992  
993 -|**LEDs**|**Feature**
994 -|**LED1**|Blink when device transmit a packet.
995 -
996 -
997 -1.
998 -11. Switch Jumper
999 -
1000 -|**Switch Jumper**|**Feature**
1001 -|**SW1**|(((
1144 +(% border="1" style="background-color:#ffffcc; color:green; width:515px" %)
1145 +|=(% style="width: 124px;" %)**Switch Jumper**|=(% style="width: 388px;" %)**Feature**
1146 +|(% style="width:124px" %)**SW1**|(% style="width:388px" %)(((
1002 1002  ISP position: Upgrade firmware via UART
1003 1003  
1004 1004  Flash position: Configure device, check running status.
1005 1005  )))
1006 -|**SW2**|(((
1151 +|(% style="width:124px" %)**SW2**|(% style="width:388px" %)(((
1007 1007  5V position: set to compatible with 5v I/O.
1008 1008  
1009 1009  3.3v position: set to compatible with 3.3v I/O.,
1010 1010  )))
1011 1011  
1012 -+3.3V: is always ON
1157 +**+3.3V**: is always ON
1013 1013  
1014 -+5V: Only open before every sampling. The time is by default, it is AT+5VT=0.  Max open time. 5000 ms.
1159 +**+5V**: Only open before every sampling. The time is by default, it is AT+5VT=0.  Max open time. 5000 ms.
1015 1015  
1016 -1. Case Study
1017 1017  
1162 += 4. Case Study =
1018 1018  
1019 -User can check this URL for some case studies.
1164 +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]]
1020 1020  
1021 -[[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]]
1022 1022  
1167 += 5. Use AT Command =
1023 1023  
1169 +== 5.1 Access AT Command ==
1024 1024  
1025 -
1026 -1. Use AT Command
1027 -11. Access AT Command
1028 -
1029 1029  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.
1030 1030  
1031 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image027.png]]
1173 +[[image:1654135840598-282.png]]
1032 1032  
1033 1033  
1034 -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:
1176 +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:
1035 1035  
1036 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image028.png]]
1178 +[[image:1654136105500-922.png]]
1037 1037  
1038 1038  
1181 +More detail AT Command manual can be found at [[AT Command Manual>>||anchor="3.5ConfigureRS485-BLviaATorDownlink"]]
1039 1039  
1040 -More detail AT Command manual can be found at [[AT Command Manual>>path:#AT_COMMAND]]
1041 1041  
1184 +== 5.2 Common AT Command Sequence ==
1042 1042  
1186 +=== 5.2.1 Multi-channel ABP mode (Use with SX1301/LG308) ===
1043 1043  
1044 -1.
1045 -11. Common AT Command Sequence
1046 -111. Multi-channel ABP mode (Use with SX1301/LG308)
1047 -
1048 1048  If device has not joined network yet:
1049 1049  
1050 -AT+FDR
1190 +(% class="box infomessage" %)
1191 +(((
1192 +**AT+FDR**
1193 +)))
1051 1051  
1052 -AT+NJM=0
1195 +(% class="box infomessage" %)
1196 +(((
1197 +**AT+NJM=0**
1198 +)))
1053 1053  
1054 -ATZ
1200 +(% class="box infomessage" %)
1201 +(((
1202 +**ATZ**
1203 +)))
1055 1055  
1056 1056  
1057 1057  If device already joined network:
1058 1058  
1059 -AT+NJM=0
1208 +(% class="box infomessage" %)
1209 +(((
1210 +**AT+NJM=0**
1211 +)))
1060 1060  
1061 -ATZ
1213 +(% class="box infomessage" %)
1214 +(((
1215 +**ATZ**
1216 +)))
1062 1062  
1063 -1.
1064 -11.
1065 -111. Single-channel ABP mode (Use with LG01/LG02)
1066 1066  
1067 -AT+FDR   Reset Parameters to Factory Default, Keys Reserve
1219 +=== 5.5.2 Single-channel ABP mode (Use with LG01/LG02) ===
1068 1068  
1069 -AT+NJM=0 Set to ABP mode
1070 1070  
1071 -AT+ADR=0 Set the Adaptive Data Rate Off
1222 +(% style="background-color:#dcdcdc" %)**AT+FDR** (%%) Reset Parameters to Factory Default, Keys Reserve
1072 1072  
1073 -AT+DR= Set Data Rate
1224 +(% style="background-color:#dcdcdc" %)**AT+NJM=0 **(%%)Set to ABP mode
1074 1074  
1075 -AT+TDC=60000  Set transmit interval to 60 seconds
1226 +(% style="background-color:#dcdcdc" %)**AT+ADR=0** (%%)Set the Adaptive Data Rate Off
1076 1076  
1077 -AT+CHS=868400000 Set transmit frequency to 868.4Mhz
1228 +(% style="background-color:#dcdcdc" %)**AT+DR=5**  (%%)Set Data Rate
1078 1078  
1079 -AT+RX2FQ=868400000 Set RX2Frequency to 868.4Mhz (according to the result from server)
1230 +(% style="background-color:#dcdcdc" %)**AT+TDC=60000** (%%) Set transmit interval to 60 seconds
1080 1080  
1081 -AT+RX2DR= Set RX2DR to match the downlink DR from server. see below
1232 +(% style="background-color:#dcdcdc" %)**AT+CHS=868400000**(%%) Set transmit frequency to 868.4Mhz
1082 1082  
1083 -AT+DADDR=26 01 1A F1 Set Device Address to 26 01 1A F1, this ID can be found in the LoRa Server portal.
1234 +(% style="background-color:#dcdcdc" %)**AT+RX2FQ=868400000** (%%) Set RX2Frequency to 868.4Mhz (according to the result from server)
1084 1084  
1085 -ATZ          Reset MCU
1236 +(% style="background-color:#dcdcdc" %)**AT+RX2DR=5**  (%%) Set RX2DR to match the downlink DR from server. see below
1086 1086  
1087 -**Note:**
1238 +(% 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.
1088 1088  
1089 -1. Make sure the device is set to ABP mode in the IoT Server.
1090 -1. Make sure the LG01/02 gateway RX frequency is exactly the same as AT+CHS setting.
1091 -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.
1092 -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
1240 +(% style="background-color:#dcdcdc" %)**ATZ**       (%%) Reset MCU
1093 1093  
1094 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image029.png]]
1095 1095  
1243 +(% style="color:red" %)**Note:**
1096 1096  
1097 -1. FAQ
1098 -11. How to upgrade the image?
1245 +(% style="color:red" %)1. Make sure the device is set to ABP mode in the IoT Server.
1246 +2. Make sure the LG01/02 gateway RX frequency is exactly the same as AT+CHS setting.
1247 +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.
1248 +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
1099 1099  
1250 +[[image:1654136435598-589.png]]
1251 +
1252 +
1253 += 6. FAQ =
1254 +
1255 +== 6.1 How to upgrade the image? ==
1256 +
1100 1100  The RS485-BL LoRaWAN Controller is shipped with a 3.5mm cable, the cable is used to upload image to RS485-BL to:
1101 1101  
1102 1102  * Support new features
... ... @@ -1103,10 +1103,9 @@
1103 1103  * For bug fix
1104 1104  * Change LoRaWAN bands.
1105 1105  
1106 -
1107 1107  Below shows the hardware connection for how to upload an image to RS485-BL:
1108 1108  
1109 -[[image:file:///C:/Users/93456/AppData/Local/Temp/msohtmlclip1/01/clip_image030.png]]
1265 +[[image:1654136646995-976.png]]
1110 1110  
1111 1111  **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]].
1112 1112  
... ... @@ -1147,7 +1147,6 @@
1147 1147  1.
1148 1148  11. How many RS485-Slave can RS485-BL connects?
1149 1149  
1150 -
1151 1151  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]].
1152 1152  
1153 1153  
... ... @@ -1158,7 +1158,7 @@
1158 1158  
1159 1159  Please see this link for debug:
1160 1160  
1161 -[[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]]
1316 +[[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]] 
1162 1162  
1163 1163  
1164 1164  
... ... @@ -1173,7 +1173,6 @@
1173 1173  
1174 1174  1. Order Info
1175 1175  
1176 -
1177 1177  **Part Number: RS485-BL-XXX**
1178 1178  
1179 1179  **XXX:**
... ... @@ -1189,7 +1189,6 @@
1189 1189  * **RU864**: frequency bands RU864
1190 1190  * **KZ865: **frequency bands KZ865
1191 1191  
1192 -
1193 1193  1. Packing Info
1194 1194  
1195 1195  **Package Includes**:
... ... @@ -1198,7 +1198,6 @@
1198 1198  * Stick Antenna for LoRa RF part x 1
1199 1199  * Program cable x 1
1200 1200  
1201 -
1202 1202  **Dimension and weight**:
1203 1203  
1204 1204  * Device Size: 13.5 x 7 x 3 cm
... ... @@ -1206,7 +1206,6 @@
1206 1206  * Package Size / pcs : 14.5 x 8 x 5 cm
1207 1207  * Weight / pcs : 170g
1208 1208  
1209 -
1210 1210  1. Support
1211 1211  
1212 1212  * 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.
1652953055962-143.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +753.5 KB
Content
1652953304999-717.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +139.7 KB
Content
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
1653271044481-711.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +27.8 KB
Content
1653271276735-972.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +26.6 KB
Content
1653271581490-837.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +138.7 KB
Content
1653271648378-342.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +131.4 KB
Content
1653271657255-576.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +142.6 KB
Content
1653271763403-806.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +27.7 KB
Content
1653272787040-634.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +294.0 KB
Content
1653272817147-600.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +143.3 KB
Content
1653272901032-107.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +197.8 KB
Content
1653273818896-432.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +31.6 KB
Content
1653274001211-372.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +91.4 KB
Content
1654132684752-193.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +22.8 KB
Content
1654133913295-597.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +116.2 KB
Content
1654133954153-643.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +91.2 KB
Content
1654134704555-320.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +91.4 KB
Content
1654135840598-282.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +1.3 MB
Content
1654136105500-922.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +203.7 KB
Content
1654136435598-589.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +158.9 KB
Content
1654136646995-976.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +1.3 MB
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-20220602102605-1.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +102.6 KB
Content