/************************************************************************** * * 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) Vinayakam Mani * @date (last) 30-Jul-2024 * * @author (original) Vinayakam Mani * @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 = 1, SW_FAULT_ID_INT_ADC_INVALID_CHANNEL_REQUESTED = 2, SW_FAULT_ID_MODE_INIT_POST_INVALID_POST_STATE = 3, SW_FAULT_ID_OP_MODES_ILLEGAL_MODE_TRANSITION_REQUESTED = 4, SW_FAULT_ID_OP_MODES_INVALID_MODE_STATE = 5, SW_FAULT_ID_OP_MODES_INVALID_MODE_REQUESTED = 6, SW_FAULT_ID_OP_MODES_INVALID_MODE_TO_TRANSITION_TO = 7, SW_FAULT_ID_ALARM_MGMT_INVALID_ALARM_TO_ACTIVATE = 8, SW_FAULT_ID_ALARM_MGMT_INVALID_ALARM_TO_CLEAR = 9, SW_FAULT_ID_COMM_BUFFERS_ADD_TOO_MUCH_DATA = 10, SW_FAULT_ID_COMM_BUFFERS_ADD_INVALID_BUFFER = 11, SW_FAULT_ID_COMM_BUFFERS_GET_INVALID_BUFFER = 12, SW_FAULT_ID_COMM_BUFFERS_PEEK_INVALID_BUFFER = 13, SW_FAULT_ID_COMM_BUFFERS_COUNT_INVALID_BUFFER = 14, SW_FAULT_ID_FPGA_INVALID_STATE = 15, SW_FAULT_ID_ALARM_MGMT_INVALID_ALARM_TO_CLEAR_COND = 16, SW_FAULT_ID_FPGA_WRITE_CMD_TOO_MUCH_DATA = 17, SW_FAULT_ID_FPGA_WRITE_RSP_TOO_MUCH_DATA = 18, SW_FAULT_ID_FPGA_READ_CMD_TOO_MUCH_DATA = 19, SW_FAULT_ID_FPGA_READ_RSP_TOO_MUCH_DATA = 20, SW_FAULT_ID_MSG_QUEUES_ADD_QUEUE_FULL = 21, SW_FAULT_ID_MSG_QUEUES_ADD_INVALID_QUEUE = 22, SW_FAULT_ID_MSG_QUEUES_GET_INVALID_QUEUE = 23, SW_FAULT_ID_MSG_QUEUES_IS_EMPTY_INVALID_QUEUE = 24, SW_FAULT_ID_MSG_QUEUES_IS_FULL_INVALID_QUEUE = 25, SW_FAULT_ID_WATCHDOG_INVALID_SELF_TEST_STATE = 26, SW_FAULT_ID_ALARM_MGMT_INVALID_ALARM_TO_ACTIVATE3 = 27, SW_FAULT_ID_ALARM_MGMT_INVALID_ALARM_TO_CLEAR2 = 28, SW_FAULT_ID_INVALID_ALARM_ID_REFERENCED1 = 29, SW_FAULT_ID_MSG_PENDING_ACK_LIST_FULL = 30, SW_FAULT_ID_VALVES_INVALID_VALVE_STATE_NAME = 31, SW_FAULT_ID_VALVES_INVALID_VALVE_ID = 32, SW_FAULT_ID_CAN_PARITY_ERROR = 33, SW_FAULT_ID_CAN_PASSIVE_WARNING = 34, SW_FAULT_ID_CAN_OFF_ERROR = 35, SW_FAULT_ID_UTIL_TIME_WINDOWED_COUNT_ERROR = 36, SW_FAULT_ID_INVALID_ALARM_ID_REFERENCED2 = 37, SW_FAULT_ID_INVALID_CAN_MESSAGE_BOX = 38, SW_FAULT_ID_SYSTEM_CMMM_CAN_TRANSMIT_REJECTED = 39, SW_FAULT_ID_SYSTEM_COMM_INVALID_FRAME_SIZE = 40, SW_FAULT_ID_UTIL_INVALID_WIN_COUNT = 41, SW_FAULT_ID_UTIL_INVALID_WIN_MAX_COUNT = 42, SW_FAULT_ID_PERSISTENT_ALARM_INVALID_INDEX = 43, SW_FAULT_ID_SEMAPHORE_IN_USE_TIMEOUT = 44, SW_FAULT_ID_SERVICE_MODE_INVALID_EXEC_STATE = 45, SW_FAULT_ID_PERSISTENT_ALARM_INVALID_INDEX1 = 46, SW_FAULT_ID_PERSISTENT_ALARM_INVALID_INDEX2 = 47, SW_FAULT_ID_PERSISTENT_ALARM_INVALID_INDEX3 = 48, SW_FAULT_ID_INVALID_FPGA_SENSOR_GROUP_SELECTED1 = 49, SW_FAULT_ID_INVALID_FPGA_SENSOR_GROUP_SELECTED2 = 50, SW_FAULT_ID_INVALID_FPGA_SENSOR_GROUP_SELECTED3 = 51, SW_FAULT_ID_DRAIN_PUMP_INVALID_RPM_SELECTED = 52, SW_FAULT_ID_ALARM_MGMT_INVALID_ALARM_ID = 53, SW_FAULT_ID_WATCHDOG_INVALID_TASK = 54, SW_FAULT_ID_STANDBY_MODE_INVALID_EXEC_STATE = 55, SW_FAULT_ID_INVALID_INT_ADC_CHANNEL_NUMBER = 56, SW_FAULT_ID_INVALID_RTI_NOTIFICATION = 57, SW_FAULT_ID_ALARM_MGMT_INVALID_ALARM_TO_GET_PROPS = 58, SW_FAULT_ID_SAFETY_SHUTDOWN_INVALID_SELF_TEST_STATE = 59, SW_FAULT_ID_PHANTOM_INTERRUPT = 60, SW_FAULT_ID_ILLEGAL_MEM_ACCESS = 61, SW_FAULT_ID_INVALID_FPGA_SENSOR_GROUP_SELECTED = 62, SW_FAULT_ID_ALARM_MGMT_INVALID_ALARM_TO_GET_RANK = 63, SW_FAULT_ID_INVALID_ALARM_ID_REFERENCED3 = 64, SW_FAULT_ID_CAN_IN_INVALID_BUFFER = 65, SW_FAULT_ID_CAN_OUT_INVALID_BUFFER = 66, SW_FAULT_ID_PRESSURE_INVALID_EXEC_STATE = 67, SW_FAULT_ID_PRESSURE_SENSOR_INVALID_SENSOR1 = 68, SW_FAULT_ID_PRESSURE_SENSOR_INVALID_SENSOR2 = 69, SW_FAULT_ID_PRESSURE_SENSOR_INVALID_SENSOR3 = 70, SW_FAULT_ID_PRESSURE_SENSOR_INVALID_SENSOR4 = 71, SW_FAULT_ID_PRESSURE_SENSOR_INVALID_SENSOR5 = 72, SW_FAULT_ID_PRESSURE_SENSOR_INVALID_SENSOR6 = 73, SW_FAULT_ID_INVALID_CONDUCTIVITY_SENSOR_ID = 74, SW_FAULT_ID_INVALID_CONDUCTIVITY_SENSOR_ID1 = 75, SW_FAULT_ID_INVALID_CONDUCTIVITY_SENSOR_ID2 = 76, SW_FAULT_ID_INVALID_CONDUCTIVITY_SENSOR_ID3 = 77, SW_FAULT_ID_INVALID_CONDUCTIVITY_SENSOR_ID4 = 78, SW_FAULT_ID_INVALID_CONDUCTIVITY_SENSOR_ID5 = 79, SW_FAULT_ID_INVALID_CONDUCTIVITY_SENSOR_ID6 = 80, SW_FAULT_ID_INVALID_CONDUCTIVITY_SENSOR_ID7 = 81, SW_FAULT_ID_CONDUCTIVITY_WR_INVALID_EXEC_STATE = 82, SW_FAULT_ID_CONDUCTIVITY_RD_INVALID_EXEC_STATE = 83, SW_FAULT_ID_INVALID_CONDUCTIVITY_SENSOR_ID8 = 84, SW_FAULT_ID_CONCENTRATE_PUMP_EXEC_INVALID_STATE = 85, SW_FAULT_ID_CONCENTRATE_PUMP_INVALID_PUMP_ID = 86, SW_FAULT_ID_INVALID_TEMPERATURE_SENSOR_SELECTED1 = 87, SW_FAULT_ID_INVALID_TEMPERATURE_SENSOR_SELECTED2 = 88, SW_FAULT_ID_TEMPERATURE_SENSORS_EXEC_INVALID_STATE = 89, SW_FAULT_ID_PI_CTRL_INVALID_CONTROLLER = 90, SW_FAULT_ID_PI_CTRL_INVALID_SIGNAL = 91, SW_FAULT_ID_PI_CTRL_INVALID_STEP_LIMIT = 92, SW_FAULT_ID_DIALYSATE_PUMP_INVALID_RPM_SELECTED = 93, SW_FAULT_ID_DIALYSATE_PUMP_EXEC_INVALID_STATE = 94, SW_FAULT_ID_DIALYSATE_PUMP_INVALID_PUMP_ID = 95, SW_FAULT_ID_HEATERS_INVALID_HEATER_ID_SELECTED = 96, SW_FAULT_ID_HEATERS_INVALID_EXEC_STATE = 97, SW_FAULT_ID_INVALID_LEVEL_SELECTED = 98, SW_FAULT_ID_DD_INVALID_LEVEL_ID = 99, SW_FAULT_ID_BAL_CHAMBER_INVALID_EXEC_STATE = 100, SW_FAULT_ID_INVALID_TD_OPERATING_MODE = 101, SW_FAULT_ID_GEND_MODE_INVALID_EXEC_STATE = 102, SW_FAULT_ID_GEND_MODE_INVALID_EXEC_STATE1 = 103, SW_FAULT_ID_INVALID_FP_OPERATING_MODE = 104, SW_FAULT_ID_PRE_GEND_MODE_INVALID_EXEC_STATE = 105, SW_FAULT_ID_POST_GEND_MODE_INVALID_EXEC_STATE = 106, SW_FAULT_ID_PRE_GEND_WET_SELF_TEST_INVALID_EXEC_STATE = 107, SW_FAULT_ID_PRE_GEND_WET_SELF_TEST_INVALID_EXEC_STATE1 = 108, SW_FAULT_ID_UF_INVALID_EXEC_STATE = 109, SW_FAULT_ID_SPENT_CHAMBER_FILL_INVALID_EXEC_STATE = 110, SW_FAULT_ID_TD_INVALID_BLOOD_LEAK_STATE = 111, SW_FAULT_ID_BLOOD_LEAK_EMBEDDED_MODE_INVALID_STATE = 112, SW_FAULT_ID_BLOOD_LEAK_ENQUEUE_FAILURE = 113, SW_FAULT_ID_BLOOD_LEAK_INVALID_EMB_MODE_CMD_SELECTED = 114, #ifdef __PUMPTEST__ // Assigning high value to separate from actual fault id from test fault ids. SW_FAULT_ID_PISTON_PUMP_EXEC_INVALID_STATE = 9000, SW_FAULT_ID_PISTON_PUMP_INVALID_PUMP_ID = 9001, #endif NUM_OF_SW_FAULT_IDS } SW_FAULT_ID_T; /**@}*/ #endif