forked from gatsby/df_datalink
fix: 修改数据接收上传逻辑, comtool增加数据发送测试
This commit is contained in:
@@ -38,11 +38,19 @@ class Plugin(Plugin_Base):
|
||||
"icon": "fa5.question-circle",
|
||||
"data": "5A 54 E1 EE 00 CF 02 5A FE"
|
||||
},
|
||||
# {
|
||||
# "caption": "数据发送测试 - 1",
|
||||
# "icon": "fa5.play-circle",
|
||||
# "data": ""
|
||||
# },
|
||||
{
|
||||
"caption": "数据发送测试 - 40 Byte",
|
||||
"icon": "fa5.play-circle",
|
||||
"data": (
|
||||
"5A 54 E4 EE 00 00 00 00 02 00 28 "
|
||||
"00 01 02 03 04 05 06 07 "
|
||||
"08 09 0A 0B 0C 0D 0E 0F "
|
||||
"10 11 12 13 14 15 16 17 "
|
||||
"18 19 1A 1B 1C 1D 1E 1F "
|
||||
"20 21 22 23 24 25 26 27 "
|
||||
"00 08 31 5A FE"
|
||||
)
|
||||
},
|
||||
# {
|
||||
# "caption": "数据发送测试 - 2",
|
||||
# "icon": "fa5.play-circle",
|
||||
@@ -198,8 +206,7 @@ class Plugin(Plugin_Base):
|
||||
# frame struct
|
||||
self.structSelfTestRsp = Struct("<BB B BBBbbb HHHBBbB B 3s")
|
||||
self.structStatusCheckRsp = Struct("<BB Q IIII IBBBBIB III III III III III III i II 3s IIII d Q dBB dB H B 2s BBBbbb HHHBBbB B 3s")
|
||||
self.structFljData = Struct("<dddd IHI fff fff")
|
||||
self.structLjData = Struct("<IHI ffff IHI fff fff fff IHI fff fff fff IHI fff fff fff I")
|
||||
self.structData = Struct("<BB IBH 40s")
|
||||
self.structSysInfo = Struct("<IHI H B I B fff fff fff")
|
||||
|
||||
def insertSendItem(self, item = None, load = False):
|
||||
@@ -260,9 +267,9 @@ class Plugin(Plugin_Base):
|
||||
if data[0] == 0xE1:
|
||||
# eval self test
|
||||
self.showReceiveDataSignal.emit(self.evalSelfTestRsp(data) + "\n")
|
||||
elif data[0] == 0xE6 or data[0] == 0xF6:
|
||||
elif data[0] == 0xE6:
|
||||
self.showReceiveDataSignal.emit(self.evalStatusCheckRsp(data) + "\n")
|
||||
elif data[0] == 0xE5 or data[0] == 0xF5:
|
||||
elif data[0] == 0xE5:
|
||||
self.showReceiveDataSignal.emit('Retrieved Data Frame:\n' + self.printFrame(data) + "\n")
|
||||
else:
|
||||
self.showReceiveDataSignal.emit(f"\n### Unexpected response code 0x{data[0]:02x}.\n")
|
||||
|
||||
@@ -243,12 +243,20 @@ int32_t L2_Scan_PktHandler(L2_INST *instPtr, uint8_t *msg)
|
||||
L2_TimeAdjust(instPtr, &(instPtr->log.timeDev));
|
||||
|
||||
// Get data payload & upload
|
||||
SYSMON_SVC_PAYLOAD recvPayload;
|
||||
recvPayload.dataId = message->dataId;
|
||||
recvPayload.nodeId = message->common.src;
|
||||
recvPayload.dataLen = message->dataLen;
|
||||
memcpy(recvPayload.data, message->data, maxDataLen);
|
||||
SysMonitor_GenRecvRsp(&recvPayload);
|
||||
if (message->dataId != DATA_ID_NONE)
|
||||
{
|
||||
if (message->dataLen > maxDataLen)
|
||||
{
|
||||
DBG_ERROR("Payload length" PRIu16 " out of range.\n", message->dataLen);
|
||||
return EIGNORE;
|
||||
}
|
||||
SYSMON_SVC_PAYLOAD *recvPayload = calloc(1, NORMALIZE_SIZE(sizeof(SYSMON_SVC_PAYLOAD)));
|
||||
recvPayload->dataId = message->dataId;
|
||||
recvPayload->nodeId = message->common.src;
|
||||
recvPayload->dataLen = message->dataLen;
|
||||
memcpy(recvPayload->data, message->data, message->dataLen);
|
||||
SysMonitor_GenRecvRsp(recvPayload);
|
||||
}
|
||||
|
||||
// Logging...
|
||||
instPtr->log.rxLog.dataId = message->dataId;
|
||||
|
||||
@@ -528,12 +528,20 @@ static int32_t Service_PktHandler128K(L2_INST *instPtr, uint8_t *msg)
|
||||
}
|
||||
|
||||
// Get data payload
|
||||
SYSMON_SVC_PAYLOAD recvPayload;
|
||||
recvPayload.dataId = message->dataId;
|
||||
recvPayload.nodeId = message->common.src;
|
||||
recvPayload.dataLen = message->dataLen;
|
||||
memcpy(recvPayload.data, message->data, maxDataLen);
|
||||
SysMonitor_GenRecvRsp(&recvPayload);
|
||||
if (message->dataId != DATA_ID_NONE)
|
||||
{
|
||||
if (message->dataLen > maxDataLen)
|
||||
{
|
||||
DBG_ERROR("Payload length" PRIu16 " out of range.\n", message->dataLen);
|
||||
return EIGNORE;
|
||||
}
|
||||
SYSMON_SVC_PAYLOAD *recvPayload = calloc(1, NORMALIZE_SIZE(sizeof(SYSMON_SVC_PAYLOAD)));
|
||||
recvPayload->dataId = message->dataId;
|
||||
recvPayload->nodeId = message->common.src;
|
||||
recvPayload->dataLen = message->dataLen;
|
||||
memcpy(recvPayload->data, message->data, message->dataLen);
|
||||
SysMonitor_GenRecvRsp(recvPayload);
|
||||
}
|
||||
|
||||
// Logging...
|
||||
instPtr->log.rxLog.dataId = message->dataId;
|
||||
@@ -608,12 +616,20 @@ static int32_t Service_PktHandler512K(L2_INST *instPtr, uint8_t *msg)
|
||||
}
|
||||
|
||||
// Get data payload
|
||||
SYSMON_SVC_PAYLOAD recvPayload;
|
||||
recvPayload.dataId = message->dataId;
|
||||
recvPayload.nodeId = message->common.src;
|
||||
recvPayload.dataLen = message->dataLen;
|
||||
memcpy(recvPayload.data, message->data, maxDataLen);
|
||||
SysMonitor_GenRecvRsp(&recvPayload);
|
||||
if (message->dataId != DATA_ID_NONE)
|
||||
{
|
||||
if (message->dataLen > maxDataLen)
|
||||
{
|
||||
DBG_ERROR("Payload length" PRIu16 " out of range.\n", message->dataLen);
|
||||
return EIGNORE;
|
||||
}
|
||||
SYSMON_SVC_PAYLOAD *recvPayload = calloc(1, NORMALIZE_SIZE(sizeof(SYSMON_SVC_PAYLOAD)));
|
||||
recvPayload->dataId = message->dataId;
|
||||
recvPayload->nodeId = message->common.src;
|
||||
recvPayload->dataLen = message->dataLen;
|
||||
memcpy(recvPayload->data, message->data, message->dataLen);
|
||||
SysMonitor_GenRecvRsp(recvPayload);
|
||||
}
|
||||
|
||||
// Logging...
|
||||
instPtr->log.rxLog.dataId = message->dataId;
|
||||
@@ -688,12 +704,20 @@ static int32_t Service_PktHandler2M(L2_INST *instPtr, uint8_t *msg)
|
||||
}
|
||||
|
||||
// Get data payload
|
||||
SYSMON_SVC_PAYLOAD recvPayload;
|
||||
recvPayload.dataId = message->dataId;
|
||||
recvPayload.nodeId = message->common.src;
|
||||
recvPayload.dataLen = message->dataLen;
|
||||
memcpy(recvPayload.data, message->data, maxDataLen);
|
||||
SysMonitor_GenRecvRsp(&recvPayload);
|
||||
if (message->dataId != DATA_ID_NONE)
|
||||
{
|
||||
if (message->dataLen > maxDataLen)
|
||||
{
|
||||
DBG_ERROR("Payload length" PRIu16 " out of range.\n", message->dataLen);
|
||||
return EIGNORE;
|
||||
}
|
||||
SYSMON_SVC_PAYLOAD *recvPayload = calloc(1, NORMALIZE_SIZE(sizeof(SYSMON_SVC_PAYLOAD)));
|
||||
recvPayload->dataId = message->dataId;
|
||||
recvPayload->nodeId = message->common.src;
|
||||
recvPayload->dataLen = message->dataLen;
|
||||
memcpy(recvPayload->data, message->data, message->dataLen);
|
||||
SysMonitor_GenRecvRsp(recvPayload);
|
||||
}
|
||||
|
||||
// Logging...
|
||||
instPtr->log.rxLog.dataId = message->dataId;
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
* @name SystemMonitor_Constants
|
||||
* @{
|
||||
*/
|
||||
#define PAYLOAD_LEN_MAX 1000
|
||||
#define PAYLOAD_LEN_MAX 2048
|
||||
|
||||
#define DATA_ID_NONE UINT32_MAX
|
||||
#define DATA_ID_TEST 0x02030203
|
||||
|
||||
Reference in New Issue
Block a user