/************************************************************************** * * Copyright (c) 2019-2020 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 AlarmDefs.h * * @author (last) Sean Nash * @date (last) 14-Oct-2020 * * @author (original) Sean * @date (original) 11-Feb-2020 * ***************************************************************************/ #ifndef __ALARM_DEFINITIONS_H__ #define __ALARM_DEFINITIONS_H__ // ********** public definitions ********** /** * @addtogroup AlarmManagement * @{ */ #define ALM_ESC_1_MIN (1 * 60000) ///< Number of ms in 1 minute. #define ALM_ESC_4_MIN (4 * 60000) ///< Number of ms in 4 minutes. #define ALM_ESC_5_MIN (5 * 60000) ///< Number of ms in 5 minutes. #define ALM_ESC_10_MIN (10 * 60000) ///< Number of ms in 10 minutes. #define ALM_ESC_30_MIN (30 * 60000) ///< Number of ms in 30 minutes. #define ALM_ESC_90_MIN (90 * 60000) ///< Number of ms in 90 minutes. /// Enumeration of alarm IDs. enum Alarm_List { ALARM_ID_NO_ALARM = 0, ///< Indication for when no alarms is a possible situation ALARM_ID_HD_SOFTWARE_FAULT = 1, ///< HD Software fault. Software found itself in an unexpected state ALARM_ID_STUCK_BUTTON_TEST_FAILED = 2, ///< Stuck button POST failure. Stop or Off button detected to be pressed for at least 1 second during test shortly after power up ALARM_ID_FPGA_POST_TEST_FAILED = 3, ///< FPGA POST failure ALARM_ID_WATCHDOG_POST_TEST_FAILED = 4, ///< Watchdog POST failure ALARM_ID_UI_COMM_POST_FAILED = 5, ///< UI communication POST failure. UI failed to communicate within a reasonable time after power up ALARM_ID_BLOOD_PUMP_MC_CURRENT_CHECK = 6, ///< Blood pump failed motor controller current check. Too high when pump should be off or out of range when pump should be running ALARM_ID_BLOOD_PUMP_OFF_CHECK = 7, ///< Blood pump failed motor off check. Measured speed while commanded off ALARM_ID_BLOOD_PUMP_MC_DIRECTION_CHECK = 8, ///< Blood pump failed motor direction check. Measured vs. commanded ALARM_ID_BLOOD_PUMP_ROTOR_SPEED_CHECK = 9, ///< Blood pump failed rotor speed check. Mismatch with rotor and motor speeds ALARM_ID_DIAL_IN_PUMP_MC_CURRENT_CHECK = 10, ///< Dialysis inlet pump failed motor controller current check. Too high when pump should be off or out of range when pump should be running ALARM_ID_DIAL_IN_PUMP_OFF_CHECK = 11, ///< Dialysis inlet pump failed motor off check. Measured speed while commanded off ALARM_ID_DIAL_IN_PUMP_MC_DIRECTION_CHECK = 12, ///< Dialysis inlet pump failed motor direction check. Measured vs. commanded ALARM_ID_DIAL_IN_PUMP_ROTOR_SPEED_CHECK = 13, ///< Dialysis inlet pump failed rotor speed check. Mismatch with rotor and motor speeds ALARM_ID_DIAL_OUT_PUMP_MC_CURRENT_CHECK = 14, ///< Dialysis outlet pump failed motor controller current check. Too high when pump should be off or out of range when pump should be running ALARM_ID_DIAL_OUT_PUMP_OFF_CHECK = 15, ///< Dialysis outlet pump failed motor off check. Measured speed while commanded off ALARM_ID_DIAL_OUT_PUMP_MC_DIRECTION_CHECK = 16, ///< Dialysis outlet pump failed motor direction check. Measured vs. commanded ALARM_ID_DIAL_OUT_PUMP_ROTOR_SPEED_CHECK = 17, ///< Dialysis outlet pump failed rotor speed check. Mismatch with rotor and motor speeds ALARM_ID_WATCHDOG_EXPIRED = 18, ///< Watchdog expired error. Watchdog was not "pet" within the appropriate time ALARM_ID_RTC_COMM_ERROR = 19, ///< Real-time clock communication error ALARM_ID_RTC_CONFIG_ERROR = 20, ///< Real-time clock configuration error ALARM_ID_DG_COMM_TIMEOUT = 21, ///< Dialysate generator communication timeout ALARM_ID_UI_COMM_TIMEOUT = 22, ///< User interface communication timeout ALARM_ID_COMM_TOO_MANY_BAD_CRCS = 23, ///< Too many bad CRCs detected on received system messages ALARM_ID_TREATMENT_STOPPED_BY_USER = 24, ///< Treatment stopped by user action - pressed stop button ALARM_ID_BLOOD_SITTING_WARNING = 25, ///< Blood sitting too long warning (>4 min) ALARM_ID_BLOOD_SITTING_TOO_LONG_NO_RESUME = 26, ///< Blood sitting too long alarm (>5 min) ALARM_ID_BLOOD_SITTING_TOO_LONG_NO_RINSEBACK = 27, ///< Blood sitting too long alarm (>10 min) ALARM_ID_CAN_MESSAGE_NOT_ACKED = 28, ///< System message that required acknowledgment was not acknowledged ALARM_ID_OCCLUSION_BLOOD_PUMP = 29, ///< Blood pump occlusion detected ALARM_ID_OCCLUSION_DIAL_IN_PUMP = 30, ///< Dialysate inlet pump occlusion detected ALARM_ID_OCCLUSION_DIAL_OUT_PUMP = 31, ///< Dialysate outlet pump occlusion detected ALARM_ID_ARTERIAL_PRESSURE_LOW = 32, ///< Arterial pressure too low during treatment ALARM_ID_ARTERIAL_PRESSURE_HIGH = 33, ///< Arterial pressure too high during treatment ALARM_ID_VENOUS_PRESSURE_LOW = 34, ///< Venous pressure too low during treatment ALARM_ID_VENOUS_PRESSURE_HIGH = 35, ///< Venous pressure too high during treatment ALARM_ID_UF_RATE_TOO_HIGH_ERROR = 36, ///< Ultrafiltration rate is too high error during treatment ALARM_ID_UF_VOLUME_ACCURACY_ERROR = 37, ///< Ultrafiltration volume accuracy error during treatment ALARM_ID_RTC_BATTERY_LOW = 38, ///< RTC battery low ALARM_ID_RTC_OR_TIMER_ACCURACY_FAILURE = 39, ///< RTC or MCU timer inaccurate ALARM_ID_RTC_RAM_OPS_ERROR = 40, ///< RTC (i.e read time) or RAM operations failure (read or write) ALARM_ID_NVDATA_EEPROM_OPS_FAILURE = 41, ///< EEPROM operations (read, write, erase) failure ALARM_ID_NVDATA_MFG_RECORD_CRC_ERROR = 42, ///< Manufacturing record CRC failure ALARM_ID_NVDATA_SRVC_RECORD_CRC_ERROR = 43, ///< Service record CRC failure ALARM_ID_NVDATA_CAL_RECORD_CRC_ERROR = 44, ///< Calibration record CRC failure ALARM_ID_NVDATA_HW_USAGE_DATA_CRC_ERROR = 45, ///< HW usage data (treatment time in HD and total consumed water in DG) failure AlARM_ID_NVDATA_DISINFECTION_DATE_CRC_ERROR = 46, ///< Last disinfection date CRC error ALARM_ID_RO_PUMP_OUT_PRESSURE_OUT_OF_RANGE = 47, ///< Pressure at outlet of RO pump is out of range ALARM_ID_TEMPERATURE_SENSORS_FAULT = 48, ///< DG temperature sensors fault ALARM_ID_FPGA_COMM_TIMEOUT = 49, ///< FPGA communication down for too long ALARM_ID_HD_COMM_TIMEOUT = 50, ///< HD communication timeout ALARM_ID_VALVE_CONTROL_FAILURE = 51, ///< FPGA not accepting commanded valve states ALARM_ID_BLOOD_PUMP_FLOW_VS_MOTOR_SPEED_CHECK = 52, ///< Blood pump failed flow vs. motor speed check. Mismatch with flow rate and rate implied by motor speed ALARM_ID_DIAL_IN_PUMP_FLOW_VS_MOTOR_SPEED_CHECK = 53, ///< Dialysate inlet pump failed flow vs. motor speed check. Mismatch with flow rate and rate implied by motor speed ALARM_ID_HD_PRIME_PURGE_AIR_TIME_OUT = 54, ///< HD time out on prime sub-mode purge air state. ALARM_ID_BLOOD_PUMP_MOTOR_SPEED_CHECK = 55, ///< Blood pump failed motor speed check. Measured vs. commanded ALARM_ID_DIAL_IN_PUMP_MOTOR_SPEED_CHECK = 56, ///< Dialysate inlet pump failed motor speed check. Measured vs. commanded ALARM_ID_DIAL_OUT_PUMP_MOTOR_SPEED_CHECK = 57, ///< Dialysate outlet pump failed motor speed check. Measured vs. commanded ALARM_ID_BLOOD_PUMP_ROTOR_SPEED_TOO_HIGH = 58, ///< Blood pump rotor speed too high ALARM_ID_INLET_WATER_LOW_CONDUCTIVITY = 59, ///< Inlet water conductivity too low ALARM_ID_INLET_WATER_HIGH_CONDUCTIVITY = 60, ///< Inlet water conductivity too high ALARM_ID_DG_SOFTWARE_FAULT = 61, ///< DG software fault. Software found itself in an unexpected state ALARM_ID_CONDUCTIVITY_SENSOR_FAULT = 62, ///< Conductivity sensor fault ALARM_ID_INLET_WATER_LOW_TEMPERATURE = 63, ///< Inlet water temperature too low ALARM_ID_INLET_WATER_HIGH_TEMPERATURE = 64, ///< Inlet water temperature too high ALARM_ID_PRESSURE_SENSOR_FAULT = 65, ///< Pressure sensor fault ALARM_ID_INLET_WATER_LOW_PRESSURE = 66, ///< Inlet water pressure too low ALARM_ID_HD_CRITICAL_DATA_ERROR = 67, ///< HD critical data integrity check failed ALARM_ID_HD_ACCELEROMETER_SELF_TEST_FAILURE = 68, ///< HD accelerometer failed POST ALARM_ID_DG_ACCELEROMETER_SELF_TEST_FAILURE = 69, ///< DG accelerometer failed POST ALARM_ID_HD_EXCESSIVE_TILT = 70, ///< HD tilt exceeds maximum ALARM_ID_DG_EXCESSIVE_TILT = 71, ///< DG tilt exceeds maximum ALARM_ID_HD_SHOCK = 72, ///< HD experienced large acceleration ALARM_ID_DG_SHOCK = 73, ///< DG experienced large acceleration ALARM_ID_HD_ACCELEROMETER_FAILURE = 74, ///< HD accelerometer error (no readings or FPGA reports error) ALARM_ID_DG_ACCELEROMETER_FAILURE = 75, ///< DG accelerometer error (no readings or FPGA reports error) ALARM_ID_DG_CRITICAL_DATA_ERROR = 76, ///< DG critical data integrity check failed ALARM_ID_RO_REJECTION_RATIO_OUT_OF_RANGE = 77, ///< RO rejection ratio out of range ALARM_ID_INLET_WATER_PRESSURE_FAULT = 78, ///< Inlet water pressure fault ALARM_ID_HD_VALVE_HOMING_FAILED = 79, ///< HD valve homing failed ALARM_ID_HD_VALVE_TRANSITION_TIMEOUT = 80, ///< HD valve transition time out ALARM_ID_HD_VALVE_NOT_FUNCTIONAL = 81, ///< HD valve not functional ALARM_ID_HD_VALVE_CURRENT_OUT_OF_RANGE = 82, ///< HD valve current out of range ALARM_ID_HD_VALVE_POSITION_OUT_OF_RANGE = 83, ///< HD valve position out of target ALARM_ID_AIR_TRAP_ILLEGAL_LEVELS = 84, ///< Air trap level sensors reporting illegal combination of air/fluid ALARM_ID_AIR_TRAP_FILL_DURING_PRIME = 85, ///< Air trap fill timeout during priming ALARM_ID_AIR_TRAP_FILL_DURING_TREATMENT = 86, ///< Air trap fill timeout during treatment ALARM_ID_BLOOD_FLOW_SIGNAL_STRENGTH_TOO_LOW = 87, ///< Blood flow sensor signal strength too low ALARM_ID_DIALYSATE_FLOW_SIGNAL_STRENGTH_TOO_LOW = 88, ///< Dialysate flow sensor signal strength too low ALARM_ID_EMPTY_SALINE_BAG = 89, ///< Saline bag is empty ALARM_ID_SALINE_BOLUS_VOLUME_CHECK_FAILURE = 90, ///< Saline bolus volume check failure ALARM_ID_ARTERIAL_PRESSURE_SENSOR_FAULT = 91, ///< FPGA reports failure reading arterial pressure sensor ALARM_ID_VENOUS_PRESSURE_SENSOR_FAULT = 92, ///< FPGA reports failure reading venous pressure sensor ALARM_ID_UV_REACTOR_NOT_HEALTHY = 93, ///< UV reactor not healthy (either inlet or outlet) ALARM_ID_POST_ACID_CONDUCTIVITY_OUT_OF_RANGE = 94, ///< Post-acid concentrate conductivity out of range ALARM_ID_POST_BICARB_CONDUCTIVITY_OUT_OF_RANGE = 95, ///< Post-bicarb concentrate conductivity out of range ALARM_ID_RO_PUMP_FLOW_RATE_OUT_OF_RANGE = 96, ///< RO pump flow rate out of range ALARM_ID_DG_THERMISTORS_TEMPERATURE_OUT_OF_RANGE = 97, ///< DG thermistors/sensors temperature out of range ALARM_ID_DG_FAN_RPM_OUT_OF_RANGE = 98, ///< DG fan RPM out of range ALARM_ID_DG_DIALYSATE_FILL_OUT_OF_TIME = 99, ///< DG dialysate fill runs out of time ALARM_ID_CP1_SPEED_CONTROL_ERROR = 100, ///< DG concentrate pump CP1 speed control error ALARM_ID_CP2_SPEED_CONTROL_ERROR = 101, ///< DG concentrate pump CP2 speed control error ALARM_ID_FLOW_RATE_OUT_OF_UPPER_RANGE = 102, ///< DG flow rate out of upper range ALARM_ID_RO_PUMP_PRESSURE_OUT_OF_RANGE = 103, ///< DG RO pump pressure out of range ALARM_ID_DRAIN_PUMP_RPM_OUT_OF_RANGE = 104, ///< DG drain pump RPM out of range ALARM_ID_DG_HEATERS_NEGATIVE_COLD_JUNCTION_TEMPERATURE = 105, ///< DG heaters cold junction temperature out of range ALARM_ID_DG_HEATERS_FAULT = 106, ///< DG heaters fault ALARM_ID_END_OF_DIALYSIS_TREATMENT_WARNING = 107, ///< HD end of treatment warning ALARM_ID_END_OF_DIALYSIS_TREATMENT_ALARM = 108, ///< HD end of treatment alarm (user not acting to end treatment) ALARM_ID_END_OF_DIALYSIS_TREATMENT_ALARM_HIGH = 109, ///< HD end of treatment alarm (high priority - user still not acting to end treatment) ALARM_ID_DG_HEAT_DISINFECT_CYCLE_FAILED = 110, ///< DG heat disinfect cycle failed ALARM_ID_RO_PUMP_RAMP_UP_TO_FLOW_TIMEOUT = 111, ///< DG RO pump ramp up to target flow time out ALARM_ID_FLOW_RATE_OUT_OF_LOWER_RANGE = 112, ///< DG flow rate out of lower range ALARM_ID_DRAIN_PUMP_OFF_FAULT = 113, ///< DG drain pump off fault ALARM_ID_RO_PUMP_OFF_FAULT = 114, ///< DG RO pump off fault ALARM_ID_PRIME_DIALYSATE_DIALYZER_TIME_OUT = 115, ///< HD prime dialysate dialyzer time out alarm ALARM_ID_PRIME_DIALYSATE_BYPASS_TIME_OUT = 116, ///< HD prime dialysate bypass time out alarm ALARM_ID_PRIME_COMPLETED_LOW_PRIORITY = 117, ///< HD prime completed low priority alarm ALARM_ID_PRIME_COMPLETED_MEDIUM_PRIORITY = 118, ///< HD prime completed medium priority alarm ALARM_ID_PRIME_COMPLETED_HIGH_PRIORITY = 119, ///< HD prime completed high priority alarm ALARM_ID_PRIME_OUT_OF_TIME = 120, ///< HD prime out of time alarm ALARM_ID_DG_COMMAND_INVALID_PARAMETER_FAULT = 121, ///< HD requests DG command with invalid parameter fault NUM_OF_ALARM_IDS ///< Total number of alarms }; typedef enum Alarm_List ALARM_ID_T; ///< Type for alarm list enumeration /// Enumeration of alarm priorities. enum Alarm_Priorities { ALARM_PRIORITY_NONE = 0, ///< Indicates not an alarm or no alarms active at this time ALARM_PRIORITY_LOW = 1, ///< Low priority alarm ALARM_PRIORITY_MEDIUM = 2, ///< Medium priority alarm ALARM_PRIORITY_HIGH = 3, ///< High priority alarm NUM_OF_ALARM_PRIORITIES ///< Total number of alarm priorities }; typedef enum Alarm_Priorities ALARM_PRIORITY_T; ///< Type for alarm priorities enumeration /// Enumeration of alarm sources. enum Alarm_Sources { ALARM_SOURCE_UI = 0, ///< User interface alarm source ALARM_SOURCE_HD, ///< HD firmware alarm source ALARM_SOURCE_DG, ///< DG firmware alarm source NUMBER_OF_ALARM_SOURCES ///< Number of alarm sources }; typedef enum Alarm_Sources ALARM_SOURCE_T; ///< Type for alarm sources enumeration /// Enumeration of alarm user actions. enum Alarm_User_Actions { ALARM_USER_ACTION_RESUME = 0, ///< User selected resume from alarm recovery options ALARM_USER_ACTION_RINSEBACK, ///< User selected rinseback from alarm recovery options ALARM_USER_ACTION_END_TREATMENT, ///< User selected end treatment from alarm recovery options ALARM_USER_ACTION_ACK, ///< User selected acknowledge (ok) from alarm recovery options NUMBER_OF_ALARM_USER_ACTIONS ///< Number of alarm user actions }; typedef enum Alarm_User_Actions ALARM_USER_ACTION_T; ///< Type for alarm user actions enumeration /// Enumeration of alarm state flags bit positions in periodic broadcast enum Alarm_State_Flag_Bit_Positions { ALARM_STATE_FLAG_BIT_POS_SYSTEM_FAULT = 0, ///< One or more system faults has been triggered ALARM_STATE_FLAG_BIT_POS_STOP = 1, ///< Alarm(s) have stopped treatment/activity and placed system in a safe state ALARM_STATE_FLAG_BIT_POS_NO_CLEAR = 2, ///< One or more active alarms is not recoverable ALARM_STATE_FLAG_BIT_POS_NO_RESUME = 3, ///< The "resume" user recovery option is disabled ALARM_STATE_FLAG_BIT_POS_NO_RINSEBACK = 4, ///< The "rinseback" user recovery option is disabled ALARM_STATE_FLAG_BIT_POS_NO_END_TREATMENT = 5, ///< The "end treatment" user recovery option is disabled ALARM_STATE_FLAG_BIT_POS_NO_NEW_TREATMENT = 6, ///< A new treatment may not be started without cycling power to system ALARM_STATE_FLAG_BIT_POS_USER_MUST_ACK = 7, ///< The "ok" user recovery option is enabled ALARM_STATE_FLAG_BIT_POS_ALARMS_TO_ESCALATE = 8, ///< One or more active alarms will escalate in time ALARM_STATE_FLAG_BIT_POS_ALARMS_SILENCED = 9, ///< Alarms have been temporarily silenced by user ALARM_STATE_FLAG_BIT_POS_LAMP_ON = 10, ///< Alarm lamp is currently on (for syncing to UI) ALARM_STATE_FLAG_BIT_POS_UNUSED_1 = 11, ///< Reserved ALARM_STATE_FLAG_BIT_POS_UNUSED_2 = 12, ///< Reserved ALARM_STATE_FLAG_BIT_POS_UNUSED_3 = 13, ///< Reserved ALARM_STATE_FLAG_BIT_POS_UNUSED_4 = 14, ///< Reserved ALARM_STATE_FLAG_BIT_POS_TOP_CONDITION = 15, ///< The top alarm's condition is still being detected NUM_OF_ALARM_STATE_FLAG_BIT_POS = 16 ///< The number of alarm state flag bit positions }; typedef enum Alarm_State_Flag_Bit_Positions ALARM_STATE_FLAG_BIT_POSITIONS_T; #if defined(_HD_) /// Record defining the properties of each individual alarm. struct AlarmsStateRecord { ALARM_PRIORITY_T alarmPriority; ///< priority of alarm U32 alarmSubRank; ///< alarm's rank within it's priority U32 alarmEscalatesAfter; ///< time (s) after start when alarm will escalate if not cleared (zero indicates no escalation) ALARM_ID_T alarmEscalatesTo; ///< ID of alarm that this alarm will escalate to (ALARM_ID_NO_ALARM indicates no escalation) BOOL alarmIsFault; ///< alarm is a system fault? BOOL alarmStops; ///< alarm activation should cause a controlled stop BOOL alarmConditionClearImmed; ///< alarm condition is cleared immediately (does not persist after alarm triggered) BOOL alarmNoClear; ///< alarm cannot be cleared (unrecoverable)? BOOL alarmNoResume; ///< alarm prevents treatment resume BOOL alarmNoRinseback; ///< alarm prevents rinseback BOOL alarmNoEndTreatment; ///< alarm prevents ending treatment BOOL alarmNoNewTreatment; ///< alarm prevents any new treatments BOOL alarmUserAckRequired; ///< alarm requires user acknowledgment }; typedef struct AlarmsStateRecord ALARM_T; #ifndef __ALARM_MGMT_C__ /// Only alarm mgmt module should include the populated alarm table. extern const ALARM_T ALARM_TABLE[]; #else /// Table of alarms and their static properties. const ALARM_T ALARM_TABLE[] = { // Priority Rank Escalate In Escalate To Fault Stops ClrIm NoClr NoRes NoRin NoEnd NoNew UsrAck { ALARM_PRIORITY_NONE, 999, 0, ALARM_ID_NO_ALARM, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_NO_ALARM { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_HD_SOFTWARE_FAULT { ALARM_PRIORITY_HIGH, 1, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_STUCK_BUTTON_TEST_FAILED { ALARM_PRIORITY_HIGH, 1, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_FPGA_POST_TEST_FAILED { ALARM_PRIORITY_HIGH, 1, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_WATCHDOG_POST_TEST_FAILED { ALARM_PRIORITY_HIGH, 1, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_UI_COMM_POST_FAILED { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_BLOOD_PUMP_MC_CURRENT_CHECK { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_BLOOD_PUMP_OFF_CHECK { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_BLOOD_PUMP_MC_DIRECTION_CHECK { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_BLOOD_PUMP_ROTOR_SPEED_CHECK { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_DIAL_IN_PUMP_MC_CURRENT_CHECK { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_DIAL_IN_PUMP_OFF_CHECK { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_DIAL_IN_PUMP_MC_DIRECTION_CHECK { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_DIAL_IN_PUMP_ROTOR_SPEED_CHECK { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_DIAL_OUT_PUMP_MC_CURRENT_CHECK { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_DIAL_OUT_PUMP_OFF_CHECK { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_DIAL_OUT_PUMP_MC_DIRECTION_CHECK { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_DIAL_OUT_PUMP_ROTOR_SPEED_CHECK { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_WATCHDOG_EXPIRED { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_RTC_COMM_ERROR { ALARM_PRIORITY_HIGH, 1, 0, ALARM_ID_NO_ALARM, FALSE, FALSE, TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_RTC_CONFIG_ERROR { ALARM_PRIORITY_HIGH, 18, 0, ALARM_ID_NO_ALARM, TRUE, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_DG_COMM_TIMEOUT { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_UI_COMM_TIMEOUT { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE, TRUE , TRUE , TRUE, TRUE, TRUE, TRUE, TRUE, FALSE }, // ALARM_ID_COMM_TOO_MANY_BAD_CRCS { ALARM_PRIORITY_LOW, 31, ALM_ESC_4_MIN, ALARM_ID_BLOOD_SITTING_WARNING, FALSE, TRUE , TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_TREATMENT_STOPPED_BY_USER { ALARM_PRIORITY_MEDIUM, 25, ALM_ESC_1_MIN, ALARM_ID_BLOOD_SITTING_TOO_LONG_NO_RESUME, FALSE, TRUE , TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_BLOOD_SITTING_WARNING { ALARM_PRIORITY_MEDIUM, 7, ALM_ESC_5_MIN, ALARM_ID_BLOOD_SITTING_TOO_LONG_NO_RINSEBACK, FALSE, TRUE , TRUE , FALSE, TRUE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_BLOOD_SITTING_TOO_LONG_NO_RESUME { ALARM_PRIORITY_HIGH, 5, 0, ALARM_ID_NO_ALARM, FALSE, TRUE , TRUE , FALSE, TRUE, TRUE, FALSE, FALSE, FALSE }, // ALARM_ID_BLOOD_SITTING_TOO_LONG_NO_RINSEBACK { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE, TRUE , TRUE , TRUE, TRUE, TRUE, TRUE, TRUE, FALSE }, // ALARM_ID_CAN_MESSAGE_NOT_ACKED { ALARM_PRIORITY_HIGH, 3, ALM_ESC_4_MIN, ALARM_ID_BLOOD_SITTING_WARNING, FALSE, TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_OCCLUSION_BLOOD_PUMP { ALARM_PRIORITY_HIGH, 3, ALM_ESC_4_MIN, ALARM_ID_BLOOD_SITTING_WARNING, FALSE, TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_OCCLUSION_DIAL_IN_PUMP { ALARM_PRIORITY_HIGH, 3, ALM_ESC_4_MIN, ALARM_ID_BLOOD_SITTING_WARNING, FALSE, TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_OCCLUSION_DIAL_OUT_PUMP { ALARM_PRIORITY_HIGH, 13, ALM_ESC_4_MIN, ALARM_ID_BLOOD_SITTING_WARNING, FALSE, TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_ARTERIAL_PRESSURE_LOW { ALARM_PRIORITY_HIGH, 14, ALM_ESC_4_MIN, ALARM_ID_BLOOD_SITTING_WARNING, FALSE, TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_ARTERIAL_PRESSURE_HIGH { ALARM_PRIORITY_HIGH, 8, ALM_ESC_4_MIN, ALARM_ID_BLOOD_SITTING_WARNING, FALSE, TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_VENOUS_PRESSURE_LOW { ALARM_PRIORITY_HIGH, 12, ALM_ESC_4_MIN, ALARM_ID_BLOOD_SITTING_WARNING, FALSE, TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_VENOUS_PRESSURE_HIGH { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE, TRUE , TRUE , TRUE, TRUE, TRUE, TRUE, TRUE, FALSE }, // ALARM_ID_UF_RATE_TOO_HIGH_ERROR { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE, TRUE , TRUE , TRUE, TRUE, TRUE, TRUE, TRUE, FALSE }, // ALARM_ID_UF_VOLUME_ACCURACY_ERROR { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, FALSE, FALSE, FALSE, FALSE, TRUE, TRUE, TRUE, TRUE, FALSE }, // ALARM_ID_RTC_BATTERY_LOW { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE, TRUE , TRUE , TRUE, TRUE, TRUE, TRUE, TRUE, FALSE }, // ALARM_ID_RTC_OR_TIMER_ACCURACY_FAILURE { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, FALSE, FALSE, TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_RTC_RAM_OPS_ERROR { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, FALSE, FALSE, TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_NVDATA_EEPROM_OPS_FAILURE { ALARM_PRIORITY_HIGH, 1, 0, ALARM_ID_NO_ALARM, FALSE, FALSE, TRUE , TRUE, TRUE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_NVDATA_MFG_RECORD_CRC_ERROR { ALARM_PRIORITY_HIGH, 1, 0, ALARM_ID_NO_ALARM, FALSE, FALSE, TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_NVDATA_SRVC_RECORD_CRC_ERROR { ALARM_PRIORITY_HIGH, 1, 0, ALARM_ID_NO_ALARM, TRUE, TRUE , TRUE , TRUE, TRUE, TRUE, TRUE, TRUE, FALSE }, // ALARM_ID_NVDATA_CAL_RECORD_CRC_ERROR { ALARM_PRIORITY_HIGH, 1, 0, ALARM_ID_NO_ALARM, FALSE, FALSE, TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_NVDATA_HW_USAGE_DATA_CRC_ERROR { ALARM_PRIORITY_HIGH, 1, 0, ALARM_ID_NO_ALARM, TRUE, TRUE , TRUE , TRUE, TRUE, TRUE, TRUE, TRUE, FALSE }, // AlARM_ID_NVDATA_DISINFECTION_DATE_CRC_ERROR { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE, TRUE , TRUE , TRUE, TRUE, TRUE, TRUE, TRUE, FALSE }, // ALARM_ID_RO_PUMP_OUT_PRESSURE_OUT_OF_RANGE { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE, TRUE , TRUE , TRUE, TRUE, TRUE, TRUE, TRUE, FALSE }, // ALARM_ID_TEMPERATURE_SENSORS_OUT_OF_RANGE { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE, TRUE , TRUE , TRUE, TRUE, TRUE, TRUE, TRUE, FALSE }, // ALARM_ID_FPGA_COMM_TIMEOUT { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, FALSE, FALSE, TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_HD_COMM_TIMEOUT { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE, TRUE , TRUE , TRUE, TRUE, TRUE, TRUE, TRUE, FALSE }, // ALARM_ID_VALVE_CONTROL_FAILURE { ALARM_PRIORITY_HIGH, 3, ALM_ESC_4_MIN, ALARM_ID_BLOOD_SITTING_WARNING, FALSE, TRUE , TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_BLOOD_PUMP_FLOW_VS_MOTOR_SPEED_CHECK { ALARM_PRIORITY_HIGH, 3, ALM_ESC_4_MIN, ALARM_ID_BLOOD_SITTING_WARNING, FALSE, TRUE , TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_DIAL_IN_PUMP_FLOW_VS_MOTOR_SPEED_CHECK { ALARM_PRIORITY_HIGH, 5, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_HD_PRIME_PURGE_AIR_TIME_OUT { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_BLOOD_PUMP_MOTOR_SPEED_CHECK { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_DIAL_IN_PUMP_MOTOR_SPEED_CHECK { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_DIAL_OUT_PUMP_MOTOR_SPEED_CHECK { ALARM_PRIORITY_HIGH, 3, ALM_ESC_4_MIN, ALARM_ID_BLOOD_SITTING_WARNING, FALSE, TRUE , TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_BLOOD_PUMP_ROTOR_SPEED_TOO_HIGH { ALARM_PRIORITY_MEDIUM, 22, ALM_ESC_4_MIN, ALARM_ID_BLOOD_SITTING_WARNING, FALSE, TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_INLET_WATER_LOW_CONDUCTIVITY { ALARM_PRIORITY_MEDIUM, 21, ALM_ESC_4_MIN, ALARM_ID_BLOOD_SITTING_WARNING, FALSE, TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_INLET_WATER_HIGH_CONDUCTIVITY { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_DG_SOFTWARE_FAULT { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_CONDUCTIVITY_SENSOR_FAULT { ALARM_PRIORITY_HIGH, 20, ALM_ESC_5_MIN, ALARM_ID_NO_ALARM, FALSE, TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_INLET_WATER_LOW_TEMPERATURE { ALARM_PRIORITY_HIGH, 19, ALM_ESC_5_MIN, ALARM_ID_NO_ALARM, FALSE, TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_INLET_WATER_HIGH_TEMPERATURE { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_PRESSURE_SENSOR_FAULT { ALARM_PRIORITY_HIGH, 23, ALM_ESC_5_MIN, ALARM_ID_NO_ALARM, FALSE, TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_INLET_WATER_LOW_PRESSURE { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_CRITICAL_DATA_ERROR { ALARM_PRIORITY_HIGH, 1, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_HD_ACCELEROMETER_SELF_TEST_FAILURE { ALARM_PRIORITY_HIGH, 1, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_DG_ACCELEROMETER_SELF_TEST_FAILURE { ALARM_PRIORITY_HIGH, 16, ALM_ESC_4_MIN, ALARM_ID_BLOOD_SITTING_WARNING, FALSE, TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_HD_EXCESSIVE_TILT { ALARM_PRIORITY_HIGH, 16, ALM_ESC_4_MIN, ALARM_ID_BLOOD_SITTING_WARNING, FALSE, TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_DG_EXCESSIVE_TILT { ALARM_PRIORITY_HIGH, 15, ALM_ESC_4_MIN, ALARM_ID_BLOOD_SITTING_WARNING, FALSE, TRUE , TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_HD_SHOCK { ALARM_PRIORITY_HIGH, 15, ALM_ESC_4_MIN, ALARM_ID_BLOOD_SITTING_WARNING, FALSE, TRUE , TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_DG_SHOCK { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_HD_ACCELEROMETER_FAILURE { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_DG_ACCELEROMETER_FAILURE { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_DG_CRITICAL_DATA_ERROR { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_RO_REJECTION_RATIO_OUT_OF_RANGE { ALARM_PRIORITY_HIGH, 3, ALM_ESC_4_MIN, ALARM_ID_BLOOD_SITTING_WARNING, FALSE, TRUE , TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_INLET_WATER_PRESSURE_FAULT { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_HD_VALVE_HOMING_FAILED { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_HD_VALVE_TRANSITION_TIMEOUT { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_HD_VALVE_NOT_FUNCTIONAL { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_HD_VALVE_CURRENT_OUT_OF_RANGE { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_HD_VALVE_POSITION_OUT_OF_RANGE { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_AIR_TRAP_ILLEGAL_LEVELS { ALARM_PRIORITY_HIGH, 3, ALM_ESC_4_MIN, ALARM_ID_BLOOD_SITTING_WARNING, FALSE, TRUE , TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_AIR_TRAP_FILL_DURING_PRIME { ALARM_PRIORITY_HIGH, 3, ALM_ESC_4_MIN, ALARM_ID_BLOOD_SITTING_WARNING, FALSE, TRUE , TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_AIR_TRAP_FILL_DURING_TREATMENT { ALARM_PRIORITY_HIGH, 3, ALM_ESC_4_MIN, ALARM_ID_BLOOD_SITTING_WARNING, FALSE, TRUE , TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_BLOOD_FLOW_SIGNAL_STRENGTH_TOO_LOW { ALARM_PRIORITY_HIGH, 3, ALM_ESC_4_MIN, ALARM_ID_BLOOD_SITTING_WARNING, FALSE, TRUE , TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_DIALYSATE_FLOW_SIGNAL_STRENGTH_TOO_LOW { ALARM_PRIORITY_HIGH, 3, ALM_ESC_4_MIN, ALARM_ID_BLOOD_SITTING_WARNING, FALSE, TRUE , TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_EMPTY_SALINE_BAG { ALARM_PRIORITY_MEDIUM, 3, ALM_ESC_4_MIN, ALARM_ID_BLOOD_SITTING_WARNING, FALSE, TRUE , TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_SALINE_BOLUS_VOLUME_CHECK_FAILURE { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_ARTERIAL_PRESSURE_SENSOR_FAULT { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_VENOUS_PRESSURE_SENSOR_FAULT { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_UV_REACTOR_NOT_HEALTHY { ALARM_PRIORITY_LOW, 30, ALM_ESC_4_MIN, ALARM_ID_BLOOD_SITTING_WARNING, FALSE, TRUE , TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_POST_ACID_CONDUCTIVITY_OUT_OF_RANGE { ALARM_PRIORITY_LOW, 30, ALM_ESC_4_MIN, ALARM_ID_BLOOD_SITTING_WARNING, FALSE, TRUE , TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_POST_BICARB_CONDUCTIVITY_OUT_OF_RANGE { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_RO_PUMP_FLOW_RATE_OUT_OF_RANGE { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_DG_THERMISOTRS_TEMPERATURE_OUT_OF_RANGE { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_DG_FAN_RPM_OUT_OF_RANGE { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_DG_DIALYSATE_FILL_OUT_OF_TIME { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_CP1_SPEED_CONTROL_ERROR { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_CP2_SPEED_CONTROL_ERROR { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_FLOW_RATE_OUT_OF_RANGE { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_RO_PUMP_PRESSURE_OUT_OF_RANGE { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_DRAIN_PUMP_RPM_OUT_OF_RANGE { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_DG_HEATERS_NEGATIVE_COLD_JUNCTION_TEMPERATURE { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_DG_HEATERS_FAULT { ALARM_PRIORITY_LOW, 32, 0, ALARM_ID_NO_ALARM, FALSE, FALSE, TRUE , FALSE, TRUE , FALSE, TRUE , FALSE, FALSE }, // ALARM_ID_END_OF_DIALYSIS_TREATMENT_WARNING { ALARM_PRIORITY_MEDIUM, 26, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_END_OF_DIALYSIS_TREATMENT_ALARM { ALARM_PRIORITY_HIGH, 4, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_END_OF_DIALYSIS_TREATMENT_ALARM_HIGH { ALARM_PRIORITY_HIGH, 4, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_DG_HEAT_DISINFECT_CYCLE_FAILED { ALARM_PRIORITY_HIGH, 4, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_RO_PUMP_RAMP_UP_TO_FLOW_TIMEOUT { ALARM_PRIORITY_HIGH, 4, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_FLOW_RATE_OUT_OF_LOWER_RANGE { ALARM_PRIORITY_HIGH, 4, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_DRAIN_PUMP_OFF_FAULT { ALARM_PRIORITY_HIGH, 4, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_RO_PUMP_OFF_FAULT { ALARM_PRIORITY_HIGH, 4, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_PRIME_DIALYSATE_DIALYZER_TIME_OUT { ALARM_PRIORITY_HIGH, 4, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_PRIME_DIALYSATE_BYPASS_TIME_OUT { ALARM_PRIORITY_LOW, 25, ALM_ESC_90_MIN, ALARM_ID_PRIME_COMPLETED_MEDIUM_PRIORITY, FALSE, FALSE, FALSE, FALSE, TRUE , TRUE , FALSE, FALSE, FALSE }, // ALARM_ID_PRIME_COMPLETED_LOW_PRIORITY { ALARM_PRIORITY_MEDIUM, 4, ALM_ESC_30_MIN, ALARM_ID_PRIME_COMPLETED_HIGH_PRIORITY, FALSE, FALSE, FALSE, FALSE, TRUE , TRUE , FALSE, FALSE, FALSE }, // ALARM_ID_PRIME_COMPLETED_MEDIUM_PRIORITY { ALARM_PRIORITY_HIGH, 4, 0, ALARM_ID_NO_ALARM, FALSE, FALSE, TRUE, FALSE, TRUE , TRUE , FALSE, FALSE, FALSE }, // ALARM_ID_PRIME_COMPLETED_HIGH_PRIORITY { ALARM_PRIORITY_LOW, 4, 0, ALARM_ID_NO_ALARM, FALSE, TRUE , TRUE , FALSE, TRUE , TRUE , TRUE , FALSE, FALSE }, // ALARM_ID_PRIME_OUT_OF_TIME { ALARM_PRIORITY_LOW, 4, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_DG_COMMAND_INVALID_PARAMETER_FAULT // Priority Rank Escalate In Escalate To Fault Stops ClrIm NoClr NoRes NoRin NoEnd NoNew UsrAck }; #endif // included by AlarmMgmt.c #endif // HD build /**@}*/ #endif