Index: firmware/App/Services/AlarmMgmt.h =================================================================== diff -u -rb57b5341e4dfe3a7b17cd333bfcfac9036d11e85 -r0d46714bc22f87f7027c6e82ad59cef1a01ff69b --- firmware/App/Services/AlarmMgmt.h (.../AlarmMgmt.h) (revision b57b5341e4dfe3a7b17cd333bfcfac9036d11e85) +++ firmware/App/Services/AlarmMgmt.h (.../AlarmMgmt.h) (revision 0d46714bc22f87f7027c6e82ad59cef1a01ff69b) @@ -31,7 +31,8 @@ // ********** public definitions ********** -#include "AlarmDefs.h" +#include "AlarmDefs.h" +#include "AlarmMgmtSWFaults.h" #pragma pack(push,4) /// Record structure for unsigned integer alarm data. @@ -75,106 +76,6 @@ } ALARM_DATA_T; #pragma pack(pop) -// 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_IN_STATE, // 15 - SW_FAULT_ID_FPGA_INVALID_OUT_STATE, - 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_RTC_EXEC_INVALID_STATE, - SW_FAULT_ID_RTC_SELF_TEST_INVALID_STATE, - SW_FAULT_ID_RTC_TRANSACTION_SERVICE_INVALID_STATE, - 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_SELF_TEST_INVALID_STATE, - SW_FAULT_ID_HEATERS_PRIMARY_HEATER_EXEC_INVALID_STATE, - SW_FAULT_ID_HEATERS_TRIMMER_HEATER_EXEC_INVALID_STATE, - 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_ACCEL_INVALID_STATE, - SW_FAULT_ID_ACCEL_GET_INVALID_AXIS, - SW_FAULT_ID_ACCEL_GET_MAX_INVALID_AXIS, // 50 - 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_PERSISTENT_ALARM_INVALID_INDEX, - SW_FAULT_ID_CONCENTRATE_PUMP_EXEC_INVALID_STATE, // 55 - SW_FAULT_ID_CONCENTRATE_PUMP_INVALID_PUMP_ID, - SW_FAULT_ID_CONCENTRATE_PUMP_SPEED_OUT_OF_RANGE, - SW_FAULT_ID_UV_REACTORS_INVALID_EXEC_STATE, - SW_FAULT_ID_UV_REACTORS_INVALID_SELF_TEST_STATE, - SW_FAULT_ID_THERMISTORS_INVALID_EXEC_STATE, // 60 - SW_FAULT_ID_THERMISTORS_INVALID_SELF_TEST_STATE, - SW_FAULT_ID_INVALID_THERMISTOR_SELECTED, - SW_FAULT_ID_FAN_INVALID_EXEC_STATE, - SW_FAULT_ID_FAN_INVALID_SELF_TEST_STATE, - SW_FAULT_ID_INVALID_FAN_SELECTED, // 65 - 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_UV_REACTORS_INVALID_REACTOR_SELECTD, - SW_FAULT_ID_RO_PUMP_INVALID_PRESSURE_SELECTED, // 70 - SW_FAULT_ID_DRAIN_PUMP_INVALID_DELTA_PRESSURE_SELECTED, - SW_FAULT_ID_INVALID_TEMPERATURE_SENSOR_SELECTED, - SW_FAULT_ID_DRAIN_PUMP_INVALID_RPM_SELECTED, - SW_FAULT_ID_ALARM_MGMT_INVALID_ALARM_ID, - SW_FAULT_ID_DG_FLUSH_INVALID_EXEC_STATE, // 75 - SW_FAULT_ID_HEAT_DISINFECT_INVALID_EXEC_STATE, - SW_FAULT_ID_INVALID_DG_RESERVOIR_SELECTED, - SW_FAULT_ID_STANDBY_MODE_INVALID_EXEC_STATE, - SW_FAULT_ID_RECIRC_MODE_INVALID_EXEC_STATE, - SW_FAULT_ID_DRAIN_MODE_INVALID_EXEC_STATE, // 80 - 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, - SW_FAULT_ID_INVALID_VALVE_ID, // 85 - 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, - SW_FAULT_ID_INVALID_CONDUCTIVITY_SENSOR_ID, // 90 - SW_FAULT_ID_INVALID_PRESSURE_SENSOR_ID, - SW_FAULT_ID_INVALID_TASK, - SW_FAULT_ID_INVALID_CRC_ALGO, - NUM_OF_SW_FAULT_IDS -} SW_FAULT_ID_T; - // ********** public function prototypes ********** void initAlarmMgmt( void );