Changes for page RS485-BL – Waterproof RS485 to LoRaWAN Converter
Last modified by Xiaoling on 2025/04/23 15:57
Summary
-
Page properties (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -872,7 +872,7 @@ 872 872 ))) 873 873 874 874 ((( 875 - {{{}}}}875 +**}** 876 876 877 877 878 878 ))) ... ... @@ -939,101 +939,53 @@ 939 939 940 940 ==== **RS485 Debug Command (AT+CFGDEV)** ==== 941 941 942 -((( 943 943 This command is used to configure the RS485 or TTL sensors; they won’t be used during sampling. 944 -))) 945 945 946 -* ((( 947 -**AT Command** 948 -))) 944 +* **AT Command** 949 949 950 950 (% class="box infomessage" %) 951 951 ((( 952 -((( 953 953 **AT+CFGDEV=xx xx xx xx xx xx xx xx xx xx xx xx,m** 954 954 ))) 955 -))) 956 956 957 -((( 958 958 m: 0: no CRC; 1: add CRC-16/MODBUS in the end of this command. 959 -))) 960 960 961 -((( 962 - 963 -))) 964 964 965 -* ((( 966 -**Downlink Payload** 967 -))) 954 +* **Downlink Payload** 968 968 969 -((( 970 970 Format: A8 MM NN XX XX XX XX YY 971 -))) 972 972 973 -((( 974 974 Where: 975 -))) 976 976 977 -* ((( 978 -MM: 1: add CRC-16/MODBUS ; 0: no CRC 979 -))) 980 -* ((( 981 -NN: The length of RS485 command 982 -))) 983 -* ((( 984 -XX XX XX XX: RS485 command total NN bytes 985 -))) 986 -* ((( 987 -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 988 -))) 960 +* MM: 1: add CRC-16/MODBUS ; 0: no CRC 961 +* NN: The length of RS485 command 962 +* XX XX XX XX: RS485 command total NN bytes 963 +* 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 989 989 990 -((( 991 991 **Example 1:** 992 -))) 993 993 994 -((( 995 995 To connect a Modbus Alarm with below commands. 996 -))) 997 997 998 -* ((( 999 -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. 1000 -))) 969 +* 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. 1001 1001 1002 -* ((( 1003 -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. 1004 -))) 971 +* 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. 1005 1005 1006 -((( 1007 1007 So if user want to use downlink command to control to RS485 Alarm, he can use: 1008 -))) 1009 1009 1010 -((( 1011 1011 (% style="color:#037691" %)**A8 01 06 0A 05 00 04 00 01 00**(%%): to activate the RS485 Alarm 1012 -))) 1013 1013 1014 -((( 1015 1015 (% style="color:#037691" %)**A8 01 06 0A 05 00 04 00 00 00**(%%): to deactivate the RS485 Alarm 1016 -))) 1017 1017 1018 1018 ((( 1019 1019 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. 1020 1020 ))) 1021 1021 1022 -((( 1023 - 1024 -))) 1025 1025 1026 -((( 1027 1027 **Example 2:** 1028 -))) 1029 1029 1030 -((( 1031 1031 Check TTL Sensor return: 1032 -))) 1033 1033 1034 -((( 1035 1035 [[image:1654132684752-193.png]] 1036 -))) 1037 1037 1038 1038 1039 1039 ... ... @@ -1062,121 +1062,62 @@ 1062 1062 1063 1063 ==== **Set RS485 Sampling Commands** ==== 1064 1064 1065 -((( 1066 1066 AT+COMMANDx, AT+DATACUTx and AT+SEARCHx 1067 -))) 1068 1068 1069 -((( 1070 1070 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"]]. 1071 -))) 1072 1072 1073 -((( 1074 - 1075 -))) 1076 1076 1077 -* ((( 1078 -**AT Command:** 1079 -))) 1022 +* **AT Command:** 1080 1080 1081 1081 (% class="box infomessage" %) 1082 1082 ((( 1083 -((( 1084 1084 **AT+COMMANDx: Configure RS485 read command to sensor.** 1085 1085 ))) 1086 -))) 1087 1087 1088 1088 (% class="box infomessage" %) 1089 1089 ((( 1090 -((( 1091 1091 **AT+DATACUTx: Configure how to handle return from RS485 devices.** 1092 1092 ))) 1093 -))) 1094 1094 1095 1095 (% class="box infomessage" %) 1096 1096 ((( 1097 -((( 1098 1098 **AT+SEARCHx: Configure search command** 1099 1099 ))) 1100 -))) 1101 1101 1102 -((( 1103 - 1104 -))) 1105 1105 1106 -* ((( 1107 -**Downlink Payload:** 1108 -))) 1040 +* **Downlink Payload:** 1109 1109 1110 -((( 1111 1111 **0xAF** downlink command can be used to set AT+COMMANDx or AT+DATACUTx. 1112 -))) 1113 1113 1114 -((( 1115 1115 (% style="color:red" %)**Note**(%%): if user use AT+COMMANDx to add a new command, he also need to send AT+DATACUTx downlink. 1116 -))) 1117 1117 1118 -((( 1119 1119 Format: AF MM NN LL XX XX XX XX YY 1120 -))) 1121 1121 1122 -((( 1123 1123 Where: 1124 -))) 1125 1125 1126 -* ((( 1127 -MM: the ATCOMMAND or AT+DATACUT to be set. Value from 01 ~~ 0F, 1128 -))) 1129 -* ((( 1130 -NN: 0: no CRC; 1: add CRC-16/MODBUS ; 2: set the AT+DATACUT value. 1131 -))) 1132 -* ((( 1133 -LL: The length of AT+COMMAND or AT+DATACUT command 1134 -))) 1135 -* ((( 1136 -XX XX XX XX: AT+COMMAND or AT+DATACUT command 1137 -))) 1138 -* ((( 1139 -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. 1140 -))) 1050 +* MM: the ATCOMMAND or AT+DATACUT to be set. Value from 01 ~~ 0F, 1051 +* NN: 0: no CRC; 1: add CRC-16/MODBUS ; 2: set the AT+DATACUT value. 1052 +* LL: The length of AT+COMMAND or AT+DATACUT command 1053 +* XX XX XX XX: AT+COMMAND or AT+DATACUT command 1054 +* 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. 1141 1141 1142 -((( 1143 1143 **Example:** 1144 -))) 1145 1145 1146 -((( 1147 1147 (% 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 1148 -))) 1149 1149 1150 -((( 1151 1151 (% 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** 1152 -))) 1153 1153 1154 -((( 1155 1155 (% 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** 1156 -))) 1157 1157 1158 -((( 1159 - 1160 -))) 1161 1161 1162 -((( 1163 1163 **0xAB** downlink command can be used for set AT+SEARCHx 1164 -))) 1165 1165 1166 -((( 1167 1167 **Example:** **AB aa 01 03 xx xx xx** (03 here means there are total 3 bytes after 03) So 1168 -))) 1169 1169 1170 -* ((( 1171 -AB aa 01 03 xx xx xx same as AT+SEARCHaa=1,xx xx xx 1172 -))) 1173 -* ((( 1174 -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 1175 -))) 1069 +* AB aa 01 03 xx xx xx same as AT+SEARCHaa=1,xx xx xx 1070 +* 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 1176 1176 1177 -((( 1178 1178 **AB aa 02 03 xx xx xx 02 yy yy** same as **AT+SEARCHaa=2,xx xx xx+yy yy** 1179 -))) 1180 1180 1181 1181 1182 1182 ... ... @@ -1183,47 +1183,24 @@ 1183 1183 1184 1184 ==== **Fast command to handle MODBUS device** ==== 1185 1185 1186 -((( 1187 1187 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]]. 1188 -))) 1189 1189 1190 -((( 1191 1191 This command is valid since v1.3 firmware version 1192 -))) 1193 1193 1194 -((( 1195 - 1196 -))) 1197 1197 1198 -((( 1199 1199 **AT+MBFUN has only two value:** 1200 -))) 1201 1201 1202 -* ((( 1203 -**AT+MBFUN=1**: Enable Modbus reading. And get response base on the MODBUS return 1204 -))) 1086 +* **AT+MBFUN=1**: Enable Modbus reading. And get response base on the MODBUS return 1205 1205 1206 -((( 1207 1207 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. 1208 -))) 1209 1209 1210 -* ((( 1211 -**AT+MBFUN=0**: Disable Modbus fast reading. 1212 -))) 1090 +* **AT+MBFUN=0**: Disable Modbus fast reading. 1213 1213 1214 -((( 1215 1215 **Example:** 1216 -))) 1217 1217 1218 -* ((( 1219 -AT+MBFUN=1 and AT+DATACUT1/AT+DATACUT2 are not configure (0,0,0). 1220 -))) 1221 -* ((( 1222 -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. 1223 -))) 1224 -* ((( 1225 -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. 1226 -))) 1094 +* AT+MBFUN=1 and AT+DATACUT1/AT+DATACUT2 are not configure (0,0,0). 1095 +* 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. 1096 +* 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. 1227 1227 1228 1228 [[image:1654133913295-597.png]] 1229 1229 ... ... @@ -1402,7 +1402,7 @@ 1402 1402 1403 1403 == 3.6 Buttons == 1404 1404 1405 -(% border="1" cellspacing="10" style="background-color:#ffffcc; color:green; width:233px" %)1275 +(% border="1" style="background-color:#ffffcc; color:green; width:233px" %) 1406 1406 |=(% style="width: 89px;" %)**Button**|=(% style="width: 141px;" %)**Feature** 1407 1407 |(% style="width:89px" %)**RST**|(% style="width:141px" %)Reboot RS485-BL 1408 1408 ... ... @@ -1410,75 +1410,38 @@ 1410 1410 1411 1411 == 3.7 +3V3 Output == 1412 1412 1413 -((( 1414 1414 RS485-BL has a Controllable +3V3 output, user can use this output to power external sensor. 1415 -))) 1416 1416 1417 -((( 1418 1418 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. 1419 -))) 1420 1420 1421 -((( 1422 1422 The +3V3 output time can be controlled by AT Command. 1423 -))) 1424 1424 1425 -((( 1426 - 1427 -))) 1428 1428 1429 -((( 1430 1430 (% style="color:#037691" %)**AT+3V3T=1000** 1431 -))) 1432 1432 1433 -((( 1434 - 1435 -))) 1436 1436 1437 -((( 1438 1438 Means set +3v3 valid time to have 1000ms. So, the real +3v3 output will actually have 1000ms + sampling time for other sensors. 1439 -))) 1440 1440 1441 -((( 1442 1442 By default, the AT+3V3T=0. This is a special case, means the +3V3 output is always on at any time 1443 -))) 1444 1444 1445 1445 1446 1446 == 3.8 +5V Output == 1447 1447 1448 -((( 1449 1449 RS485-BL has a Controllable +5V output, user can use this output to power external sensor. 1450 -))) 1451 1451 1452 -((( 1453 1453 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. 1454 -))) 1455 1455 1456 -((( 1457 1457 The 5V output time can be controlled by AT Command. 1458 -))) 1459 1459 1460 -((( 1461 - 1462 -))) 1463 1463 1464 -((( 1465 1465 (% style="color:#037691" %)**AT+5VT=1000** 1466 -))) 1467 1467 1468 -((( 1469 - 1470 -))) 1471 1471 1472 -((( 1473 1473 Means set 5V valid time to have 1000ms. So, the real 5V output will actually have 1000ms + sampling time for other sensors. 1474 -))) 1475 1475 1476 -((( 1477 1477 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. 1478 -))) 1479 1479 1480 1480 1481 - 1482 1482 == 3.9 LEDs == 1483 1483 1484 1484 (% border="1" style="background-color:#ffffcc; color:green; width:332px" %) ... ... @@ -1485,8 +1485,6 @@ 1485 1485 |=**LEDs**|=(% style="width: 274px;" %)**Feature** 1486 1486 |**LED1**|(% style="width:274px" %)Blink when device transmit a packet. 1487 1487 1488 - 1489 - 1490 1490 == 3.10 Switch Jumper == 1491 1491 1492 1492 (% border="1" style="background-color:#ffffcc; color:green; width:515px" %) ... ... @@ -1502,13 +1502,9 @@ 1502 1502 3.3v position: set to compatible with 3.3v I/O., 1503 1503 ))) 1504 1504 1505 -((( 1506 1506 **+3.3V**: is always ON 1507 -))) 1508 1508 1509 -((( 1510 1510 **+5V**: Only open before every sampling. The time is by default, it is AT+5VT=0. Max open time. 5000 ms. 1511 -))) 1512 1512 1513 1513 1514 1514 = 4. Case Study = ... ... @@ -1520,23 +1520,17 @@ 1520 1520 1521 1521 == 5.1 Access AT Command == 1522 1522 1523 -((( 1524 1524 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. 1525 -))) 1526 1526 1527 1527 [[image:1654135840598-282.png]] 1528 1528 1529 1529 1530 -((( 1531 1531 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: 1532 -))) 1533 1533 1534 1534 [[image:1654136105500-922.png]] 1535 1535 1536 1536 1537 -((( 1538 1538 More detail AT Command manual can be found at [[AT Command Manual>>||anchor="H3.5ConfigureRS485-BLviaATorDownlink"]] 1539 -))) 1540 1540 1541 1541 1542 1542 == 5.2 Common AT Command Sequence == ... ... @@ -1561,9 +1561,7 @@ 1561 1561 ))) 1562 1562 1563 1563 1564 -((( 1565 1565 If device already joined network: 1566 -))) 1567 1567 1568 1568 (% class="box infomessage" %) 1569 1569 ((( ... ... @@ -1602,12 +1602,10 @@ 1602 1602 1603 1603 (% style="color:red" %)**Note:** 1604 1604 1605 -((( 1606 1606 (% style="color:red" %)1. Make sure the device is set to ABP mode in the IoT Server. 1607 1607 2. Make sure the LG01/02 gateway RX frequency is exactly the same as AT+CHS setting. 1608 1608 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. 1609 1609 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 1610 -))) 1611 1611 1612 1612 [[image:1654136435598-589.png]] 1613 1613 ... ... @@ -1616,23 +1616,13 @@ 1616 1616 1617 1617 == 6.1 How to upgrade the image? == 1618 1618 1619 -((( 1620 1620 The RS485-BL LoRaWAN Controller is shipped with a 3.5mm cable, the cable is used to upload image to RS485-BL to: 1621 -))) 1622 1622 1623 -* ((( 1624 -Support new features 1625 -))) 1626 -* ((( 1627 -For bug fix 1628 -))) 1629 -* ((( 1630 -Change LoRaWAN bands. 1631 -))) 1438 +* Support new features 1439 +* For bug fix 1440 +* Change LoRaWAN bands. 1632 1632 1633 -((( 1634 1634 Below shows the hardware connection for how to upload an image to RS485-BL: 1635 -))) 1636 1636 1637 1637 [[image:1654136646995-976.png]] 1638 1638 ... ... @@ -1698,8 +1698,6 @@ 1698 1698 * (% style="color:blue" %)**RU864**(%%): frequency bands RU864 1699 1699 * (% style="color:blue" %)**KZ865**(%%): frequency bands KZ865 1700 1700 1701 - 1702 - 1703 1703 = 9. Packing Info = 1704 1704 1705 1705 (((