/************************************************************************** * * Copyright (c) 2024-2024 Diality Inc. - All Rights Reserved. * * THIS CODE MAY NOT BE COPIED OR REPRODUCED IN ANY FORM, IN PART OR IN * WHOLE, WITHOUT THE EXPLICIT PERMISSION OF THE COPYRIGHT OWNER. * * @file AlarmMgmtSWFaults.h * * @author (last) Sean * @date (last) 30-Jul-2024 * * @author (original) Sean * @date (original) 30-Jul-2024 * ***************************************************************************/ #ifndef __ALARM_MGMT_SW_FAULTS_H__ #define __ALARM_MGMT_SW_FAULTS_H__ /** * @addtogroup AlarmManagement * @{ */ // ********** public definitions ********** /// Listing of specific software faults for logging purposes. typedef enum { SW_FAULT_ID_NONE = 0, SW_FAULT_ID_INT_ADC_DATA_OVERRUN, SW_FAULT_ID_INT_ADC_INVALID_CHANNEL_REQUESTED, SW_FAULT_ID_MODE_INIT_POST_INVALID_POST_STATE, SW_FAULT_ID_OP_MODES_ILLEGAL_MODE_TRANSITION_REQUESTED, SW_FAULT_ID_OP_MODES_INVALID_MODE_STATE, // 5 SW_FAULT_ID_OP_MODES_INVALID_MODE_REQUESTED, SW_FAULT_ID_OP_MODES_INVALID_MODE_TO_TRANSITION_TO, SW_FAULT_ID_ALARM_MGMT_INVALID_ALARM_TO_ACTIVATE, SW_FAULT_ID_ALARM_MGMT_INVALID_ALARM_TO_CLEAR, SW_FAULT_ID_COMM_BUFFERS_ADD_TOO_MUCH_DATA, // 10 SW_FAULT_ID_COMM_BUFFERS_ADD_INVALID_BUFFER, SW_FAULT_ID_COMM_BUFFERS_GET_INVALID_BUFFER, SW_FAULT_ID_COMM_BUFFERS_PEEK_INVALID_BUFFER, SW_FAULT_ID_COMM_BUFFERS_COUNT_INVALID_BUFFER, SW_FAULT_ID_FPGA_INVALID_STATE, // 15 SW_FAULT_ID_ALARM_MGMT_INVALID_ALARM_TO_CLEAR_COND, SW_FAULT_ID_FPGA_WRITE_CMD_TOO_MUCH_DATA, SW_FAULT_ID_FPGA_WRITE_RSP_TOO_MUCH_DATA, SW_FAULT_ID_FPGA_READ_CMD_TOO_MUCH_DATA, SW_FAULT_ID_FPGA_READ_RSP_TOO_MUCH_DATA, // 20 SW_FAULT_ID_MSG_QUEUES_ADD_QUEUE_FULL, SW_FAULT_ID_MSG_QUEUES_ADD_INVALID_QUEUE, SW_FAULT_ID_MSG_QUEUES_GET_INVALID_QUEUE, SW_FAULT_ID_MSG_QUEUES_IS_EMPTY_INVALID_QUEUE, SW_FAULT_ID_MSG_QUEUES_IS_FULL_INVALID_QUEUE, // 25 SW_FAULT_ID_WATCHDOG_INVALID_SELF_TEST_STATE, SW_FAULT_ID_ALARM_MGMT_INVALID_ALARM_TO_ACTIVATE3, // to support common code alarms SW_FAULT_ID_ALARM_MGMT_INVALID_ALARM_TO_CLEAR2, // to support common code alarms SW_FAULT_ID_INVALID_ALARM_ID_REFERENCED1, // to support common code alarms SW_FAULT_ID_MSG_PENDING_ACK_LIST_FULL, // 30 SW_FAULT_ID_PI_CTRL_INVALID_CONTROLLER, SW_FAULT_ID_PI_CTRL_INVALID_SIGNAL, SW_FAULT_ID_NVDATAMGMT_EXEC_INVALID_STATE, SW_FAULT_ID_NVDATAMGMT_INVALID_SELF_TEST_STATE, SW_FAULT_ID_TEMPERATURE_SENSORS_INVALID_SELF_TEST_STATE, // 35 SW_FAULT_ID_TEMPERATURE_SENSORS_EXEC_INVALID_STATE, SW_FAULT_ID_HEATERS_INVALID_HEATER_ID_SELECTED, SW_FAULT_ID_HEATERS_INVALID_EXEC_STATE, SW_FAULT_ID_INVALID_EMSTAT_CONDUCTIVITY_BOARD_SELECTED, SW_FAULT_ID_VALVES_INVALID_VALVE_STATE_NAME, // 40 SW_FAULT_ID_VALVES_INVALID_VALVE_ID, SW_FAULT_ID_CAN_PARITY_ERROR, SW_FAULT_ID_CAN_PASSIVE_WARNING, SW_FAULT_ID_CAN_OFF_ERROR, SW_FAULT_ID_FPGA_UART_FRAME_ERROR, // 45 SW_FAULT_ID_FPGA_UART_OVERRUN_ERROR, SW_FAULT_ID_UTIL_TIME_WINDOWED_COUNT_ERROR, SW_FAULT_ID_INVALID_ALARM_ID_REFERENCED2, SW_FAULT_ID_INVALID_CAN_MESSAGE_BOX, // to support common code alarms SW_FAULT_ID_SYSTEM_CMMM_CAN_TRANSMIT_REJECTED, // 50 SW_FAULT_ID_SYSTEM_COMM_INVALID_FRAME_SIZE, SW_FAULT_ID_UTIL_INVALID_WIN_COUNT, SW_FAULT_ID_UTIL_INVALID_WIN_MAX_COUNT, SW_FAULT_ID_PERSISTENT_ALARM_INVALID_INDEX, SW_FAULT_ID_CONCENTRATE_PUMP_EXEC_INVALID_STATE, // 55 SW_FAULT_ID_CONCENTRATE_PUMP_INVALID_PUMP_ID, SW_FAULT_ID_SEMAPHORE_IN_USE_TIMEOUT, SW_FAULT_ID_SERVICE_MODE_INVALID_EXEC_STATE, SW_FAULT_ID_PERSISTENT_ALARM_INVALID_INDEX1, SW_FAULT_ID_PERSISTENT_ALARM_INVALID_INDEX2, // 60 SW_FAULT_ID_THERMISTORS_INVALID_EXEC_STATE, SW_FAULT_ID_THERMISTORS_INVALID_SELF_TEST_STATE, SW_FAULT_ID_INVALID_THERMISTOR_SELECTED, SW_FAULT_ID_PERSISTENT_ALARM_INVALID_INDEX3, SW_FAULT_ID_INVALID_FPGA_SENSOR_GROUP_SELECTED1, // 65 SW_FAULT_ID_INVALID_FPGA_SENSOR_GROUP_SELECTED2, SW_FAULT_ID_RO_PUMP_INVALID_EXEC_STATE, SW_FAULT_ID_RO_PUMP_INVALID_FLOW_RATE_SET, SW_FAULT_ID_DRAIN_PUMP_INVALID_EXEC_STATE, SW_FAULT_ID_INVALID_FPGA_SENSOR_GROUP_SELECTED3, // 70 SW_FAULT_ID_RO_PUMP_INVALID_PRESSURE_SELECTED, SW_FAULT_ID_DRAIN_PUMP_TARGET_FLOW_LPM_SELECTED, SW_FAULT_ID_INVALID_TEMPERATURE_SENSOR_SELECTED, SW_FAULT_ID_DRAIN_PUMP_INVALID_RPM_SELECTED, SW_FAULT_ID_ALARM_MGMT_INVALID_ALARM_ID, // 75 SW_FAULT_ID_DG_FLUSH_INVALID_EXEC_STATE, SW_FAULT_ID_HEAT_DISINFECT_INVALID_EXEC_STATE, SW_FAULT_ID_WATCHDOG_INVALID_TASK, SW_FAULT_ID_STANDBY_MODE_INVALID_EXEC_STATE, SW_FAULT_ID_GEN_IDLE_MODE_INVALID_EXEC_STATE, // 80 SW_FAULT_ID_DRAIN_MODE_INVALID_EXEC_STATE, SW_FAULT_ID_FILL_MODE_INVALID_EXEC_STATE, SW_FAULT_ID_SOLO_MODE_INVALID_EXEC_STATE, SW_FAULT_ID_PRESSURE_INVALID_EXEC_STATE, SW_FAULT_ID_INVALID_NVDATAMGMT_EXEC_CAL_STATE, // 85 SW_FAULT_ID_INVALID_VALVE_ID, SW_FAULT_ID_INVALID_INT_ADC_CHANNEL_NUMBER, SW_FAULT_ID_INVALID_RTI_NOTIFICATION, SW_FAULT_ID_CAN_TX_FAULT, SW_FAULT_ID_INVALID_CAN_MESSAGE_SIZE, // 90 SW_FAULT_ID_INVALID_CONDUCTIVITY_SENSOR_ID, SW_FAULT_ID_INVALID_PRESSURE_SENSOR_SELECTED, SW_FAULT_ID_INVALID_TASK, SW_FAULT_ID_INVALID_VOLTAGE_MONITOR_STATE, SW_FAULT_ID_INVALID_MONITORED_VOLTAGE_ID, // 95 SW_FAULT_ID_ALARM_MGMT_INVALID_ALARM_TO_GET_PROPS, SW_FAULT_ID_DD_CHEM_DISINFECT_INVALID_EXEC_STATE, SW_FAULT_ID_DD_INVALID_SWITCH_ID, SW_FAULT_ID_DD_PRESSURES_INVALID_SELF_TEST_STATE, SW_FAULT_ID_SAFETY_SHUTDOWN_INVALID_SELF_TEST_STATE, // 100 SW_FAULT_ID_PHANTOM_INTERRUPT, SW_FAULT_ID_ILLEGAL_MEM_ACCESS, SW_FAULT_ID_INVALID_CHEMICAL_BOTTLE_SELECTED, SW_FAULT_ID_INVALID_FPGA_SENSOR_GROUP_SELECTED, SW_FAULT_ID_INVALID_FLOW_SENSOR_SELECTED, // 105 SW_FAULT_ID_INVALID_SERVICE_STATE_SELECTED, SW_FAULT_ID_INVALID_NV_RECORD_SELECTED, SW_FAULT_ID_WRITE_USAGE_INFO_TO_NV_FAILURE, SW_FAULT_ID_INVALID_FPGA_ERROR_GROUP_SELECTED, SW_FAULT_ID_INVALID_LED_COLOR_SELECTED, // 110 SW_FAULT_ID_INVALID_SWITCH_SELECTED, SW_FAULT_ID_INVALID_USAGE_INFO_SELECTED, SW_FAULT_ID_NVDATA_MANAGEMENT_OPS_TIMEOUT, SW_FAULT_ID_NVDATA_RTC_RAM_OPS_FAILURE, SW_FAULT_ID_HEAT_DISINFECT_ACTIVE_COOL_INVALID_EXEC_STATE, // 115 SW_FAULT_ID_DG_CHEM_DISINFECT_FLUSH_INVALID_EXEC_STATE, SW_FAULT_ID_INVALID_PI_PROFILE_SELECTED, SW_FAULT_ID_PI_CTRL_INVALID_STEP_LIMIT, SW_FAULT_ID_ALARM_MGMT_INVALID_ALARM_TO_GET_RANK, SW_FAULT_ID_DD_INVALID_TEST_CONFIG_SELECTED, // 120 SW_FAULT_ID_DD_INVALID_TEST_CONFIG_SELECTED1, SW_FAULT_ID_DD_INVALID_TEST_CONFIG_SELECTED2, SW_FAULT_ID_DD_INVALID_COND_SNSNR_CAL_TABLE_SELECTED, SW_FAULT_ID_INVALID_ALARM_ID_REFERENCED3, NUM_OF_SW_FAULT_IDS } SW_FAULT_ID_T; /**@}*/ #endif