Changes for page RS485-LN – RS485 to LoRaWAN Converter User Manual
Last modified by Bei Jinggeng on 2025/01/10 15:06
Change comment:
There is no comment for this version
Summary
-
Page properties (2 modified, 0 added, 0 removed)
-
Attachments (0 modified, 2 added, 0 removed)
Details
- Page properties
-
- Author
-
... ... @@ -1,1 +1,1 @@ 1 -XWiki. Xiaoling1 +XWiki.Bei - 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 Commandstoreaddata==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: 12 0px; background-color:#D9E2F3;color:#0070C0" %)(((293 +|=(% style="width: 126px; background-color:#D9E2F3;color:#0070C0" %)((( 293 293 **AT Commands** 294 -)))|=(% style="width: 1 95px; background-color:#D9E2F3;color:#0070C0" %)(((295 +)))|=(% style="width: 187px; background-color:#D9E2F3;color:#0070C0" %)((( 295 295 **Description** 296 -)))|=(% style="width: 19 5px;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:19 0px" %)(((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:1 19px" %)(((318 +|(% style="width:126px" %)((( 313 313 AT+PARITY 314 -)))|(% style="width:1 16px" %)(((320 +)))|(% style="width:177px" %)((( 315 315 Set UART parity (for RS485 connection) 316 -)))|(% style="width:19 0px" %)(((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:1 19px" %)(((333 +|(% style="width:126px" %)((( 326 326 AT+STOPBIT 327 -)))|(% style="width:1 16px" %)(((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. 4Compose 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. 5Uplink 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. 6Uplink 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** ... ... @@ -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 1029 +(Since firmware v1.4.0) 1030 + 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 1047 +==== (% style="color:blue" %)**Cut data separation processing(Since Version 1.4.2)**(%%) ==== 1035 1035 1049 + 1050 +AT+NEWLINE command, which only takes effect when AT+DATAUP=1 or AT+DATAUP=1, timeout. 1051 + 1052 +When not set, each part of AT+DATAUP is sent according to the maximum number of bytes of DR. 1053 + 1054 +When setting, each part of AT+DATAUP is sent according to the value set by AT+NEWLINE. 1055 + 1056 + 1057 +* ((( 1058 +(% style="color:#037691" %)** AT Command:** 1059 +))) 1060 + 1061 +(% style="color:#4472c4" %)//**AT+NEWLINE=ALL**//(%%)// //The data cut out by each AT+COMMANDx command is sent separately as an uplink. 1062 + 1063 +(% 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**// 1064 + 1065 + 1066 +(% 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. 1067 + 1068 + 1069 +(% style="color:#4472c4" %)//**AT+NEWLINE=NULL**//(%%)// //Turn off the functionality of this AT command. 1070 + 1071 + 1072 +* ((( 1073 +(% style="color:#037691" %)** Downlink Payload:** 1074 +))) 1075 + 1076 +//AT+NEWLINE=ALL ~-~--> (% style="color:#4472c4" %)**0xAC 01**// 1077 + 1078 +// AT+NEWLINE= NULL ~-~--> (% style="color:#4472c4" %)**0xAC 00**// 1079 + 1080 +//AT+NEWLINE= a+b+c ~-~--> (% style="color:#4472c4" %)**0xAC number of bytes a b c**// 1081 + 1082 +//AT+NEWLINE= 1+5+15 ~-~--> (% style="color:#4472c4" %)**0xAC 03 01 05 0F**// 1083 + 1084 + 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 1647 + 1648 +(% 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):** 1649 + 1650 +[[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]] 1651 + 1652 + 1653 + 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 1806 +== 6.9 How to configure RS485 commands more conveniently? == 1807 + 1808 + 1809 +Dragino has developed an application for the RS485 series of products. 1810 + 1811 +It can help you configure RS485 sensors more conveniently 1812 +Please refer to the link below for specific usage: 1813 + 1814 +[[RS485 Configure Tool - DRAGINO>>url:http://wiki.dragino.com/xwiki/bin/view/Main/RS485_Configure_Tool/#HTableofContentsFF1A]] 1815 + 1816 + 1817 + 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