Changes for page RS485-LN – RS485 to LoRaWAN Converter User Manual
Last modified by Bei Jinggeng on 2025/01/16 11:36
Change comment:
Uploaded new attachment "image-20221130104310-9.png", version {1}
Summary
-
Page properties (1 modified, 0 added, 0 removed)
-
Attachments (0 modified, 9 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -33,40 +33,28 @@ 33 33 34 34 == 1.1 What is RS485-LN RS485 to LoRaWAN Converter == 35 35 36 -((( 37 -((( 38 -((( 39 - 40 40 37 +((( 41 41 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. 42 42 ))) 43 -))) 44 44 45 45 ((( 46 -((( 47 47 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. 48 48 ))) 49 -))) 50 50 51 51 ((( 52 -((( 53 53 (% 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. 54 54 ))) 55 -))) 56 56 57 57 ((( 58 -((( 59 59 (% 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. 60 60 ))) 61 61 62 62 ((( 63 63 (% 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 - 66 66 ))) 67 -))) 68 -))) 69 69 57 + 70 70 (% 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" %) 71 71 72 72 ... ... @@ -76,7 +76,7 @@ 76 76 77 77 (% style="color:#037691" %)**Hardware System:** 78 78 79 -* STM32L072 CZT6MCU67 +* STM32L072xxxx MCU 80 80 * SX1276/78 Wireless Chip 81 81 * Power Consumption (exclude RS485 device): 82 82 ** Idle: 32mA@12v ... ... @@ -109,6 +109,7 @@ 109 109 * Packet engine up to 256 bytes with CRC 110 110 111 111 100 + 112 112 == 1.3 Features == 113 113 114 114 ... ... @@ -122,6 +122,7 @@ 122 122 * Support Interrupt uplink (Since hardware version v1.2) 123 123 124 124 114 + 125 125 == 1.4 Applications == 126 126 127 127 ... ... @@ -133,6 +133,7 @@ 133 133 * Smart Factory 134 134 135 135 126 + 136 136 == 1.5 Firmware Change log == 137 137 138 138 ... ... @@ -306,10 +306,10 @@ 306 306 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: 307 307 308 308 309 -(% border="1" cellspacing=" 10" style="background-color:#ffffcc; color:green; width:510px" %)300 +(% border="1" cellspacing="5" style="background-color:#ffffcc; color:green; width:510px" %) 310 310 |=(% style="width: 110px;" %)((( 311 311 **AT Commands** 312 -)))|=(% style="width: 1 90px;" %)(((303 +)))|=(% style="width: 210px;" %)((( 313 313 **Description** 314 314 )))|=(% style="width: 190px;" %)((( 315 315 **Example** ... ... @@ -377,8 +377,8 @@ 377 377 ))) 378 378 ))) 379 379 380 -(% border="1" cellspacing=" 10" style="background-color:#ffffcc; color:green; width:510px" %)381 -|=(% style="width: 110px;" %)**AT Commands**|=(% style="width: 1 90px;" %)**Description**|=(% style="width: 190px;" %)**Example**371 +(% border="1" cellspacing="5" style="background-color:#ffffcc; color:green; width:510px" %) 372 +|=(% style="width: 110px;" %)**AT Commands**|=(% style="width: 210px;" %)**Description**|=(% style="width: 190px;" %)**Example** 382 382 |AT+CFGDEV|(% style="width:110px" %)((( 383 383 ((( 384 384 This command is used to configure the RS485/TTL devices; they won’t be used during sampling. ... ... @@ -427,7 +427,7 @@ 427 427 428 428 (% border="1" style="background-color:#4bacc6; color:white; width:499px" %) 429 429 |(% style="width:496px" %)((( 430 - (% style="color:#037691" %)**AT+COMMANDx=xx xx xx xx xx xx xx xx xx xx xx xx,m**421 +**AT+COMMANDx=xx xx xx xx xx xx xx xx xx xx xx xx,m** 431 431 432 432 **xx xx xx xx xx xx xx xx xx xx xx xx: The RS485 command to be sent** 433 433 ... ... @@ -513,11 +513,15 @@ 513 513 Final Payload is (% style="color:#4f81bd" %)**PAYVER + PAYLOAD COUNT + PAYLOAD# + DATA** 514 514 515 515 516 -1. PAYVER: Defined by AT+PAYVER 517 -1. PAYLOAD COUNT: Total how many uplinks of this sampling. 518 -1. PAYLOAD#: Number of this uplink. (from 0,1,2,3…,to PAYLOAD COUNT) 519 -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 507 +~1. PAYVER: Defined by AT+PAYVER 520 520 509 +2. PAYLOAD COUNT: Total how many uplinks of this sampling. 510 + 511 +3. PAYLOAD#: Number of this uplink. (from 0,1,2,3…,to PAYLOAD COUNT) 512 + 513 +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 514 + 515 + 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,10 +541,10 @@ 541 541 542 542 ~* For all other bands: max 51 bytes for each uplink. 543 543 544 -(% style="color:red" %)*** When AT+DATAUP=1, the maximum number of segments is 15, and the maximum total number of bytes is 1500;** 545 545 546 -(% style="color:red" %)** and AT+ADR=0, the maximum number ofbytesofeachpayloadis determinedbyheDR value. (Sincev1.4.0)**540 +(% style="color:red" %)** When AT+DATAUP=1, the maximum number of segments is 15, and the maximum total number of bytes is 1500;** 547 547 542 +(% 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 549 549 550 550 ... ... @@ -583,8 +583,26 @@ 583 583 == 3.4 Uplink Payload == 584 584 585 585 586 -(% 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"]] 581 +(% border="1" cellspacing="5" style="background-color:#ffffcc; color:green; width:500px" %) 582 +|=(% scope="row" style="width: 60px;" %)((( 583 +Size(bytes) 584 +)))|(% style="width:80px" %)1|(% style="width:360px" %)((( 585 +Length depends on the return from the commands 586 +))) 587 +|=(% style="width: 90px;" %)((( 588 +Value 589 +)))|(% style="width:114px" %)((( 590 +PAYLOAD_VER 591 +)))|(% style="width:353px" %)((( 592 +If the valid payload is too long and exceed the maximum 587 587 594 +support payload length in server, server will show payload not 595 + 596 +provided in the LoRaWAN server. 597 +))) 598 + 599 +(% 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"]] 600 + 588 588 (% title="Click and drag to resize" %) 589 589 590 590 Below is the decoder for the first 3 bytes. The rest bytes are dynamic depends on different RS485 sensors. ... ... @@ -646,7 +646,7 @@ 646 646 647 647 648 648 ((( 649 -This command is used to configure the RS485 devices; they won't be used during sampling. 662 +This command is used to configure the RS485 devices; they won't be used during sampling. Max Length of AT+CFGDEV is **40 bytes**. 650 650 ))) 651 651 652 652 ((( ... ... @@ -793,14 +793,16 @@ 793 793 ))) 794 794 795 795 796 -1 ) Add the interrupt flag at the highest bit of the Payver byte, that is, Byte7 of the first byte. (Since v1.4.0) 809 +**1 ) Add the interrupt flag at the highest bit of the Payver byte, that is, Byte7 of the first byte. (Since v1.4.0)** 797 797 811 + 798 798 [[image:image-20220824145428-2.png||height="168" width="1300"]] 799 799 800 800 801 -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. 802 802 816 +**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.** 803 803 818 + 804 804 [[image:image-20220824145428-3.png||height="308" width="1200"]] 805 805 806 806 ... ... @@ -926,8 +926,10 @@ 926 926 927 927 ))) 928 928 929 -(% 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" %)944 +(% aria-label="image-20220602165351-6.png image widget" contenteditable="false" role="region" tabindex="-1" %)[[image:image-20220602165351-6.png||data-widget="image"]] 930 930 946 +(% title="Click and drag to resize" %) 947 + 931 931 (% 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" %) 932 932 933 933 ... ... @@ -1124,15 +1124,10 @@ 1124 1124 1125 1125 ((( 1126 1126 Set the Rs485 serial communication parameters: 1127 - 1128 - 1129 1129 ))) 1130 1130 1131 -* ((( 1132 -(% style="color:#037691" %)** AT Command:** 1133 - 1134 - 1135 - 1146 +((( 1147 +(% style="color:#037691" %)**AT Command:** 1136 1136 ))) 1137 1137 1138 1138 ((( ... ... @@ -1139,7 +1139,7 @@ 1139 1139 * Set Baud Rate 1140 1140 ))) 1141 1141 1142 -(% 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 1154 +(% 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 1143 1143 1144 1144 1145 1145 ((( ... ... @@ -1146,7 +1146,7 @@ 1146 1146 * Set UART Parity 1147 1147 ))) 1148 1148 1149 -(% style="color:#4472c4" %)** AT+PARITY=0** (%%) ~/~/ Option: 0: no parity, 1: odd parity, 2: even parity 1161 +(% style="color:#4472c4" %)** AT+PARITY=0** (%%) ~/~/ Option: 0: no parity, 1: odd parity, 2: even parity 1150 1150 1151 1151 1152 1152 ((( ... ... @@ -1153,21 +1153,18 @@ 1153 1153 * Set STOPBIT 1154 1154 ))) 1155 1155 1156 -(% style="color:#4472c4" %)** AT+STOPBIT=0** (%%) ~/~/ Option: 0 for 1bit; 1 for 1.5 bit ; 2 for 2 bits 1168 +(% style="color:#4472c4" %)** AT+STOPBIT=0** (%%) ~/~/ Option: 0 for 1bit; 1 for 1.5 bit ; 2 for 2 bits 1157 1157 1158 1158 1159 - 1160 -* ((( 1161 -(% style="color:#037691" %)** Downlink Payload:** 1171 +((( 1172 +(% style="color:#037691" %)**Downlink Payload:** 1162 1162 ))) 1163 1163 1164 1164 ((( 1165 -(% style="color:#4472c4" %)** A7 01 aa bb**: (%%) Same AT+BAUDR=hex(aa bb)*100 1176 +(% style="color:#4472c4" %)** A7 01 aa bb**: (%%) Same AT+BAUDR=hex(aa bb)*100 1166 1166 ))) 1167 1167 1168 1168 ((( 1169 - 1170 - 1171 1171 **Example:** 1172 1172 ))) 1173 1173 ... ... @@ -1189,7 +1189,27 @@ 1189 1189 1190 1190 1191 1191 1201 +==== (% style="color:blue" %)**Configure Databit (Since Version 1.4.0)**(%%) ==== 1192 1192 1203 + 1204 +* ((( 1205 +(% style="color:#037691" %)** AT Command:** 1206 +))) 1207 + 1208 +(% style="color:#4472c4" %)** AT+DATABIT=7 **(%%)~/~/ Set the data bits to 7 1209 + 1210 +(% style="color:#4472c4" %)** AT+DATABIT=8 **(%%)~/~/ Set the data bits to 8 1211 + 1212 +* ((( 1213 +(% style="color:#037691" %)**Downlink Payload:** 1214 +))) 1215 + 1216 +(% style="color:#4472c4" %)** A7 04 07**(%%): Same as AT+DATABIT=7 1217 + 1218 +(% style="color:#4472c4" %)** A7 04 08**(%%): Same as AT+DATABIT=8 1219 + 1220 + 1221 + 1193 1193 ==== (% style="color:blue" %)**Encrypted payload**(%%) ==== 1194 1194 1195 1195 ((( ... ... @@ -1265,20 +1265,17 @@ 1265 1265 1266 1266 (% 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. 1267 1267 1268 - 1269 1269 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. 1270 1270 1271 1271 1272 1272 [[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"]] 1273 1273 1274 - 1275 - 1276 1276 For example, sending 11 22 33 44 55 66 77 will return invalid configuration 00 11 22 33 44 55 66 77. 1277 1277 1278 1278 1305 + 1279 1279 [[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"]] 1280 1280 1281 - 1282 1282 For example, if 01 00 02 58 is issued, a valid configuration of 01 01 00 02 58 will be returned. 1283 1283 1284 1284 ... ... @@ -1320,7 +1320,7 @@ 1320 1320 (% style="color:#037691" %)**Downlink Payload:** 1321 1321 ))) 1322 1322 1323 -(% style="color:#4472c4" %)** A6 aa bb bb ** (%%) ~/~/same as AT+RXMODE=aa,bb 1349 +(% style="color:#4472c4" %)** A6 aa bb bb ** (%%) ~/~/ same as AT+RXMODE=aa,bb 1324 1324 1325 1325 [[image:image-20220824144240-1.png]] 1326 1326 ... ... @@ -1414,6 +1414,8 @@ 1414 1414 1415 1415 ((( 1416 1416 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 1443 + 1444 + 1417 1417 ))) 1418 1418 1419 1419 ((( ... ... @@ -1435,22 +1435,24 @@ 1435 1435 == 3.7 Buttons == 1436 1436 1437 1437 1438 -(% border="1" cellspacing=" 10" style="background-color:#f7faff; width:430px" %)1439 -|=(% style="width: 50px;" %)**Button**|=(% style="width: 3 61px;" %)**Feature**1466 +(% border="1.5" cellspacing="4" style="background-color:#ffffcc; width:430px" %) 1467 +|=(% style="width: 50px;" %)**Button**|=(% style="width: 380px;" %)**Feature** 1440 1440 |(% 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** 1441 1441 |(% style="width:50px" %)**RST**|(% style="width:361px" %)Reboot RS485 1442 1442 |(% style="width:50px" %)**PRO**|(% style="width:361px" %)Use for upload image, see [[How to Update Image>>||anchor="H6.1Howtoupgradetheimage3F"]] 1443 1443 1444 1444 1473 + 1445 1445 == 3.8 LEDs == 1446 1446 1447 1447 1448 -(% border="1" cellspacing=" 10" style="background-color:#f7faff; width:430px" %)1477 +(% border="1.5" cellspacing="4" style="background-color:#ffffcc; width:430px" %) 1449 1449 |=(% style="width: 50px;" %)**LEDs**|=(% style="width: 380px;" %)**Feature** 1450 1450 |**PWR**|Always on if there is power 1451 1451 |**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. 1452 1452 1453 1453 1483 + 1454 1454 = 4. Case Study = 1455 1455 1456 1456 ... ... @@ -1649,7 +1649,7 @@ 1649 1649 == 6.5 Can i use point to point communication for RS485-LN? == 1650 1650 1651 1651 1652 -Yes, please refer [[Point to Point Communication for RS485-LN>>Point to Point Communication for RS485-LN]]. 1682 +Yes, please updating point-to-point [[firmware>>https://www.dropbox.com/sh/g99v0fxcltn9r1y/AACP33wo_ZQLsxW2MJ70oUoba/RS485-LN/Firmware?dl=0&subfolder_nav_tracking=1]],then refer [[Point to Point Communication for RS485-LN>>Point to Point Communication for RS485-LN]]. 1653 1653 1654 1654 1655 1655 ... ... @@ -1696,6 +1696,7 @@ 1696 1696 * (% style="color:red" %)**KZ865**(%%): frequency bands KZ865 1697 1697 1698 1698 1729 + 1699 1699 = 9.Packing Info = 1700 1700 1701 1701 ... ... @@ -1713,6 +1713,7 @@ 1713 1713 * Weight / pcs : 170g 1714 1714 1715 1715 1747 + 1716 1716 = 10. FCC Caution for RS485LN-US915 = 1717 1717 1718 1718
- image-20221130104310-1.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Bei - Size
-
... ... @@ -1,0 +1,1 @@ 1 +82.0 KB - Content
- image-20221130104310-2.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Bei - Size
-
... ... @@ -1,0 +1,1 @@ 1 +392.9 KB - Content
- image-20221130104310-3.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Bei - Size
-
... ... @@ -1,0 +1,1 @@ 1 +30.4 KB - Content
- image-20221130104310-4.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Bei - Size
-
... ... @@ -1,0 +1,1 @@ 1 +25.8 KB - Content
- image-20221130104310-5.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Bei - Size
-
... ... @@ -1,0 +1,1 @@ 1 +22.9 KB - Content
- image-20221130104310-6.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Bei - Size
-
... ... @@ -1,0 +1,1 @@ 1 +12.9 KB - Content
- image-20221130104310-7.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Bei - Size
-
... ... @@ -1,0 +1,1 @@ 1 +25.1 KB - Content
- image-20221130104310-8.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Bei - Size
-
... ... @@ -1,0 +1,1 @@ 1 +9.9 KB - Content
- image-20221130104310-9.png
-
- Author
-
... ... @@ -1,0 +1,1 @@ 1 +XWiki.Bei - Size
-
... ... @@ -1,0 +1,1 @@ 1 +29.1 KB - Content