mirror of
https://github.com/dalathegreat/Battery-Emulator.git
synced 2025-10-04 10:19:29 +02:00
add PERIODIC BMS RESET Events
This commit is contained in:
parent
c4eae97cda
commit
b75d5fb20f
4 changed files with 106 additions and 106 deletions
|
@ -130,9 +130,9 @@ void setup() {
|
|||
#ifdef PERIODIC_BMS_RESET_AT
|
||||
bmsResetTimeOffset = getTimeOffsetfromNowUntil(PERIODIC_BMS_RESET_AT);
|
||||
if (bmsResetTimeOffset == 0) {
|
||||
set_event(EVENT_BMS_RESET_AT_INIT_FAILED, 0);
|
||||
set_event(EVENT_PERIODIC_BMS_RESET_AT_INIT_FAILED, 0);
|
||||
} else {
|
||||
set_event(EVENT_BMS_RESET_AT_INIT_SUCCESS, 0);
|
||||
set_event(EVENT_PERIODIC_BMS_RESET_AT_INIT_SUCCESS, 0);
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
|
|
@ -266,7 +266,7 @@ void handle_BMSpower() {
|
|||
setBatteryPause(false, false, false, false);
|
||||
|
||||
datalayer.system.status.BMS_reset_in_progress = false; // Reset the power removal flag
|
||||
set_event(EVENT_BMS_RESET, 0);
|
||||
set_event(EVENT_PERIODIC_BMS_RESET, 0);
|
||||
}
|
||||
#endif //defined(PERIODIC_BMS_RESET) || defined(REMOTE_BMS_RESET)
|
||||
}
|
||||
|
|
|
@ -218,9 +218,9 @@ void init_events(void) {
|
|||
events.entries[EVENT_MQTT_DISCONNECT].level = EVENT_LEVEL_INFO;
|
||||
events.entries[EVENT_EQUIPMENT_STOP].level = EVENT_LEVEL_ERROR;
|
||||
events.entries[EVENT_SD_INIT_FAILED].level = EVENT_LEVEL_WARNING;
|
||||
events.entries[EVENT_BMS_RESET].level = EVENT_LEVEL_INFO;
|
||||
events.entries[EVENT_BMS_RESET_AT_INIT_SUCCESS].level = EVENT_LEVEL_WARNING;
|
||||
events.entries[EVENT_BMS_RESET_AT_INIT_FAILED].level = EVENT_LEVEL_WARNING;
|
||||
events.entries[EVENT_PERIODIC_BMS_RESET].level = EVENT_LEVEL_INFO;
|
||||
events.entries[EVENT_PERIODIC_BMS_RESET_AT_INIT_SUCCESS].level = EVENT_LEVEL_INFO;
|
||||
events.entries[EVENT_PERIODIC_BMS_RESET_AT_INIT_FAILED].level = EVENT_LEVEL_WARNING;
|
||||
|
||||
events.entries[EVENT_EEPROM_WRITE].log = false; // Don't log the logger...
|
||||
|
||||
|
@ -449,12 +449,12 @@ const char* get_event_message_string(EVENTS_ENUM_TYPE event) {
|
|||
return "EQUIPMENT STOP ACTIVATED!!!";
|
||||
case EVENT_SD_INIT_FAILED:
|
||||
return "SD card initialization failed, check hardware. Power must be removed to reset the SD card.";
|
||||
case EVENT_BMS_RESET:
|
||||
case EVENT_PERIODIC_BMS_RESET:
|
||||
return "BMS Reset Event Completed.";
|
||||
case EVENT_BMS_RESET_AT_INIT_SUCCESS:
|
||||
return "Successfully Syncronised with the NTP Server BMS will reset every 24 hours at defined time";
|
||||
case EVENT_BMS_RESET_AT_INIT_FAILED:
|
||||
return "Failed to syncronise with the NTP Server BMS will reset every 24 hours from when the emulator was "
|
||||
case EVENT_PERIODIC_BMS_RESET_AT_INIT_SUCCESS:
|
||||
return "Successfully syncronised with the NTP Server. BMS will reset every 24 hours at defined time";
|
||||
case EVENT_PERIODIC_BMS_RESET_AT_INIT_FAILED:
|
||||
return "Failed to syncronise with the NTP Server. BMS will reset every 24 hours from when the emulator was "
|
||||
"powered on";
|
||||
default:
|
||||
return "";
|
||||
|
|
|
@ -25,101 +25,101 @@
|
|||
* - Increment EE_MAGIC_HEADER_VALUE in case you've changed the order
|
||||
*/
|
||||
|
||||
#define EVENTS_ENUM_TYPE(XX) \
|
||||
XX(EVENT_CANMCP2517FD_INIT_FAILURE) \
|
||||
XX(EVENT_CANMCP2515_INIT_FAILURE) \
|
||||
XX(EVENT_CANFD_BUFFER_FULL) \
|
||||
XX(EVENT_CAN_BUFFER_FULL) \
|
||||
XX(EVENT_CAN_OVERRUN) \
|
||||
XX(EVENT_CAN_CORRUPTED_WARNING) \
|
||||
XX(EVENT_CAN_BATTERY_MISSING) \
|
||||
XX(EVENT_CAN_BATTERY2_MISSING) \
|
||||
XX(EVENT_CAN_CHARGER_MISSING) \
|
||||
XX(EVENT_CAN_INVERTER_MISSING) \
|
||||
XX(EVENT_CAN_NATIVE_TX_FAILURE) \
|
||||
XX(EVENT_CHARGE_LIMIT_EXCEEDED) \
|
||||
XX(EVENT_CONTACTOR_WELDED) \
|
||||
XX(EVENT_DISCHARGE_LIMIT_EXCEEDED) \
|
||||
XX(EVENT_WATER_INGRESS) \
|
||||
XX(EVENT_12V_LOW) \
|
||||
XX(EVENT_SOC_PLAUSIBILITY_ERROR) \
|
||||
XX(EVENT_SOC_UNAVAILABLE) \
|
||||
XX(EVENT_STALE_VALUE) \
|
||||
XX(EVENT_KWH_PLAUSIBILITY_ERROR) \
|
||||
XX(EVENT_BALANCING_START) \
|
||||
XX(EVENT_BALANCING_END) \
|
||||
XX(EVENT_BATTERY_EMPTY) \
|
||||
XX(EVENT_BATTERY_FULL) \
|
||||
XX(EVENT_BATTERY_FUSE) \
|
||||
XX(EVENT_BATTERY_FROZEN) \
|
||||
XX(EVENT_BATTERY_CAUTION) \
|
||||
XX(EVENT_BATTERY_CHG_STOP_REQ) \
|
||||
XX(EVENT_BATTERY_DISCHG_STOP_REQ) \
|
||||
XX(EVENT_BATTERY_CHG_DISCHG_STOP_REQ) \
|
||||
XX(EVENT_BATTERY_OVERHEAT) \
|
||||
XX(EVENT_BATTERY_OVERVOLTAGE) \
|
||||
XX(EVENT_BATTERY_UNDERVOLTAGE) \
|
||||
XX(EVENT_BATTERY_VALUE_UNAVAILABLE) \
|
||||
XX(EVENT_BATTERY_ISOLATION) \
|
||||
XX(EVENT_BATTERY_REQUESTS_HEAT) \
|
||||
XX(EVENT_BATTERY_WARMED_UP) \
|
||||
XX(EVENT_VOLTAGE_DIFFERENCE) \
|
||||
XX(EVENT_SOH_DIFFERENCE) \
|
||||
XX(EVENT_SOH_LOW) \
|
||||
XX(EVENT_HVIL_FAILURE) \
|
||||
XX(EVENT_PRECHARGE_FAILURE) \
|
||||
XX(EVENT_INTERNAL_OPEN_FAULT) \
|
||||
XX(EVENT_INVERTER_OPEN_CONTACTOR) \
|
||||
XX(EVENT_INTERFACE_MISSING) \
|
||||
XX(EVENT_MODBUS_INVERTER_MISSING) \
|
||||
XX(EVENT_ERROR_OPEN_CONTACTOR) \
|
||||
XX(EVENT_CELL_CRITICAL_UNDER_VOLTAGE) \
|
||||
XX(EVENT_CELL_CRITICAL_OVER_VOLTAGE) \
|
||||
XX(EVENT_CELL_UNDER_VOLTAGE) \
|
||||
XX(EVENT_CELL_OVER_VOLTAGE) \
|
||||
XX(EVENT_CELL_DEVIATION_HIGH) \
|
||||
XX(EVENT_UNKNOWN_EVENT_SET) \
|
||||
XX(EVENT_OTA_UPDATE) \
|
||||
XX(EVENT_OTA_UPDATE_TIMEOUT) \
|
||||
XX(EVENT_DUMMY_INFO) \
|
||||
XX(EVENT_DUMMY_DEBUG) \
|
||||
XX(EVENT_DUMMY_WARNING) \
|
||||
XX(EVENT_DUMMY_ERROR) \
|
||||
XX(EVENT_PERSISTENT_SAVE_INFO) \
|
||||
XX(EVENT_SERIAL_RX_WARNING) \
|
||||
XX(EVENT_SERIAL_RX_FAILURE) \
|
||||
XX(EVENT_SERIAL_TX_FAILURE) \
|
||||
XX(EVENT_SERIAL_TRANSMITTER_FAILURE) \
|
||||
XX(EVENT_EEPROM_WRITE) \
|
||||
XX(EVENT_RESET_UNKNOWN) \
|
||||
XX(EVENT_RESET_POWERON) \
|
||||
XX(EVENT_RESET_EXT) \
|
||||
XX(EVENT_RESET_SW) \
|
||||
XX(EVENT_RESET_PANIC) \
|
||||
XX(EVENT_RESET_INT_WDT) \
|
||||
XX(EVENT_RESET_TASK_WDT) \
|
||||
XX(EVENT_RESET_WDT) \
|
||||
XX(EVENT_RESET_DEEPSLEEP) \
|
||||
XX(EVENT_RESET_BROWNOUT) \
|
||||
XX(EVENT_RESET_SDIO) \
|
||||
XX(EVENT_RESET_USB) \
|
||||
XX(EVENT_RESET_JTAG) \
|
||||
XX(EVENT_RESET_EFUSE) \
|
||||
XX(EVENT_RESET_PWR_GLITCH) \
|
||||
XX(EVENT_RESET_CPU_LOCKUP) \
|
||||
XX(EVENT_PAUSE_BEGIN) \
|
||||
XX(EVENT_PAUSE_END) \
|
||||
XX(EVENT_WIFI_CONNECT) \
|
||||
XX(EVENT_WIFI_DISCONNECT) \
|
||||
XX(EVENT_MQTT_CONNECT) \
|
||||
XX(EVENT_MQTT_DISCONNECT) \
|
||||
XX(EVENT_EQUIPMENT_STOP) \
|
||||
XX(EVENT_AUTOMATIC_PRECHARGE_FAILURE) \
|
||||
XX(EVENT_SD_INIT_FAILED) \
|
||||
XX(EVENT_NOF_EVENTS) \
|
||||
XX(EVENT_BMS_RESET) \
|
||||
XX(EVENT_BMS_RESET_AT_INIT_SUCCESS) \
|
||||
XX(EVENT_BMS_RESET_AT_INIT_FAILED)
|
||||
#define EVENTS_ENUM_TYPE(XX) \
|
||||
XX(EVENT_CANMCP2517FD_INIT_FAILURE) \
|
||||
XX(EVENT_CANMCP2515_INIT_FAILURE) \
|
||||
XX(EVENT_CANFD_BUFFER_FULL) \
|
||||
XX(EVENT_CAN_BUFFER_FULL) \
|
||||
XX(EVENT_CAN_OVERRUN) \
|
||||
XX(EVENT_CAN_CORRUPTED_WARNING) \
|
||||
XX(EVENT_CAN_BATTERY_MISSING) \
|
||||
XX(EVENT_CAN_BATTERY2_MISSING) \
|
||||
XX(EVENT_CAN_CHARGER_MISSING) \
|
||||
XX(EVENT_CAN_INVERTER_MISSING) \
|
||||
XX(EVENT_CAN_NATIVE_TX_FAILURE) \
|
||||
XX(EVENT_CHARGE_LIMIT_EXCEEDED) \
|
||||
XX(EVENT_CONTACTOR_WELDED) \
|
||||
XX(EVENT_DISCHARGE_LIMIT_EXCEEDED) \
|
||||
XX(EVENT_WATER_INGRESS) \
|
||||
XX(EVENT_12V_LOW) \
|
||||
XX(EVENT_SOC_PLAUSIBILITY_ERROR) \
|
||||
XX(EVENT_SOC_UNAVAILABLE) \
|
||||
XX(EVENT_STALE_VALUE) \
|
||||
XX(EVENT_KWH_PLAUSIBILITY_ERROR) \
|
||||
XX(EVENT_BALANCING_START) \
|
||||
XX(EVENT_BALANCING_END) \
|
||||
XX(EVENT_BATTERY_EMPTY) \
|
||||
XX(EVENT_BATTERY_FULL) \
|
||||
XX(EVENT_BATTERY_FUSE) \
|
||||
XX(EVENT_BATTERY_FROZEN) \
|
||||
XX(EVENT_BATTERY_CAUTION) \
|
||||
XX(EVENT_BATTERY_CHG_STOP_REQ) \
|
||||
XX(EVENT_BATTERY_DISCHG_STOP_REQ) \
|
||||
XX(EVENT_BATTERY_CHG_DISCHG_STOP_REQ) \
|
||||
XX(EVENT_BATTERY_OVERHEAT) \
|
||||
XX(EVENT_BATTERY_OVERVOLTAGE) \
|
||||
XX(EVENT_BATTERY_UNDERVOLTAGE) \
|
||||
XX(EVENT_BATTERY_VALUE_UNAVAILABLE) \
|
||||
XX(EVENT_BATTERY_ISOLATION) \
|
||||
XX(EVENT_BATTERY_REQUESTS_HEAT) \
|
||||
XX(EVENT_BATTERY_WARMED_UP) \
|
||||
XX(EVENT_VOLTAGE_DIFFERENCE) \
|
||||
XX(EVENT_SOH_DIFFERENCE) \
|
||||
XX(EVENT_SOH_LOW) \
|
||||
XX(EVENT_HVIL_FAILURE) \
|
||||
XX(EVENT_PRECHARGE_FAILURE) \
|
||||
XX(EVENT_INTERNAL_OPEN_FAULT) \
|
||||
XX(EVENT_INVERTER_OPEN_CONTACTOR) \
|
||||
XX(EVENT_INTERFACE_MISSING) \
|
||||
XX(EVENT_MODBUS_INVERTER_MISSING) \
|
||||
XX(EVENT_ERROR_OPEN_CONTACTOR) \
|
||||
XX(EVENT_CELL_CRITICAL_UNDER_VOLTAGE) \
|
||||
XX(EVENT_CELL_CRITICAL_OVER_VOLTAGE) \
|
||||
XX(EVENT_CELL_UNDER_VOLTAGE) \
|
||||
XX(EVENT_CELL_OVER_VOLTAGE) \
|
||||
XX(EVENT_CELL_DEVIATION_HIGH) \
|
||||
XX(EVENT_UNKNOWN_EVENT_SET) \
|
||||
XX(EVENT_OTA_UPDATE) \
|
||||
XX(EVENT_OTA_UPDATE_TIMEOUT) \
|
||||
XX(EVENT_DUMMY_INFO) \
|
||||
XX(EVENT_DUMMY_DEBUG) \
|
||||
XX(EVENT_DUMMY_WARNING) \
|
||||
XX(EVENT_DUMMY_ERROR) \
|
||||
XX(EVENT_PERSISTENT_SAVE_INFO) \
|
||||
XX(EVENT_SERIAL_RX_WARNING) \
|
||||
XX(EVENT_SERIAL_RX_FAILURE) \
|
||||
XX(EVENT_SERIAL_TX_FAILURE) \
|
||||
XX(EVENT_SERIAL_TRANSMITTER_FAILURE) \
|
||||
XX(EVENT_EEPROM_WRITE) \
|
||||
XX(EVENT_RESET_UNKNOWN) \
|
||||
XX(EVENT_RESET_POWERON) \
|
||||
XX(EVENT_RESET_EXT) \
|
||||
XX(EVENT_RESET_SW) \
|
||||
XX(EVENT_RESET_PANIC) \
|
||||
XX(EVENT_RESET_INT_WDT) \
|
||||
XX(EVENT_RESET_TASK_WDT) \
|
||||
XX(EVENT_RESET_WDT) \
|
||||
XX(EVENT_RESET_DEEPSLEEP) \
|
||||
XX(EVENT_RESET_BROWNOUT) \
|
||||
XX(EVENT_RESET_SDIO) \
|
||||
XX(EVENT_RESET_USB) \
|
||||
XX(EVENT_RESET_JTAG) \
|
||||
XX(EVENT_RESET_EFUSE) \
|
||||
XX(EVENT_RESET_PWR_GLITCH) \
|
||||
XX(EVENT_RESET_CPU_LOCKUP) \
|
||||
XX(EVENT_PAUSE_BEGIN) \
|
||||
XX(EVENT_PAUSE_END) \
|
||||
XX(EVENT_WIFI_CONNECT) \
|
||||
XX(EVENT_WIFI_DISCONNECT) \
|
||||
XX(EVENT_MQTT_CONNECT) \
|
||||
XX(EVENT_MQTT_DISCONNECT) \
|
||||
XX(EVENT_EQUIPMENT_STOP) \
|
||||
XX(EVENT_AUTOMATIC_PRECHARGE_FAILURE) \
|
||||
XX(EVENT_SD_INIT_FAILED) \
|
||||
XX(EVENT_PERIODIC_BMS_RESET) \
|
||||
XX(EVENT_PERIODIC_BMS_RESET_AT_INIT_SUCCESS) \
|
||||
XX(EVENT_PERIODIC_BMS_RESET_AT_INIT_FAILED) \
|
||||
XX(EVENT_NOF_EVENTS)
|
||||
|
||||
typedef enum { EVENTS_ENUM_TYPE(GENERATE_ENUM) } EVENTS_ENUM_TYPE;
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue