error handling
This commit is contained in:
parent
2fc1aafab9
commit
cf695023d7
@ -412,10 +412,8 @@ static void handleRequestEngine(void *handle) {
|
||||
break;
|
||||
|
||||
case MBCS_ERROR:
|
||||
coloredMsg(LOG_RED, true, "mbc hre [%d] state ERROR", localMbusCommHandle->requestId);
|
||||
coloredMsg(LOG_RED, false, "mbc hre [%d] state ERROR", localMbusCommHandle->requestId);
|
||||
show(LED_RED, ON);
|
||||
coloredMsg(LOG_RED, true, "mbc hre [%d] err: already error, read the rest (now: %02x) until timeout",
|
||||
localMbusCommHandle->requestId, localMbusCommHandle->receivedOctet);
|
||||
mbusCommStats.errorCnt += 1;
|
||||
localMbusCommHandle->device->failures += 1;
|
||||
printError(localMbusCommHandle);
|
||||
@ -427,7 +425,7 @@ static void handleRequestEngine(void *handle) {
|
||||
break;
|
||||
|
||||
case MBCS_TIMEOUT:
|
||||
coloredMsg(LOG_RED, true, "mbc hre [%d] state TIMEOUT", localMbusCommHandle->requestId);
|
||||
coloredMsg(LOG_RED, false, "mbc hre [%d] state TIMEOUT", localMbusCommHandle->requestId);
|
||||
localMbusCommHandle->receiving = false;
|
||||
if (localMbusCommHandle->frame.userdata != NULL) {
|
||||
free(localMbusCommHandle->frame.userdata);
|
||||
@ -437,7 +435,7 @@ static void handleRequestEngine(void *handle) {
|
||||
uint8_t kitchenSink[16];
|
||||
memset(kitchenSink, 0, 16);
|
||||
HAL_StatusTypeDef r = HAL_UART_Receive(&mbusUart, kitchenSink, 16, 100);
|
||||
coloredMsg(LOG_RED, true, "mbc hre [%d] abort, last receive result: %02x", localMbusCommHandle->requestId, r);
|
||||
coloredMsg(LOG_RED, false, "mbc hre [%d] abort, last receive result: %02x", localMbusCommHandle->requestId, r);
|
||||
// no break
|
||||
|
||||
case MBCS_DISABLE_FRONTEND:
|
||||
@ -651,7 +649,7 @@ static void mbusCommScheduler(void *handle) {
|
||||
switch (state) {
|
||||
case 0:
|
||||
if (isNetworkAvailable()) {
|
||||
coloredMsg(LOG_GREEN, true, "mbc mcs activate scheduler by network");
|
||||
coloredMsg(LOG_YELLOW, true, "mbc mcs activate scheduler by network");
|
||||
schAdd(triggerMBusRequest, NULL, 0, 100);
|
||||
state = 2;
|
||||
}
|
||||
@ -659,7 +657,7 @@ static void mbusCommScheduler(void *handle) {
|
||||
|
||||
case 1:
|
||||
if (mbusCommEnabled) {
|
||||
coloredMsg(LOG_GREEN, true, "mbc mcs activate scheduler by request");
|
||||
coloredMsg(LOG_YELLOW, true, "mbc mcs activate scheduler by request");
|
||||
schAdd(triggerMBusRequest, NULL, 0, 100);
|
||||
state = 2;
|
||||
}
|
||||
@ -667,13 +665,13 @@ static void mbusCommScheduler(void *handle) {
|
||||
|
||||
case 2:
|
||||
if (! isNetworkAvailable()) {
|
||||
coloredMsg(LOG_GREEN, true, "mbc mcs deactivate scheduler by network");
|
||||
coloredMsg(LOG_YELLOW, true, "mbc mcs deactivate scheduler by network");
|
||||
schDel(triggerMBusRequest, NULL);
|
||||
loopDisable();
|
||||
state = 0;
|
||||
}
|
||||
if (! mbusCommEnabled) {
|
||||
coloredMsg(LOG_GREEN, true, "mbc mcs deactivate scheduler by request");
|
||||
coloredMsg(LOG_YELLOW, true, "mbc mcs deactivate scheduler by request");
|
||||
schDel(triggerMBusRequest, NULL);
|
||||
loopDisable();
|
||||
state = 1;
|
||||
@ -683,7 +681,7 @@ static void mbusCommScheduler(void *handle) {
|
||||
if (devices[i].delay <= 0) {
|
||||
devices[i].delay = devices[i].period;
|
||||
devices[i].waiting = true;
|
||||
coloredMsg(LOG_GREEN, false, "mbc mcs scheduled: %s", devices[i].deviceName);
|
||||
coloredMsg(LOG_YELLOW, false, "mbc mcs scheduled: %s", devices[i].deviceName);
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
Loading…
x
Reference in New Issue
Block a user