/************************************************************************** * * Copyright (c) 2019-2022 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 Nash * @date (last) 19-Aug-2021 * * @author (original) Quang Nguyen * @date (original) 20-May-2021 * ***************************************************************************/ #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_ALARM_LAMP_INVALID_PATTERN_REQUESTED, SW_FAULT_ID_ALARM_LAMP_INVALID_SELF_TEST_STATE, SW_FAULT_ID_BLOOD_FLOW_SET_TOO_HIGH, SW_FAULT_ID_BLOOD_FLOW_INVALID_BLOOD_PUMP_STATE, SW_FAULT_ID_BLOOD_FLOW_INVALID_BLOOD_PUMP_DIRECTION, // 5 SW_FAULT_ID_BUTTONS_INVALID_SELF_TEST_STATE, SW_FAULT_ID_BUTTONS_STOP_BUTTON_NOT_CONSUMED, SW_FAULT_ID_INT_ADC_DATA_OVERRUN, SW_FAULT_ID_INT_ADC_INVALID_CHANNEL_REQUESTED, SW_FAULT_ID_MODE_INIT_POST_INVALID_POST_STATE, // 10 SW_FAULT_ID_OP_MODES_ILLEGAL_MODE_TRANSITION_REQUESTED, SW_FAULT_ID_OP_MODES_INVALID_MODE_STATE, 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, // 15 SW_FAULT_ID_ALARM_MGMT_INVALID_ALARM_TO_CLEAR, SW_FAULT_ID_ALARM_MGMT_LAMP_INVALID_ALARM_STATE, SW_FAULT_ID_COMM_BUFFERS_ADD_TOO_MUCH_DATA, SW_FAULT_ID_COMM_BUFFERS_ADD_INVALID_BUFFER, SW_FAULT_ID_COMM_BUFFERS_GET_INVALID_BUFFER, // 20 SW_FAULT_ID_COMM_BUFFERS_PEEK_INVALID_BUFFER, SW_FAULT_ID_COMM_BUFFERS_COUNT_INVALID_BUFFER, SW_FAULT_ID_FPGA_INVALID_IN_STATE, SW_FAULT_ID_FPGA_INVALID_OUT_STATE, SW_FAULT_ID_FPGA_WRITE_CMD_TOO_MUCH_DATA, // 25 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, SW_FAULT_ID_MSG_QUEUES_ADD_QUEUE_FULL, SW_FAULT_ID_MSG_QUEUES_ADD_INVALID_QUEUE, // 30 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, SW_FAULT_ID_WATCHDOG_INVALID_SELF_TEST_STATE, SW_FAULT_ID_ALARM_MGMT_INVALID_FIFO_TO_RESET, // 35 SW_FAULT_ID_DIAL_IN_FLOW_INVALID_DIAL_IN_PUMP_DIRECTION, SW_FAULT_ID_DIAL_IN_FLOW_INVALID_DIAL_IN_PUMP_STATE, SW_FAULT_ID_DIAL_IN_FLOW_SET_TOO_HIGH, SW_FAULT_ID_DIAL_OUT_FLOW_INVALID_DIAL_OUT_PUMP_DIRECTION, SW_FAULT_ID_DIAL_OUT_FLOW_INVALID_DIAL_OUT_PUMP_STATE, // 40 SW_FAULT_ID_DIAL_OUT_FLOW_SET_TOO_HIGH, SW_FAULT_ID_ALARM_MGMT_AUDIO_INVALID_ALARM_STATE, SW_FAULT_ID_FPGA_INVALID_ALARM_AUDIO_PARAM, SW_FAULT_ID_RTC_EXEC_INVALID_STATE, SW_FAULT_ID_RTC_SELF_TEST_INVALID_STATE, // 45 SW_FAULT_ID_RTC_TRANSACTION_SERVICE_INVALID_STATE, SW_FAULT_ID_PRES_OCCL_INVALID_STATE, SW_FAULT_ID_OP_MODES_INVALID_MODE_TO_SIGNAL_ACTION, SW_FAULT_ID_ALARM_MGMT_INVALID_USER_ACTION, SW_FAULT_ID_MSG_PENDING_ACK_LIST_FULL, // 50 SW_FAULT_ID_PI_CTRL_INVALID_CONTROLLER, SW_FAULT_ID_PI_CTRL_INVALID_SIGNAL, SW_FAULT_ID_MODE_TREATMENT_INVALID_ALARM_ACTION, SW_FAULT_ID_MODE_PRE_TREATMENT_RESERVOIR_MGMT_INVALID_STATE, SW_FAULT_ID_DIALYSIS_INVALID_STATE, // 55 SW_FAULT_ID_DIALYSIS_INVALID_UF_STATE, SW_FAULT_ID_NVDATAMGMT_INVALID_SELF_TEST_STATE, SW_FAULT_ID_NVDATAMGMT_EXEC_INVALID_STATE, SW_FAULT_ID_MODE_TREATMENT_INVALID_STATE, SW_FAULT_ID_INTERRUPTS_INVALID_EDGE_DETECTED, // 60 SW_FAULT_ID_INVALID_DG_PRESSURE_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, // 65 SW_FAULT_ID_FPGA_UART_OVERRUN_ERROR, SW_FAULT_ID_UTIL_TIME_WINDOWED_COUNT_ERROR, SW_FAULT_ID_ACCEL_INVALID_STATE, SW_FAULT_ID_ACCEL_GET_INVALID_AXIS, SW_FAULT_ID_ACCEL_GET_MAX_INVALID_AXIS, // 70 SW_FAULT_ID_ACCEL_INVALID_SELF_TEST_STATE, SW_FAULT_ID_UTIL_INVALID_WIN_COUNT, SW_FAULT_ID_UTIL_INVALID_WIN_MAX_COUNT, SW_FAULT_ID_MODE_TREATMENT_PARAMS_INVALID_STATE, SW_FAULT_ID_MODE_TREATMENT_PARAMS_INVALID_PARAM, // 75 SW_FAULT_ID_MODE_TREATMENT_PARAMS_INVALID_SET_U32_PARAM, SW_FAULT_ID_MODE_TREATMENT_PARAMS_INVALID_SET_S32_PARAM, SW_FAULT_ID_MODE_TREATMENT_PARAMS_INVALID_SET_F32_PARAM, SW_FAULT_ID_MODE_TREATMENT_PARAMS_INVALID_GET_U32_PARAM, SW_FAULT_ID_MODE_TREATMENT_PARAMS_INVALID_GET_S32_PARAM, // 80 SW_FAULT_ID_MODE_TREATMENT_PARAMS_INVALID_GET_F32_PARAM, SW_FAULT_ID_PERSISTENT_ALARM_INVALID_INDEX, SW_FAULT_ID_HD_VALVES_INVALID_SELF_TEST_STATE, SW_FAULT_ID_HD_VALVES_INVALID_EXEC_STATE, SW_FAULT_ID_HD_VALVES_INVALID_VALVE_SELECTED, // 85 SW_FAULT_ID_HD_VALVES_INVALID_AIR_TRAP_REQUEST, SW_FAULT_ID_HD_VALVES_INVALID_CONTROL_MODE_SELECTED, SW_FAULT_ID_HD_VAVLES_INVALID_POSITION_SELECTED, SW_FAULT_ID_AIR_TRAP_INVALID_STATE, SW_FAULT_ID_AIR_TRAP_INVALID_LEVEL_SENSOR, // 90 SW_FAULT_ID_DIALYSIS_INVALID_SALINE_BOLUS_STATE, SW_FAULT_ID_MODE_PRE_TREATMENT_INVALID_STATE, SW_FAULT_ID_MODE_PRE_TREATMENT_PRIME_INVALID_STATE, SW_FAULT_ID_SYSTEM_COMM_INVALID_FRAME_SIZE, SW_FAULT_ID_SYSTEM_CMMM_CAN_TRANSMIT_REJECTED, // 95 SW_FAULT_ID_BLOOD_PRIME_INVALID_STATE, SW_FAULT_ID_RINSEBACK_INVALID_STATE, SW_FAULT_ID_TREATMENT_END_INVALID_STATE, SW_FAULT_ID_TREATMENT_RECIRC_INVALID_STATE, SW_FAULT_ID_TREATMENT_STOP_INVALID_STATE, // 100 SW_FAULT_ID_MODE_PRIME_INVALID_ALARM_ACTION, SW_FAULT_ID_INVALID_NVDATAMGMT_EXEC_CAL_STATE, SW_FAULT_ID_HD_INVALID_NO_CARTRIDGE_SELF_TEST_STATE, SW_FAULT_ID_HD_INVALID_DRY_SELF_TEST_STATE, SW_FAULT_ID_HD_INVALID_WET_SELF_TEST_STATE, // 105 SW_FAULT_ID_HD_INVALID_PRE_TREATMENT_RECIRC_STATE, SW_FAULT_ID_HD_INVALID_COMMAND_RESPONSE_ID, SW_FAULT_ID_HD_INVALID_RESERVOIR_ID, SW_FAULT_ID_HD_INVALID_VALVE_SETTING_ID, SW_FAULT_ID_HD_INVALID_BLOOD_LEAK_STATE, // 110 SW_FAULT_ID_HD_SYRINGE_INVALID_BOLUS_CMD, SW_FAULT_ID_HD_SYRINGE_INVALID_CONT_CMD, SW_FAULT_ID_HD_SYRINGE_INVALID_VREF, SW_FAULT_ID_HD_SYRINGE_INVALID_STATE, SW_FAULT_ID_MODE_POST_TREATMENT_INVALID_STATE, // 115 SW_FAULT_ID_POST_TREATMENT_RESERVOIR_MGMT_INVALID_STATE, SW_FAULT_ID_INVALID_DG_OPERATING_MODE, SW_FAULT_ID_INVALID_LOAD_CELL_ID, SW_FAULT_ID_MODE_STANDBY_INVALID_STATE, SW_FAULT_ID_MODE_SAMPLE_WATER_INVALID_STATE, // 120 SW_FAULT_ID_INVALID_ALARM_USER_ACTION, SW_FAULT_ID_INVALID_RTI_NOTIFICATION, SW_FAULT_ID_INVALID_CAN_MESSAGE_BOX, SW_FAULT_ID_INVALID_CONSUMABLE_SELF_TEST_STATE, SW_FAULT_ID_HD_INVALID_BUBBLE_STATE, // 125 SW_FAULT_ID_HD_INVALID_BUBBLE_ID, SW_FAULT_ID_HD_TEMPERATURES_INALID_EXEC_STATE, SW_FAULT_ID_HD_INVALID_TEMPERATURE_SENSOR_SELECTED, SW_FAULT_ID_HD_FANS_INVALID_STATE, SW_FAULT_ID_HD_INVALID_FAN_SELECTED, // 130 SW_FAULT_ID_HD_INVALID_SWITCH_ID, SW_FAULT_ID_SAFETY_SHUTDOWN_INVALID_SELF_TEST_STATE, SW_FAULT_ID_PHANTOM_INTERRUPT, SW_FAULT_ID_UNEXPECTED_DMA_INTERRUPT, // 130 SW_FAULT_ID_INVALID_TREATMENT_RESERVOIR_MANAGEMENT_STATE, NUM_OF_SW_FAULT_IDS } SW_FAULT_ID_T; /**@}*/ #endif