diff --git a/Core/Src/charger_gbt.c b/Core/Src/charger_gbt.c index 264ba29..e0757e5 100755 --- a/Core/Src/charger_gbt.c +++ b/Core/Src/charger_gbt.c @@ -61,7 +61,7 @@ GBT_StopSource_t GBT_StopSource; static uint32_t GBT_EVSE_last_rx_tick; -#define GBT_EV_HANDSHAKE_TIMEOUT_MS 10000U +#define GBT_EV_LINK_LOSS_TIMEOUT_MS 5000U #define GBT_EV_WAIT_READY_TIMEOUT_MS 10000U #define GBT_EV_CHARGING_RX_TIMEOUT_MS 3000U #define GBT_EV_ENABLE_LOAD_DELAY_MS 10000U @@ -194,6 +194,7 @@ void GBT_ChargerTask(){ if (GBT_CHM_recv) { log_printf(LOG_INFO, "CHM received, starting EV handshake\n"); + GBT_EVSE_last_rx_tick = HAL_GetTick(); GBT_SwitchState(GBT_EV_HANDSHAKE); break; } @@ -214,9 +215,10 @@ void GBT_ChargerTask(){ GBT_SwitchState(GBT_EV_RECOGNITION); break; } - if (GBT_StateTick() > GBT_EV_HANDSHAKE_TIMEOUT_MS) { + if ((HAL_GetTick() - GBT_EVSE_last_rx_tick) > GBT_EV_LINK_LOSS_TIMEOUT_MS) { GBT_Error(0xFCF0C0FD); - log_printf(LOG_WARN, "CRM timeout in EV_HANDSHAKE\n"); + log_printf(LOG_WARN, "EVSE link loss in EV_HANDSHAKE (no RX for %u ms)\n", + (unsigned)GBT_EV_LINK_LOSS_TIMEOUT_MS); } break; diff --git a/Debug/Core/Src/charger_gbt.cyclo b/Debug/Core/Src/charger_gbt.cyclo index 3ec6fad..1ce8517 100644 --- a/Debug/Core/Src/charger_gbt.cyclo +++ b/Debug/Core/Src/charger_gbt.cyclo @@ -2,12 +2,12 @@ ../Core/Src/charger_gbt.c:118:6:GBT_ApplyShortPacket 2 ../Core/Src/charger_gbt.c:130:6:GBT_Init 1 ../Core/Src/charger_gbt.c:162:6:GBT_ChargerTask 46 -../Core/Src/charger_gbt.c:389:6:GBT_SwitchState 13 -../Core/Src/charger_gbt.c:409:10:GBT_StateTick 1 -../Core/Src/charger_gbt.c:413:6:GBT_Delay 1 -../Core/Src/charger_gbt.c:418:6:GBT_StopEV 3 -../Core/Src/charger_gbt.c:428:6:GBT_StopEVSE 2 -../Core/Src/charger_gbt.c:434:6:GBT_StopOCPP 2 -../Core/Src/charger_gbt.c:440:6:GBT_ForceStop 1 -../Core/Src/charger_gbt.c:447:6:GBT_Error 1 -../Core/Src/charger_gbt.c:455:6:GBT_Reset 1 +../Core/Src/charger_gbt.c:391:6:GBT_SwitchState 13 +../Core/Src/charger_gbt.c:411:10:GBT_StateTick 1 +../Core/Src/charger_gbt.c:415:6:GBT_Delay 1 +../Core/Src/charger_gbt.c:420:6:GBT_StopEV 3 +../Core/Src/charger_gbt.c:430:6:GBT_StopEVSE 2 +../Core/Src/charger_gbt.c:436:6:GBT_StopOCPP 2 +../Core/Src/charger_gbt.c:442:6:GBT_ForceStop 1 +../Core/Src/charger_gbt.c:449:6:GBT_Error 1 +../Core/Src/charger_gbt.c:457:6:GBT_Reset 1 diff --git a/Debug/Core/Src/main.cyclo b/Debug/Core/Src/main.cyclo index ba13d4e..b6ea53d 100644 --- a/Debug/Core/Src/main.cyclo +++ b/Debug/Core/Src/main.cyclo @@ -1,5 +1,5 @@ ../Drivers/CMSIS/Include/core_cm3.h:1762:34:__NVIC_SystemReset 1 -/Users/colorbass/STM32CubeIDE/workspace_1.12.0/lib_EDCAN/edcan.c:32:13:EDCAN_SelectInfoBlockAddress 2 +/Users/colorbass/STM32CubeIDE/workspace_1.12.0/lib_EDCAN/edcan.c:32:6:EDCAN_SelectInfoBlockAddress 2 /Users/colorbass/STM32CubeIDE/workspace_1.12.0/lib_EDCAN/edcan.c:54:16:EDCAN_VectorTableIsPlausible 3 /Users/colorbass/STM32CubeIDE/workspace_1.12.0/lib_EDCAN/edcan.c:62:6:EDCAN_VectorBaseConfigF0 1 /Users/colorbass/STM32CubeIDE/workspace_1.12.0/lib_EDCAN/edcan.c:97:6:EDCAN_VectorBaseConfigF1 1