Last modified by Xiaoling on 2025/04/23 15:57

From version 41.37
edited by Xiaoling
on 2022/06/06 11:20
Change comment: There is no comment for this version
To version 41.20
edited by Xiaoling
on 2022/06/06 11:06
Change comment: There is no comment for this version

Summary

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  
... ... @@ -1231,13 +1231,9 @@
1231 1231  [[image:1654133954153-643.png]]
1232 1232  
1233 1233  
1234 -* (((
1235 -**Downlink Commands:**
1236 -)))
1104 +* **Downlink Commands:**
1237 1237  
1238 -(((
1239 1239  **A9 aa** ~-~-> Same as AT+MBFUN=aa
1240 -)))
1241 1241  
1242 1242  
1243 1243  
... ... @@ -1244,60 +1244,32 @@
1244 1244  
1245 1245  ==== **RS485 command timeout** ====
1246 1246  
1247 -(((
1248 1248  Some Modbus device has slow action to send replies. This command is used to configure the RS485-BL to use longer time to wait for their action.
1249 -)))
1250 1250  
1251 -(((
1252 1252  Default value: 0, range:  0 ~~ 5 seconds
1253 -)))
1254 1254  
1255 -(((
1256 -
1257 -)))
1258 1258  
1259 -* (((
1260 -**AT Command:**
1261 -)))
1118 +* **AT Command:**
1262 1262  
1263 1263  (% class="box infomessage" %)
1264 1264  (((
1265 -(((
1266 1266  **AT+CMDDLaa=hex(bb cc)**
1267 1267  )))
1268 -)))
1269 1269  
1270 -(((
1271 1271  **Example:**
1272 -)))
1273 1273  
1274 -(((
1275 1275  **AT+CMDDL1=1000** to send the open time to 1000ms
1276 -)))
1277 1277  
1278 -(((
1279 -
1280 -)))
1281 1281  
1282 -* (((
1283 -**Downlink Payload:**
1284 -)))
1130 +* **Downlink Payload:**
1285 1285  
1286 -(((
1287 1287  0x AA aa bb cc
1288 -)))
1289 1289  
1290 -(((
1291 1291  Same as: AT+CMDDLaa=hex(bb cc)
1292 -)))
1293 1293  
1294 -(((
1295 1295   **Example:**
1296 -)))
1297 1297  
1298 -(((
1299 1299   **0xAA 01 03 E8**  ~-~-> Same as **AT+CMDDL1=1000 ms**
1300 -)))
1301 1301  
1302 1302  
1303 1303  
... ... @@ -1442,75 +1442,38 @@
1442 1442  
1443 1443  == 3.7 +3V3 Output ==
1444 1444  
1445 -(((
1446 1446  RS485-BL has a Controllable +3V3 output, user can use this output to power external sensor.
1447 -)))
1448 1448  
1449 -(((
1450 1450  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. 
1451 -)))
1452 1452  
1453 -(((
1454 1454  The +3V3 output time can be controlled by AT Command.
1455 -)))
1456 1456  
1457 -(((
1458 -
1459 -)))
1460 1460  
1461 -(((
1462 1462  (% style="color:#037691" %)**AT+3V3T=1000**
1463 -)))
1464 1464  
1465 -(((
1466 -
1467 -)))
1468 1468  
1469 -(((
1470 1470  Means set +3v3 valid time to have 1000ms. So, the real +3v3 output will actually have 1000ms + sampling time for other sensors.
1471 -)))
1472 1472  
1473 -(((
1474 1474  By default, the AT+3V3T=0. This is a special case, means the +3V3 output is always on at any time
1475 -)))
1476 1476  
1477 1477  
1478 1478  == 3.8 +5V Output ==
1479 1479  
1480 -(((
1481 1481  RS485-BL has a Controllable +5V output, user can use this output to power external sensor.
1482 -)))
1483 1483  
1484 -(((
1485 1485  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. 
1486 -)))
1487 1487  
1488 -(((
1489 1489  The 5V output time can be controlled by AT Command.
1490 -)))
1491 1491  
1492 -(((
1493 -
1494 -)))
1495 1495  
1496 -(((
1497 1497  (% style="color:#037691" %)**AT+5VT=1000**
1498 -)))
1499 1499  
1500 -(((
1501 -
1502 -)))
1503 1503  
1504 -(((
1505 1505  Means set 5V valid time to have 1000ms. So, the real 5V output will actually have 1000ms + sampling time for other sensors.
1506 -)))
1507 1507  
1508 -(((
1509 1509  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.
1510 -)))
1511 1511  
1512 1512  
1513 -
1514 1514  == 3.9 LEDs ==
1515 1515  
1516 1516  (% border="1" style="background-color:#ffffcc; color:green; width:332px" %)
... ... @@ -1517,8 +1517,6 @@
1517 1517  |=**LEDs**|=(% style="width: 274px;" %)**Feature**
1518 1518  |**LED1**|(% style="width:274px" %)Blink when device transmit a packet.
1519 1519  
1520 -
1521 -
1522 1522  == 3.10 Switch Jumper ==
1523 1523  
1524 1524  (% border="1" style="background-color:#ffffcc; color:green; width:515px" %)
... ... @@ -1534,13 +1534,9 @@
1534 1534  3.3v position: set to compatible with 3.3v I/O.,
1535 1535  )))
1536 1536  
1537 -(((
1538 1538  **+3.3V**: is always ON
1539 -)))
1540 1540  
1541 -(((
1542 1542  **+5V**: Only open before every sampling. The time is by default, it is AT+5VT=0.  Max open time. 5000 ms.
1543 -)))
1544 1544  
1545 1545  
1546 1546  = 4. Case Study =
... ... @@ -1552,23 +1552,17 @@
1552 1552  
1553 1553  == 5.1 Access AT Command ==
1554 1554  
1555 -(((
1556 1556  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.
1557 -)))
1558 1558  
1559 1559  [[image:1654135840598-282.png]]
1560 1560  
1561 1561  
1562 -(((
1563 1563  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:
1564 -)))
1565 1565  
1566 1566  [[image:1654136105500-922.png]]
1567 1567  
1568 1568  
1569 -(((
1570 1570  More detail AT Command manual can be found at [[AT Command Manual>>||anchor="H3.5ConfigureRS485-BLviaATorDownlink"]]
1571 -)))
1572 1572  
1573 1573  
1574 1574  == 5.2 Common AT Command Sequence ==
... ... @@ -1593,9 +1593,7 @@
1593 1593  )))
1594 1594  
1595 1595  
1596 -(((
1597 1597  If device already joined network:
1598 -)))
1599 1599  
1600 1600  (% class="box infomessage" %)
1601 1601  (((
... ... @@ -1634,12 +1634,10 @@
1634 1634  
1635 1635  (% style="color:red" %)**Note:**
1636 1636  
1637 -(((
1638 1638  (% style="color:red" %)1. Make sure the device is set to ABP mode in the IoT Server.
1639 1639  2. Make sure the LG01/02 gateway RX frequency is exactly the same as AT+CHS setting.
1640 1640  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.
1641 1641  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
1642 -)))
1643 1643  
1644 1644  [[image:1654136435598-589.png]]
1645 1645  
... ... @@ -1648,23 +1648,13 @@
1648 1648  
1649 1649  == 6.1 How to upgrade the image? ==
1650 1650  
1651 -(((
1652 1652  The RS485-BL LoRaWAN Controller is shipped with a 3.5mm cable, the cable is used to upload image to RS485-BL to:
1653 -)))
1654 1654  
1655 -* (((
1656 -Support new features
1657 -)))
1658 -* (((
1659 -For bug fix
1660 -)))
1661 -* (((
1662 -Change LoRaWAN bands.
1663 -)))
1438 +* Support new features
1439 +* For bug fix
1440 +* Change LoRaWAN bands.
1664 1664  
1665 -(((
1666 1666  Below shows the hardware connection for how to upload an image to RS485-BL:
1667 -)))
1668 1668  
1669 1669  [[image:1654136646995-976.png]]
1670 1670  
... ... @@ -1730,8 +1730,6 @@
1730 1730  * (% style="color:blue" %)**RU864**(%%): frequency bands RU864
1731 1731  * (% style="color:blue" %)**KZ865**(%%): frequency bands KZ865
1732 1732  
1733 -
1734 -
1735 1735  = 9. Packing Info =
1736 1736  
1737 1737  (((