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

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

Summary

Details

Page properties
Content
... ... @@ -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 -)))
1070 +* **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 -)))
1088 +* **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 -)))
1098 +* MM: the ATCOMMAND or AT+DATACUT to be set. Value from 01 ~~ 0F,
1099 +* NN:  0: no CRC; 1: add CRC-16/MODBUS ; 2: set the AT+DATACUT value.
1100 +* LL:  The length of AT+COMMAND or AT+DATACUT command
1101 +* XX XX XX XX: AT+COMMAND or AT+DATACUT command
1102 +* 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 -)))
1117 +* AB aa 01 03 xx xx xx  same as AT+SEARCHaa=1,xx xx xx
1118 +* 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 -)))
1134 +* **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 -)))
1138 +* **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 -)))
1142 +* AT+MBFUN=1 and AT+DATACUT1/AT+DATACUT2 are not configure (0,0,0).
1143 +* 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.
1144 +* 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 -)))
1152 +* **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 -)))
1166 +* **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 -)))
1178 +* **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  
... ... @@ -1304,47 +1304,28 @@
1304 1304  
1305 1305  ==== **Uplink payload mode** ====
1306 1306  
1307 -(((
1308 1308  Define to use one uplink or multiple uplinks for the sampling.
1309 -)))
1310 1310  
1311 -(((
1312 1312  The use of this command please see: [[Compose Uplink payload>>||anchor="H3.3.4Composetheuplinkpayload"]]
1313 -)))
1314 1314  
1315 -* (((
1316 -**AT Command:**
1317 -)))
1197 +* **AT Command:**
1318 1318  
1319 1319  (% class="box infomessage" %)
1320 1320  (((
1321 -(((
1322 1322  **AT+DATAUP=0**
1323 1323  )))
1324 -)))
1325 1325  
1326 1326  (% class="box infomessage" %)
1327 1327  (((
1328 -(((
1329 1329  **AT+DATAUP=1**
1330 1330  )))
1331 -)))
1332 1332  
1333 -(((
1334 -
1335 -)))
1336 1336  
1337 -* (((
1338 -**Downlink Payload:**
1339 -)))
1210 +* **Downlink Payload:**
1340 1340  
1341 -(((
1342 1342  **0xAD 00**  **~-~->** Same as AT+DATAUP=0
1343 -)))
1344 1344  
1345 -(((
1346 1346  **0xAD 01**  **~-~->** Same as AT+DATAUP=1
1347 -)))
1348 1348  
1349 1349  
1350 1350  
... ... @@ -1362,49 +1362,26 @@
1362 1362  
1363 1363  ==== **Clear RS485 Command** ====
1364 1364  
1365 -(((
1366 1366  The AT+COMMANDx and AT+DATACUTx settings are stored in special location, user can use below command to clear them.
1367 -)))
1368 1368  
1369 -(((
1370 -
1371 -)))
1372 1372  
1373 -* (((
1374 -**AT Command:**
1375 -)))
1235 +* **AT Command:**
1376 1376  
1377 1377  (((
1378 1378  (% style="color:#037691" %)**AT+CMDEAR=mm,nn** (%%) mm: start position of erase ,nn: stop position of erase Etc. AT+CMDEAR=1,10 means erase AT+COMMAND1/AT+DATACUT1 to AT+COMMAND10/AT+DATACUT10
1379 1379  )))
1380 1380  
1381 -(((
1382 1382  Example screen shot after clear all RS485 commands. 
1383 -)))
1384 1384  
1385 -(((
1386 -
1387 -)))
1388 1388  
1389 -(((
1390 1390  The uplink screen shot is:
1391 -)))
1392 1392  
1393 -(((
1394 1394  [[image:1654134704555-320.png]]
1395 -)))
1396 1396  
1397 -(((
1398 -
1399 -)))
1400 1400  
1401 -* (((
1402 -**Downlink Payload:**
1403 -)))
1249 +* **Downlink Payload:**
1404 1404  
1405 -(((
1406 1406  **0x09 aa bb** same as AT+CMDEAR=aa,bb
1407 -)))
1408 1408  
1409 1409  
1410 1410  
... ... @@ -1411,77 +1411,44 @@
1411 1411  
1412 1412  ==== **Set Serial Communication Parameters** ====
1413 1413  
1414 -(((
1415 1415  Set the Rs485 serial communication parameters:
1416 -)))
1417 1417  
1418 -* (((
1419 -**AT Command:**
1420 -)))
1260 +* **AT Command:**
1421 1421  
1422 -(((
1423 1423  Set Baud Rate:
1424 -)))
1425 1425  
1426 1426  (% class="box infomessage" %)
1427 1427  (((
1428 -(((
1429 1429  **AT+BAUDR=9600**    ~/~/ Options: (1200,2400,4800,14400,19200,115200)
1430 1430  )))
1431 -)))
1432 1432  
1433 -(((
1434 1434  Set UART Parity
1435 -)))
1436 1436  
1437 1437  (% class="box infomessage" %)
1438 1438  (((
1439 -(((
1440 1440  **AT+PARITY=0**    ~/~/ Option: 0: no parity, 1: odd parity, 2: even parity
1441 1441  )))
1442 -)))
1443 1443  
1444 -(((
1445 1445  Set STOPBIT
1446 -)))
1447 1447  
1448 1448  (% class="box infomessage" %)
1449 1449  (((
1450 -(((
1451 1451  **AT+STOPBIT=0**    ~/~/ Option: 0 for 1bit; 1 for 1.5 bit ; 2 for 2 bits
1452 1452  )))
1453 -)))
1454 1454  
1455 -(((
1456 -
1457 -)))
1458 1458  
1459 -* (((
1460 -**Downlink Payload:**
1461 -)))
1284 +* **Downlink Payload:**
1462 1462  
1463 -(((
1464 1464  **A7 01 aa bb**: Same  AT+BAUDR=hex(aa bb)*100
1465 -)))
1466 1466  
1467 -(((
1468 1468  **Example:**
1469 -)))
1470 1470  
1471 -* (((
1472 -A7 01 00 60   same as AT+BAUDR=9600
1473 -)))
1474 -* (((
1475 -A7 01 04 80  same as AT+BAUDR=115200
1476 -)))
1290 +* A7 01 00 60   same as AT+BAUDR=9600
1291 +* A7 01 04 80  same as AT+BAUDR=115200
1477 1477  
1478 -(((
1479 1479  A7 02 aa: Same as  AT+PARITY=aa  (aa value: 00 , 01 or 02)
1480 -)))
1481 1481  
1482 -(((
1483 1483  A7 03 aa: Same as  AT+STOPBIT=aa  (aa value: 00 , 01 or 02)
1484 -)))
1485 1485  
1486 1486  
1487 1487