<
From version < 102.14 >
edited by Xiaoling
on 2023/04/25 13:41
To version < 109.1 >
edited by Saxer Lin
on 2023/12/14 09:34
>
Change comment: There is no comment for this version

Summary

Details

Page properties
Author
... ... @@ -1,1 +1,1 @@
1 -XWiki.Xiaoling
1 +XWiki.Saxer
Content
... ... @@ -38,7 +38,7 @@
38 38  )))
39 39  
40 40  (((
41 -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.
41 +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, building automation, and so on.
42 42  )))
43 43  
44 44  (((
... ... @@ -94,8 +94,6 @@
94 94  * Automatic RF Sense and CAD with ultra-fast AFC.
95 95  * Packet engine up to 256 bytes with CRC
96 96  
97 -
98 -
99 99  == 1.3 Features ==
100 100  
101 101  
... ... @@ -108,8 +108,6 @@
108 108  * Support Modbus protocol
109 109  * Support Interrupt uplink (Since hardware version v1.2)
110 110  
111 -
112 -
113 113  == 1.4 Applications ==
114 114  
115 115  
... ... @@ -120,8 +120,6 @@
120 120  * Smart Cities
121 121  * Smart Factory
122 122  
123 -
124 -
125 125  == 1.5 Firmware Change log ==
126 126  
127 127  
... ... @@ -214,7 +214,7 @@
214 214  )))
215 215  )))
216 216  
217 -(% aria-label="1652953462722-299.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:1652953462722-299.png||data-widget="image"]](% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]](% title="Click and drag to resize" %)​
211 +(% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]][[image:image-20230425175410-2.png]](% title="Click and drag to resize" %)​
218 218  
219 219  
220 220  (((
... ... @@ -261,79 +261,89 @@
261 261  (% aria-label="1652953568895-172.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:1652953568895-172.png||data-widget="image" height="232" width="724"]](% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]](% title="Click and drag to resize" %)​
262 262  
263 263  
264 -== 3.3 Configure Commands to read data ==
258 +== 3.3 Configure Device to Read RS485 Sensors ==
265 265  
266 266  
267 -(((
268 -(((
269 -(((
270 -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-LNviaATorDownlink"]] or LoRaWAN Downlink Command to configure what commands RS485-LN should send for each sampling and how to handle the return from RS485 devices.
261 +There are plenty of RS485 and TTL level devices in the market and each device has different commands to read the valid data. To support these devices in most flexible, RS485-LN supports flexible command set. User can use [[Dragino RS485 Tool>>url:https://www.dropbox.com/sh/us9qecn39fwt8n1/AABREdqUCzEmJMRrfuWuXasoa?dl=0]],  [[AT Commands or LoRaWAN Downlink>>url:http://wiki.dragino.com/xwiki/bin/view/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/RS485-LB_Waterproof_RS485UART_to_LoRaWAN_Converter/#H3.5ConfigureRS485-LBviaATorDownlink]] Command to configure how RS485-LN should read the sensor and how to handle the return from RS485 or TTL sensors.
271 271  
272 -
273 -)))
274 -)))
275 275  
276 276  (((
277 277  (((
266 +(((
278 278  (% 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**
279 279  )))
280 280  
281 -
270 +=== ===
271 +
272 +=== 3.3.1 Method 1 ~-~- via RS485 Configure Tool ===
273 +
274 +Use the RS485 Configure tool is the recommand method. Please see the instruction of how to use the tool:
275 +
276 +* **[[RS485 Configure Tool Instruction>>url:http://wiki.dragino.com/xwiki/bin/view/Main/RS485_Configure_Tool/]]**
277 +
278 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/RS485-LB_Waterproof_RS485UART_to_LoRaWAN_Converter/WebHome/image-20231127144411-1.png?width=494&height=368&rev=1.1||alt="image-20231127144411-1.png" height="368" width="494"]]
279 +
280 +=== ===
281 +
282 +=== 3.3.2  Method 2 ~-~- via AT Commands ===
282 282  )))
283 283  )))
284 284  
285 -=== 3.3.1 Configure UART settings for RS485 or TTL communication ===
286 +==== 3.3.2.1 Configure UART settings for RS485 or TTL communication ====
286 286  
288 +RS485-LN can connect to either RS485 sensors or TTL sensor. User need to specify what type of sensor need to connect.
287 287  
288 288  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:
289 289  
290 -
291 291  (% border="1" cellspacing="5" style="background-color:#f2f2f2; width:510px" %)
292 -|=(% style="width: 119px; background-color: rgb(217, 226, 243); color: rgb(0, 112, 192);" %)(((
293 +|=(% style="width: 126px; background-color:#D9E2F3;color:#0070C0" %)(((
293 293  **AT Commands**
294 -)))|=(% style="width: 116px; background-color: rgb(217, 226, 243); color: rgb(0, 112, 192);" %)(((
295 +)))|=(% style="width: 187px; background-color:#D9E2F3;color:#0070C0" %)(((
295 295  **Description**
296 -)))|=(% style="width: 190px;background-color:#D9E2F3;color:#0070C0" %)(((
297 +)))|=(% style="width: 197px;background-color:#D9E2F3;color:#0070C0" %)(((
297 297  **Example**
298 298  )))
299 -|(% style="width:119px" %)(((
300 +|(% style="width:126px" %)(((
301 +
302 +
303 +(((
300 300  AT+BAUDR
301 -)))|(% style="width:116px" %)(((
305 +)))
306 +)))|(% style="width:177px" %)(((
302 302  Set the baud rate (for RS485 connection). Default Value is: 9600.
303 -)))|(% style="width:190px" %)(((
308 +)))|(% style="width:193px" %)(((
304 304  (((
305 305  AT+BAUDR=9600
306 306  )))
307 307  
308 308  (((
309 -Options: (1200,2400,4800,14400,19200,115200)
314 +Options: (1200,2400,4800,
315 +14400,19200,115200)
310 310  )))
311 311  )))
312 -|(% style="width:119px" %)(((
318 +|(% style="width:126px" %)(((
313 313  AT+PARITY
314 -)))|(% style="width:116px" %)(((
320 +)))|(% style="width:177px" %)(((
315 315  Set UART parity (for RS485 connection)
316 -)))|(% style="width:190px" %)(((
322 +)))|(% style="width:193px" %)(((
317 317  (((
318 318  AT+PARITY=0
319 319  )))
320 320  
321 321  (((
322 -Option: 0: no parity, 1: odd parity, 2: even parity
328 +Option: 0: no parity,
329 +1: odd parity,
330 +2: even parity
323 323  )))
324 324  )))
325 -|(% style="width:119px" %)(((
333 +|(% style="width:126px" %)(((
326 326  AT+STOPBIT
327 -)))|(% style="width:116px" %)(((
335 +)))|(% style="width:177px" %)(((
328 328  (((
329 329  Set serial stopbit (for RS485 connection)
330 330  )))
331 -
339 +)))|(% style="width:193px" %)(((
332 332  (((
333 -
334 -)))
335 -)))|(% style="width:190px" %)(((
336 -(((
337 337  AT+STOPBIT=0 for 1bit
338 338  )))
339 339  
... ... @@ -346,18 +346,12 @@
346 346  )))
347 347  )))
348 348  
353 +=== 3.3.3 Configure sensors ===
349 349  
350 350  
351 -=== 3.3.2 Configure sensors ===
352 -
353 -
354 354  (((
355 -(((
356 356  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.
357 -
358 -
359 359  )))
360 -)))
361 361  
362 362  (% border="1" cellspacing="5" style="background-color:#f2f2f2; width:510px" %)
363 363  |=(% style="width: 122px; background-color:#D9E2F3;color:#0070C0" %)**AT Commands**|=(% style="width: 198px; background-color:#D9E2F3;color:#0070C0" %)**Description**|=(% style="width: 190px;background-color:#D9E2F3;color:#0070C0" %)**Example**
... ... @@ -375,11 +375,9 @@
375 375  )))
376 376  )))|(% style="width:190px" %)AT+CFGDEV=xx xx xx xx xx xx xx xx xx xx xx xx,m
377 377  
376 +=== 3.3.4 Configure read commands for each sampling ===
378 378  
379 379  
380 -=== 3.3.3 Configure read commands for each sampling ===
381 -
382 -
383 383  (((
384 384  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.
385 385  
... ... @@ -421,6 +421,20 @@
421 421  In the RS485-LN, we should use this command AT+COMMAND1=01 03 0B B8 00 02,1 for the same.
422 422  
423 423  
420 +If a single command exceeds 14 bytes, you can use the command splicing function.
421 +
422 +When AT+CMDDLx=1, the commands of AT+COMMANDx and AT+COMMAND(x+1) will be merged.
423 +
424 +
425 +**Examples:** To send 00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F data it should be configured:
426 +
427 + AT+COMMAND1=00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D,0
428 +
429 + AT+COMMAND1=1
430 +
431 + AT+COMMAND2=0E 0F,0
432 +
433 +
424 424  (% style="color:#037691" %)**AT+DATACUTx **(%%)**: **This command defines how to handle the return from AT+COMMANDx, max return length is 100 bytes.
425 425  
426 426  (% border="1" style="background-color:#f2f2f2; width:510px" %)
... ... @@ -454,7 +454,7 @@
454 454  
455 455  )))
456 456  
457 -=== 3.3.4 Compose the uplink payload ===
467 +=== 3.3.5 Compose the uplink payload ===
458 458  
459 459  
460 460  (((
... ... @@ -539,7 +539,7 @@
539 539  (% aria-label="1654157178836-407.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:1654157178836-407.png||data-widget="image"]](% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]](% title="Click and drag to resize" %)​
540 540  
541 541  
542 -=== 3.3.5 Uplink on demand ===
552 +=== 3.3.6 Uplink on demand ===
543 543  
544 544  
545 545  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.
... ... @@ -551,7 +551,7 @@
551 551  (% style="color:#4472c4" %)** 0xA8 command**(%%): Send a command to RS485-LN and uplink the output from sensors.
552 552  
553 553  
554 -=== 3.3.6 Uplink on Interrupt ===
564 +=== 3.3.7 Uplink on Interrupt ===
555 555  
556 556  
557 557  RS485-LN support external Interrupt uplink since hardware v1.2 release.
... ... @@ -566,7 +566,7 @@
566 566  
567 567  
568 568  (% border="1" cellspacing="5" style="background-color:#f2f2f2; width:510px" %)
569 -|=(% scope="row" style="width: 60px;background-color:#D9E2F3;color:#0070C0" %)(((
579 +|=(% scope="row" style="width: 70px;background-color:#D9E2F3;color:#0070C0" %)(((
570 570  Size(bytes)
571 571  )))|(% style="background-color:#d9e2f3; color:#0070c0; width:80px" %)**1**|(% style="background-color:#d9e2f3; color:#0070c0; width:360px" %)(((
572 572  **Length depends on the return from the commands**
... ... @@ -926,8 +926,13 @@
926 926  
927 927  (% aria-label="image-20220602165351-7.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:image-20220602165351-7.png||data-widget="image"]](% title="Click and drag to resize" %)​
928 928  
939 +* (((
940 +(% style="color:#037691" %)**Downlink Command:**
941 +)))
929 929  
943 +**~ (% style="color:#4472c4" %)A9 aa(%%)** ~-~-> Same as AT+MBFUN=aa
930 930  
945 +
931 931  ==== (% style="color:blue" %)**RS485 command timeout**(%%) ====
932 932  
933 933  
... ... @@ -1016,6 +1016,8 @@
1016 1016  (% style="color:#4472c4" %)** 0xAD 01**  (%%) **~-~->** Same as AT+DATAUP=1  ~/~/Each uplink is sent to the server one after the other as it is segmented.
1017 1017  
1018 1018  
1034 +(Since firmware v1.4.0)
1035 +
1019 1019  * (((
1020 1020  (% style="color:#037691" %)** AT Command:**
1021 1021  )))
... ... @@ -1032,7 +1032,44 @@
1032 1032  Each uplink is sent to the server at 20-second intervals when segmented.
1033 1033  
1034 1034  
1052 +==== (% style="color:blue" %)**Cut data separation processing(Since Version 1.4.2)**(%%) ====
1035 1035  
1054 +
1055 +AT+NEWLINE command, which only takes effect when AT+DATAUP=1 or AT+DATAUP=1, timeout.
1056 +
1057 +When not set, each part of AT+DATAUP is sent according to the maximum number of bytes of DR.
1058 +
1059 +When setting, each part of AT+DATAUP is sent according to the value set by AT+NEWLINE.
1060 +
1061 +
1062 +* (((
1063 +(% style="color:#037691" %)** AT Command:**
1064 +)))
1065 +
1066 +(% style="color:#4472c4" %)//**AT+NEWLINE=ALL**//(%%)//   //The data cut out by each AT+COMMANDx command is sent separately as an uplink.
1067 +
1068 +(% style="color:#4472c4" %)//**AT+NEWLINE=ALL**//(%%)//   equal:  (% style="color:#4472c4" %)**AT+NEWLINE=1+2+3+4+5+6+7+8+9+10+11+12+13+14+15**//
1069 +
1070 +
1071 +(% style="color:#4472c4" %)//**AT+NEWLINE=a+b+c**//(%%)//  //The data returned by all commands is divided into three parts, COMMAND(1~~a) is the first part, COMMAND(a+1~~b) is the second part,COMMAND(b+1~~c) is the third part.
1072 +
1073 +
1074 +(% style="color:#4472c4" %)//**AT+NEWLINE=NULL**//(%%)//  //Turn off the functionality of this AT command.
1075 +
1076 +
1077 +* (((
1078 +(% style="color:#037691" %)** Downlink Payload:**
1079 +)))
1080 +
1081 +//AT+NEWLINE=ALL  ~-~-->  (% style="color:#4472c4" %)**0xAC 01**//
1082 +
1083 +// AT+NEWLINE= NULL  ~-~-->  (% style="color:#4472c4" %)**0xAC 00**//
1084 +
1085 +//AT+NEWLINE= a+b+c   ~-~-->  (% style="color:#4472c4" %)**0xAC number of bytes a b c**//
1086 +
1087 +//AT+NEWLINE= 1+5+15 ~-~-->  (% style="color:#4472c4" %)**0xAC 03 01 05 0F**//
1088 +
1089 +
1036 1036  ==== (% style="color:blue" %)**Manually trigger an Uplink**(%%) ====
1037 1037  
1038 1038  
... ... @@ -1429,8 +1429,6 @@
1429 1429  |(% style="width:50px" %)RST|(% style="width:361px" %)Reboot RS485
1430 1430  |(% style="width:50px" %)PRO|(% style="width:361px" %)Use for upload image, see [[How to Update Image>>||anchor="H6.1Howtoupgradetheimage3F"]]
1431 1431  
1432 -
1433 -
1434 1434  == 3.8 LEDs ==
1435 1435  
1436 1436  
... ... @@ -1439,8 +1439,6 @@
1439 1439  |PWR|Always on if there is power
1440 1440  |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.
1441 1441  
1442 -
1443 -
1444 1444  = 4. Case Study =
1445 1445  
1446 1446  
... ... @@ -1599,6 +1599,13 @@
1599 1599  (% aria-label="image-20220602175912-14.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:image-20220602175912-14.png||data-widget="image"]](% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]](% title="Click and drag to resize" %)​
1600 1600  
1601 1601  
1652 +
1653 +(% style="color:red" %)**Users can select the new burning software STM32Cubeprogramer for firmware upgrade and follow the same connection steps to enter burning mode (until SYS LED is RED ON):**
1654 +
1655 +[[http:~~/~~/wiki.dragino.com/xwiki/bin/view/Main/Firmware%20Upgrade%20Instruction%20for%20STM32%20base%20products/#H4.2.FirmwareupgradeusingSTM32Cubeprogramer>>url:http://wiki.dragino.com/xwiki/bin/view/Main/Firmware%20Upgrade%20Instruction%20for%20STM32%20base%20products/#H4.2.FirmwareupgradeusingSTM32Cubeprogramer]]
1656 +
1657 +
1658 +
1602 1602  (% style="color:red" %)**Notice**: **In case user has lost the program cable. User can hand made one from a 3.5mm cable. The pin mapping is:**
1603 1603  
1604 1604  (% aria-label="image-20220602175638-10.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:image-20220602175638-10.png||data-widget="image"]](% style="background-image:url(http://wiki.dragino.com/xwiki/webjars/wiki%3Axwiki/application-ckeditor-webjar/1.61/plugins/widget/images/handle.png); background:rgba(220,220,220,0.5); display:none" %)[[image:data:image/gif;base64,R0lGODlhAQABAPABAP///wAAACH5BAEKAAAALAAAAAABAAEAAAICRAEAOw==||draggable="true" height="15" role="presentation" title="Click and drag to move" width="15"]](% title="Click and drag to resize" %)​
... ... @@ -1751,6 +1751,18 @@
1751 1751  The decoder for RS485-LN needs to be written by yourself. Because the sensor to which the user is connected is custom, the read device data bytes also need custom parsing, so there is no universal decoder. We can only provide [[templates>>https://github.com/dragino/dragino-end-node-decoder/tree/main/RS485-LN]] for decoders (no intermediate data parsing part involved)
1752 1752  
1753 1753  
1811 +== 6.9 How to configure RS485 commands more conveniently? ==
1812 +
1813 +
1814 +Dragino has developed an application for the RS485 series of products.
1815 +
1816 +It can help you configure RS485 sensors more conveniently
1817 +Please refer to the link below for specific usage:
1818 +
1819 +[[RS485 Configure Tool - DRAGINO>>url:http://wiki.dragino.com/xwiki/bin/view/Main/RS485_Configure_Tool/#HTableofContentsFF1A]]
1820 +
1821 +
1822 +
1754 1754  = 7. Trouble Shooting =
1755 1755  
1756 1756  == 7.1 Downlink doesn't work, how to solve it? ==
... ... @@ -1783,8 +1783,6 @@
1783 1783  * (% style="color:red" %)**RU864**(%%):  frequency bands RU864
1784 1784  * (% style="color:red" %)**KZ865**(%%):  frequency bands KZ865
1785 1785  
1786 -
1787 -
1788 1788  = 9. Packing Info =
1789 1789  
1790 1790  
... ... @@ -1801,8 +1801,6 @@
1801 1801  * Package Size / pcs : 14.5 x 8 x 5 cm
1802 1802  * Weight / pcs : 170g
1803 1803  
1804 -
1805 -
1806 1806  = 10. FCC Caution for RS485LN-US915 =
1807 1807  
1808 1808  
image-20230425175403-1.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +150.1 KB
Content
image-20230425175410-2.png
Author
... ... @@ -1,0 +1,1 @@
1 +XWiki.Xiaoling
Size
... ... @@ -1,0 +1,1 @@
1 +150.1 KB
Content
Copyright ©2010-2024 Dragino Technology Co., LTD. All rights reserved
Dragino Wiki v2.0