Changes for page RS485-LN – RS485 to LoRaWAN Converter User Manual
Last modified by Bei Jinggeng on 2025/01/16 11:36
Summary
-
Page properties (1 modified, 0 added, 0 removed)
-
Attachments (0 modified, 0 added, 1 removed)
Details
- Page properties
-
- Content
-
... ... @@ -33,28 +33,40 @@ 33 33 34 34 == 1.1 What is RS485-LN RS485 to LoRaWAN Converter == 35 35 36 - 37 37 ((( 37 +((( 38 +((( 39 + 40 + 38 38 The Dragino RS485-LN is a (% style="color:blue" %)**RS485 to LoRaWAN Converter**(%%). It converts the RS485 signal into LoRaWAN wireless signal which simplify the IoT installation and reduce the installation/maintaining cost. 39 39 ))) 43 +))) 40 40 41 41 ((( 46 +((( 42 42 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. 43 43 ))) 49 +))) 44 44 45 45 ((( 52 +((( 46 46 (% style="color:blue" %)**For data uplink**(%%), RS485-LN sends user-defined commands to RS485 devices and gets the return from the RS485 devices. RS485-LN will process these returns according to user-define rules to get the final payload and upload to LoRaWAN server. 47 47 ))) 55 +))) 48 48 49 49 ((( 58 +((( 50 50 (% style="color:blue" %)**For data downlink**(%%), RS485-LN runs in LoRaWAN Class C. When there downlink commands from LoRaWAN server, RS485-LN will forward the commands from LoRaWAN server to RS485 devices. 51 51 ))) 52 52 53 53 ((( 54 54 (% style="color:blue" %)**Demo Dashboard for RS485-LN**(%%) connect to two energy meters: [[https:~~/~~/app.datacake.de/dashboard/d/58844a26-378d-4c5a-aaf5-b5b5b153447a>>url:https://app.datacake.de/dashboard/d/58844a26-378d-4c5a-aaf5-b5b5b153447a]] 64 + 65 + 55 55 ))) 67 +))) 68 +))) 56 56 57 - 58 58 (% aria-label="1653267211009-519.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:1653267211009-519.png||data-widget="image" height="419" 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" %) 59 59 60 60 ... ... @@ -98,7 +98,6 @@ 98 98 99 99 100 100 101 - 102 102 == 1.3 Features == 103 103 104 104 ... ... @@ -113,7 +113,6 @@ 113 113 114 114 115 115 116 - 117 117 == 1.4 Applications == 118 118 119 119 ... ... @@ -126,7 +126,6 @@ 126 126 127 127 128 128 129 - 130 130 == 1.5 Firmware Change log == 131 131 132 132 ... ... @@ -300,10 +300,10 @@ 300 300 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: 301 301 302 302 303 -(% border="1" cellspacing=" 5" style="background-color:#ffffcc; color:green; width:510px" %)312 +(% border="1" cellspacing="10" style="background-color:#ffffcc; color:green; width:510px" %) 304 304 |=(% style="width: 110px;" %)((( 305 305 **AT Commands** 306 -)))|=(% style="width: 210px;" %)(((315 +)))|=(% style="width: 190px;" %)((( 307 307 **Description** 308 308 )))|=(% style="width: 190px;" %)((( 309 309 **Example** ... ... @@ -372,8 +372,8 @@ 372 372 ))) 373 373 ))) 374 374 375 -(% border="1" cellspacing=" 5" style="background-color:#ffffcc; color:green; width:510px" %)376 -|=(% style="width: 110px;" %)**AT Commands**|=(% style="width: 210px;" %)**Description**|=(% style="width: 190px;" %)**Example**384 +(% border="1" cellspacing="10" style="background-color:#ffffcc; color:green; width:510px" %) 385 +|=(% style="width: 110px;" %)**AT Commands**|=(% style="width: 190px;" %)**Description**|=(% style="width: 190px;" %)**Example** 377 377 |AT+CFGDEV|(% style="width:110px" %)((( 378 378 ((( 379 379 This command is used to configure the RS485/TTL devices; they won’t be used during sampling. ... ... @@ -423,7 +423,7 @@ 423 423 424 424 (% border="1" style="background-color:#4bacc6; color:white; width:499px" %) 425 425 |(% style="width:496px" %)((( 426 -**AT+COMMANDx=xx xx xx xx xx xx xx xx xx xx xx xx,m** 435 +(% style="color:#037691" %)**AT+COMMANDx=xx xx xx xx xx xx xx xx xx xx xx xx,m** 427 427 428 428 **xx xx xx xx xx xx xx xx xx xx xx xx: The RS485 command to be sent** 429 429 ... ... @@ -498,7 +498,7 @@ 498 498 499 499 ))) 500 500 501 -[[image:image-20220 929111027-1.png||height="509" width="685"]](% title="Click and drag to resize" %)510 +(% aria-label="1653269759169-150.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:1653269759169-150.png||data-widget="image" height="513" width="716"]](% 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" %) 502 502 503 503 504 504 (% style="color:#037691" %)**Examples: AT+DATAUP=1** ... ... @@ -506,18 +506,14 @@ 506 506 507 507 Compose the uplink payload with value returns in sequence and send with (% style="color:red" %)**Multiply UPLINKs**. 508 508 509 -Final Payload is (% style="color:#4f81bd" %)**PAYVER + PAYLOAD COUNT + PAYLOAD# + DATA** 518 +Final Payload is (% style="color:#4f81bd" %)**Battery Info+PAYVER + PAYLOAD COUNT + PAYLOAD# + DATA** 510 510 511 511 512 -~1. PAYVER: Defined by AT+PAYVER 521 +1. PAYVER: Defined by AT+PAYVER 522 +1. PAYLOAD COUNT: Total how many uplinks of this sampling. 523 +1. PAYLOAD#: Number of this uplink. (from 0,1,2,3…,to PAYLOAD COUNT) 524 +1. DATA: Valid value: max 8 bytes for each uplink so each uplink <= 11 bytes. For the last uplink, DATA will might less than 8 bytes 513 513 514 -2. PAYLOAD COUNT: Total how many uplinks of this sampling. 515 - 516 -3. PAYLOAD#: Number of this uplink. (from 0,1,2,3…,to PAYLOAD COUNT) 517 - 518 -4. DATA: Valid value: max 8 bytes for each uplink so each uplink <= 11 bytes. For the last uplink, DATA will might less than 8 bytes 519 - 520 - 521 521 (% aria-label="image-20220602155039-4.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:image-20220602155039-4.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" %) 522 522 523 523 ... ... @@ -541,13 +541,27 @@ 541 541 542 542 ~* For all other bands: max 51 bytes for each uplink. 543 543 549 +(% style="color:red" %)*** When AT+DATAUP=1, the maximum number of segments is 15, and the maximum total number of bytes is 1500;** 544 544 545 -(% style="color:red" %)** When AT+DATAUP=1, the maximum number of segmentsis15,and theaximum totalnumberofbytesis1500;**551 +(% style="color:red" %)** When AT+DATAUP=1 and AT+ADR=0, the maximum number of bytes of each payload is determined by the DR value. (Since v1.4.0)** 546 546 547 -(% style="color:red" %)** When AT+DATAUP=1 and AT+ADR=0, the maximum number of bytes of each payload is determined by the DR value. (Since v1.4.0)** 548 548 554 +(% style="color:#4f81bd" %)**If the data is empty, return to the display(Since v1.4.0)** 549 549 556 +1 ) When (% style="color:blue" %)**AT+MOD=1**(%%), if the data intercepted by** AT+DATACUT** or **AT+MBFUN** is empty, it will display **NULL**, and the payload will be filled with **n FFs**. 550 550 558 + 559 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/test/WebHome/image-20220824114359-3.png?width=1106&height=297&rev=1.1||alt="image-20220824114359-3.png" height="297" width="1106"]] 560 + 561 + 562 + 563 +2 ) When (% style="color:blue" %)**AT+MOD=2**(%%), if the data intercepted by **AT+DATACUT** or **AT+MBFUN** is empty, it will display **NULL**, and the payload will be filled with **n 00s**. 564 + 565 + 566 +[[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/test/WebHome/image-20220824114330-2.png?rev=1.1||alt="image-20220824114330-2.png"]] 567 + 568 + 569 + 551 551 Below are the uplink payloads: 552 552 553 553 ... ... @@ -583,26 +583,8 @@ 583 583 == 3.4 Uplink Payload == 584 584 585 585 586 -(% border="1" cellspacing="5" style="background-color:#ffffcc; color:green; width:500px" %) 587 -|=(% scope="row" style="width: 60px;" %)((( 588 -Size(bytes) 589 -)))|(% style="width:80px" %)1|(% style="width:360px" %)((( 590 -Length depends on the return from the commands 591 -))) 592 -|=(% style="width: 90px;" %)((( 593 -Value 594 -)))|(% style="width:114px" %)((( 595 -PAYLOAD_VER 596 -)))|(% style="width:353px" %)((( 597 -If the valid payload is too long and exceed the maximum 605 +(% aria-label="image-20220606110929-1.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:image-20220606110929-1.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"]] 598 598 599 -support payload length in server, server will show payload not 600 - 601 -provided in the LoRaWAN server. 602 -))) 603 - 604 -(% 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"]] 605 - 606 606 (% title="Click and drag to resize" %) 607 607 608 608 Below is the decoder for the first 3 bytes. The rest bytes are dynamic depends on different RS485 sensors. ... ... @@ -664,7 +664,7 @@ 664 664 665 665 666 666 ((( 667 -This command is used to configure the RS485 devices; they won't be used during sampling. Max Length of AT+CFGDEV is **40 bytes**.668 +This command is used to configure the RS485 devices; they won't be used during sampling. 668 668 ))) 669 669 670 670 ((( ... ... @@ -811,16 +811,14 @@ 811 811 ))) 812 812 813 813 814 - **1 ) Add the interrupt flag at the highest bit of the Payver byte, that is, Byte7 of the first byte. (Since v1.4.0)**815 +1 ) Add the interrupt flag at the highest bit of the Payver byte, that is, Byte7 of the first byte. (Since v1.4.0) 815 815 816 - 817 817 [[image:image-20220824145428-2.png||height="168" width="1300"]] 818 818 819 819 820 +2 ) if the data intercepted by AT+DATACUT or AT+MBFUN is empty, it will display NULL, and the payload will be filled with n FFs. 820 820 821 -**2 ) if the data intercepted by AT+DATACUT or AT+MBFUN is empty, it will display NULL, and the payload will be filled with n FFs.** 822 822 823 - 824 824 [[image:image-20220824145428-3.png||height="308" width="1200"]] 825 825 826 826 ... ... @@ -946,10 +946,8 @@ 946 946 947 947 ))) 948 948 949 -(% aria-label="image-20220602165351-6.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:image-20220602165351-6.png||data-widget="image"]] 948 +(% aria-label="image-20220602165351-6.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:image-20220602165351-6.png||data-widget="image"]](% title="Click and drag to resize" %) 950 950 951 -(% title="Click and drag to resize" %) 952 - 953 953 (% 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" %) 954 954 955 955 ... ... @@ -1146,10 +1146,15 @@ 1146 1146 1147 1147 ((( 1148 1148 Set the Rs485 serial communication parameters: 1146 + 1147 + 1149 1149 ))) 1150 1150 1151 -((( 1152 -(% style="color:#037691" %)**AT Command:** 1150 +* ((( 1151 +(% style="color:#037691" %)** AT Command:** 1152 + 1153 + 1154 + 1153 1153 ))) 1154 1154 1155 1155 ((( ... ... @@ -1156,7 +1156,7 @@ 1156 1156 * Set Baud Rate 1157 1157 ))) 1158 1158 1159 -(% style="color:#4472c4" %)** 1161 +(% style="color:#4472c4" %)** AT+BAUDR=9600** (%%) ~/~/ Options: (200~~115200) When using low baud rate or receiving multiple bytes, you need to use AT+CMDDL to increase the receive timeout (the default receive timeout is 400ms), otherwise data will be lost 1160 1160 1161 1161 1162 1162 ((( ... ... @@ -1163,7 +1163,7 @@ 1163 1163 * Set UART Parity 1164 1164 ))) 1165 1165 1166 -(% style="color:#4472c4" %)** 1168 +(% style="color:#4472c4" %)** AT+PARITY=0** (%%) ~/~/ Option: 0: no parity, 1: odd parity, 2: even parity 1167 1167 1168 1168 1169 1169 ((( ... ... @@ -1170,18 +1170,21 @@ 1170 1170 * Set STOPBIT 1171 1171 ))) 1172 1172 1173 -(% style="color:#4472c4" %)** 1175 +(% style="color:#4472c4" %)** AT+STOPBIT=0** (%%) ~/~/ Option: 0 for 1bit; 1 for 1.5 bit ; 2 for 2 bits 1174 1174 1175 1175 1176 -((( 1177 -(% style="color:#037691" %)**Downlink Payload:** 1178 + 1179 +* ((( 1180 +(% style="color:#037691" %)** Downlink Payload:** 1178 1178 ))) 1179 1179 1180 1180 ((( 1181 -(% style="color:#4472c4" %)** 1184 +(% style="color:#4472c4" %)** A7 01 aa bb**: (%%) Same AT+BAUDR=hex(aa bb)*100 1182 1182 ))) 1183 1183 1184 1184 ((( 1188 + 1189 + 1185 1185 **Example:** 1186 1186 ))) 1187 1187 ... ... @@ -1203,27 +1203,7 @@ 1203 1203 1204 1204 1205 1205 1206 -==== (% style="color:blue" %)**Configure Databit (Since Version 1.4.0)**(%%) ==== 1207 1207 1208 - 1209 -* ((( 1210 -(% style="color:#037691" %)** AT Command:** 1211 -))) 1212 - 1213 -(% style="color:#4472c4" %)** AT+DATABIT=7 **(%%)~/~/ Set the data bits to 7 1214 - 1215 -(% style="color:#4472c4" %)** AT+DATABIT=8 **(%%)~/~/ Set the data bits to 8 1216 - 1217 -* ((( 1218 -(% style="color:#037691" %)**Downlink Payload:** 1219 -))) 1220 - 1221 -(% style="color:#4472c4" %)** A7 04 07**(%%): Same as AT+DATABIT=7 1222 - 1223 -(% style="color:#4472c4" %)** A7 04 08**(%%): Same as AT+DATABIT=8 1224 - 1225 - 1226 - 1227 1227 ==== (% style="color:blue" %)**Encrypted payload**(%%) ==== 1228 1228 1229 1229 ((( ... ... @@ -1299,17 +1299,20 @@ 1299 1299 1300 1300 (% style="color:#4472c4" %)** AT+RPL=5** (%%) ~/~/ After receiving the package from the server, it will immediately upload the content of the package to the server, the port number is 100. 1301 1301 1287 + 1302 1302 Example:**aa xx xx xx xx** ~/~/ aa indicates whether the configuration has changed, 00 is yes, 01 is no; xx xx xx xx are the bytes sent. 1303 1303 1304 1304 1305 1305 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50%20%26%20LSN50-V2%20-%20LoRaWAN%20Sensor%20Node%20User%20Manual/WebHome/image-20220823173747-6.png?width=1124&height=165&rev=1.1||alt="image-20220823173747-6.png"]] 1306 1306 1307 -For example, sending 11 22 33 44 55 66 77 will return invalid configuration 00 11 22 33 44 55 66 77. 1308 1308 1309 1309 1295 +For example, sending 11 22 33 44 55 66 77 will return invalid configuration 00 11 22 33 44 55 66 77. 1310 1310 1297 + 1311 1311 [[image:http://wiki.dragino.com/xwiki/bin/download/Main/User%20Manual%20for%20LoRaWAN%20End%20Nodes/LSN50%20%26%20LSN50-V2%20-%20LoRaWAN%20Sensor%20Node%20User%20Manual/WebHome/image-20220823173833-7.png?width=1124&height=149&rev=1.1||alt="image-20220823173833-7.png"]] 1312 1312 1300 + 1313 1313 For example, if 01 00 02 58 is issued, a valid configuration of 01 01 00 02 58 will be returned. 1314 1314 1315 1315 ... ... @@ -1351,7 +1351,7 @@ 1351 1351 (% style="color:#037691" %)**Downlink Payload:** 1352 1352 ))) 1353 1353 1354 -(% style="color:#4472c4" %)** A6 aa bb bb ** (%%) ~/~/ 1342 +(% style="color:#4472c4" %)** A6 aa bb bb ** (%%) ~/~/same as AT+RXMODE=aa,bb 1355 1355 1356 1356 [[image:image-20220824144240-1.png]] 1357 1357 ... ... @@ -1445,8 +1445,6 @@ 1445 1445 1446 1446 ((( 1447 1447 RS485-LN will capture both and send the uplink: (% style="background-color:#ffc000" %)01 03 00 00 00 02 c4 0b (% style="background-color:green" %)01 03 04 00 00 00 00 fa 33 1448 - 1449 - 1450 1450 ))) 1451 1451 1452 1452 ((( ... ... @@ -1468,8 +1468,8 @@ 1468 1468 == 3.7 Buttons == 1469 1469 1470 1470 1471 -(% border="1 .5" cellspacing="4" style="background-color:#ffffcc; width:430px" %)1472 -|=(% style="width: 50px;" %)**Button**|=(% style="width: 3 80px;" %)**Feature**1457 +(% border="1" cellspacing="10" style="background-color:#f7faff; width:430px" %) 1458 +|=(% style="width: 50px;" %)**Button**|=(% style="width: 361px;" %)**Feature** 1473 1473 |(% style="width:50px" %)**ACT**|(% style="width:361px" %)If RS485 joined in network, press this button for more than 1 second, RS485 will upload a packet, and the SYS LED will give a (% style="color:blue" %)**Blue blink** 1474 1474 |(% style="width:50px" %)**RST**|(% style="width:361px" %)Reboot RS485 1475 1475 |(% style="width:50px" %)**PRO**|(% style="width:361px" %)Use for upload image, see [[How to Update Image>>||anchor="H6.1Howtoupgradetheimage3F"]] ... ... @@ -1476,11 +1476,10 @@ 1476 1476 1477 1477 1478 1478 1479 - 1480 1480 == 3.8 LEDs == 1481 1481 1482 1482 1483 -(% border="1 .5" cellspacing="4" style="background-color:#ffffcc; width:430px" %)1468 +(% border="1" cellspacing="10" style="background-color:#f7faff; width:430px" %) 1484 1484 |=(% style="width: 50px;" %)**LEDs**|=(% style="width: 380px;" %)**Feature** 1485 1485 |**PWR**|Always on if there is power 1486 1486 |**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. ... ... @@ -1487,7 +1487,6 @@ 1487 1487 1488 1488 1489 1489 1490 - 1491 1491 = 4. Case Study = 1492 1492 1493 1493 ... ... @@ -1686,7 +1686,7 @@ 1686 1686 == 6.5 Can i use point to point communication for RS485-LN? == 1687 1687 1688 1688 1689 -Yes, please updating point-to-point [[firmware>>https://www.dropbox.com/sh/g99v0fxcltn9r1y/AACP33wo_ZQLsxW2MJ70oUoba/RS485-LN/Firmware?dl=0&subfolder_nav_tracking=1]],thenrefer[[Point to Point Communication for RS485-LN>>Point to Point Communication for RS485-LN]].1673 +Yes, please refer [[Point to Point Communication for RS485-LN>>Point to Point Communication for RS485-LN]]. 1690 1690 1691 1691 1692 1692 ... ... @@ -1734,7 +1734,6 @@ 1734 1734 1735 1735 1736 1736 1737 - 1738 1738 = 9.Packing Info = 1739 1739 1740 1740 ... ... @@ -1753,7 +1753,6 @@ 1753 1753 1754 1754 1755 1755 1756 - 1757 1757 = 10. FCC Caution for RS485LN-US915 = 1758 1758 1759 1759
- image-20220929111027-1.png
-
- Author
-
... ... @@ -1,1 +1,0 @@ 1 -XWiki.Bei - Size
-
... ... @@ -1,1 +1,0 @@ 1 -240.0 KB - Content