Index: AlarmDefs.h =================================================================== diff -u -r6bc7af6b62c6f8ee7d24ae4257e2cf449eaca2af -rcba23c5e4bb72af8afaf5f00b15c8e07539c45af --- AlarmDefs.h (.../AlarmDefs.h) (revision 6bc7af6b62c6f8ee7d24ae4257e2cf449eaca2af) +++ AlarmDefs.h (.../AlarmDefs.h) (revision cba23c5e4bb72af8afaf5f00b15c8e07539c45af) @@ -25,6 +25,13 @@ * @{ */ +#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 { @@ -77,12 +84,12 @@ 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_TEMPERATURE_SENSORS_INCONSISTENT = 49, ///< DG temperature sensors values are inconsistent with respect to each other + 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_DIAL_OUT_PUMP_FLOW_VS_MOTOR_SPEED_CHECK = 54, ///< Dialysate outlet 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 @@ -117,24 +124,66 @@ 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_EMPTY_SALINE_BAG = 89, ///< HD Saline bag is empty + ALARM_ID_SALINE_BOLUS_VOLUME_CHECK_FAILURE = 90, ///< HD 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_THERMISOTRS_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_RANGE = 102, ///< DG flow rate out of 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_ACID_CONDUCTIVITY_OUT_OF_RANGE = 94, ///< Concentrate conductivity after adding acid out of range alarm + ALARM_ID_BICARB_CONDUCTIVITY_OUT_OF_RANGE = 95, ///< Concentrate conductivity after adding bicarb out of range alarm + 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_TREATMENT_WARNING = 107, ///< HD end of treatment warning + ALARM_ID_END_OF_TREATMENT_ALARM = 108, ///< HD end of treatment alarm (user not acting to end treatment) + ALARM_ID_END_OF_TREATMENT_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 + ALARM_ID_HD_LOAD_CELL_ACCELERATION_RES_1_ALARM = 122, ///< HD sees primary load cell for reservoir 1 change too much too fast + ALARM_ID_HD_LOAD_CELL_ACCELERATION_RES_2_ALARM = 123, ///< HD sees primary load cell for reservoir 1 change too much too fast + ALARM_ID_TREATMENT_STOPPED_AFTER_RINSEBACK = 124, ///< HD in treatment stopped sub-mode after rinseback completed (no escalation) + ALARM_ID_TREATMENT_RINSEBACK_TIMEOUT_ALARM = 125, ///< HD in treatment rinseback operation timeout + ALARM_ID_TREATMENT_RECIRC_TIMEOUT_ALARM = 126, ///< HD in treatment re-circ sub-mode for too long + ALARM_ID_CARTRIDGE_DOOR_OPENED = 127, ///< HD cartridge door opened alarm + ALARM_ID_PRE_TREATMENT_NO_CART_SELF_TEST_FAILURE = 128, ///< HD pre-treatment mode no cartridge self-tests failure + ALARM_ID_INSTALL_NEW_CARTRIDGE = 129, ///< HD needs new cartridge to be installed + ALARM_ID_CARTRIDGE_INSTALLED_IMPROPERLY = 130, ///< HD cartridge installed improperly alarm + ALARM_ID_RINSEBACK_VOLUME_CHECK_FAILURE = 131, ///< HD rinseback volume check failure + ALARM_ID_NO_CARTRIDGE_LOADED = 132, ///< HD no cartridge loaded alarm + ALARM_ID_END_TREATMENT_TIMEOUT_ALARM = 133, ///< HD end treatment sub-mode timeout alarm + ALARM_ID_BLOOD_PRIME_VOLUME_CHECK_FAILURE = 134, ///< HD blood prime volume check failure + ALARM_ID_DIALYSATE_TEMPERATURE_TOO_HIGH = 135, ///< HD dialysate temperature too high alarm + ALARM_ID_DIALYSATE_TEMPERATRUE_TOO_LOW = 136, ///< HD dialysate temperature too low alarm + ALARM_ID_PRE_TREATMENT_DRY_SELF_TEST_FAILURE = 137, ///< HD pre-treatment mode dry self-tests failure + ALARM_ID_PRE_TREATMENT_WET_SELF_TEST_FAILURE = 138, ///< HD pre-treatment mode wet self-tests failure + ALARM_ID_DG_FLOW_METER_CHECK_FAILURE = 139, ///< DG flow meter check failure alarm + ALARM_ID_DG_RO_PUMP_TOO_MANY_RAMP_UP_RETRY = 140, ///< DG RO pump ramp up exceed maximum allowed number of retries + ALARM_ID_NVDATAMGMT_GROUP_RECORD_CRC_INVALID = 141, ///< DG/HD NV data management overall group record CRC invalid + ALARM_ID_NVDATAMGMT_INDIVIDUAL_RECORD_CRC_INVALID = 142, ///< DG/HD NV data management individual record CRC invalid + ALARM_ID_NVDATAMGMT_INDIVIDUAL_RECORD_TIME_INVALID = 143, ///< DG/HD NV data management individual record time invalid + ALARM_ID_HD_AC_POWER_LOST = 144, ///< HD AC power lost alarm + ALARM_ID_DG_RESTARTED_FAULT = 145, ///< HD reports DG restarted fault + ALARM_ID_DIALYSATE_CONDUCTIVITY_OUT_OF_RANGE = 146, ///< Dialysate conductivity out of range + ALARM_ID_HD_FLUID_LEAK_DETECTED = 147, ///< HD fluid leak detected alarm + ALARM_ID_DG_FLUID_LEAK_DETECTED = 148, ///< DG fluid leak detected alarm NUM_OF_ALARM_IDS ///< Total number of alarms }; typedef enum Alarm_List ALARM_ID_T; ///< Type for alarm list enumeration @@ -150,6 +199,15 @@ }; typedef enum Alarm_Priorities ALARM_PRIORITY_T; ///< Type for alarm priorities enumeration +/// Enumeration of alarm silence commands. +enum Alarm_Silence_Commands +{ + ALARM_SILENCE_CMD_CANCEL = 0, ///< Indicates not an alarm or no alarms active at this time + ALARM_SILENCE_CMD_START = 1, ///< Low priority alarm + NUM_OF_ALARM_SILENCE_CMDS ///< Total number of alarm priorities +}; +typedef enum Alarm_Silence_Commands ALARM_SILENCE_CMD_T; ///< Type for alarm priorities enumeration + /// Enumeration of alarm sources. enum Alarm_Sources { @@ -160,6 +218,233 @@ }; 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 alarmNoDialysateRecirc; ///< alarm prevents dialysate re-circulation + 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 + +#define ALARM_NO_RESUME ALARM_ID_BLOOD_SITTING_TOO_LONG_NO_RESUME +#define ALARM_NO_RINSEBACK ALARM_ID_BLOOD_SITTING_TOO_LONG_NO_RINSEBACK +#define ALARM_PRIME_DONE_MED ALARM_ID_PRIME_COMPLETED_MEDIUM_PRIORITY +#define ALARM_PRIME_DONE_HIGH ALARM_ID_PRIME_COMPLETED_HIGH_PRIORITY + +/// 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 NoRcr UsrAck + { ALARM_PRIORITY_NONE, 999, 0, ALARM_ID_NO_ALARM, FALSE, 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 , TRUE , FALSE }, // ALARM_ID_HD_SOFTWARE_FAULT + { ALARM_PRIORITY_HIGH, 1, 0, ALARM_ID_NO_ALARM, TRUE , 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 , 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 , 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 , 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 , 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 , 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 , 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 , 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 , 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 , 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 , 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 , 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 , 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 , 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 , 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 , 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 , TRUE , FALSE }, // ALARM_ID_WATCHDOG_EXPIRED + { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_RTC_COMM_ERROR + { ALARM_PRIORITY_HIGH, 1, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_RTC_CONFIG_ERROR + { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, FALSE, TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_DG_COMM_TIMEOUT + { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE , 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, 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, TRUE , FALSE }, // ALARM_ID_TREATMENT_STOPPED_BY_USER + { ALARM_PRIORITY_MEDIUM, 25, ALM_ESC_1_MIN, ALARM_NO_RINSEBACK, FALSE, TRUE , TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_BLOOD_SITTING_WARNING + { ALARM_PRIORITY_MEDIUM, 7, ALM_ESC_5_MIN, ALARM_NO_RINSEBACK, FALSE, TRUE , TRUE , FALSE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_BLOOD_SITTING_TOO_LONG_NO_RESUME TODO - maybe obsolete per PRS 388 (not really a specific alarm - refers to all alarms that stop treatment) + { ALARM_PRIORITY_HIGH, 5, 0, ALARM_ID_NO_ALARM, FALSE, TRUE , TRUE , FALSE, TRUE, TRUE, FALSE, 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, TRUE , FALSE }, // ALARM_ID_CAN_MESSAGE_NOT_ACKED + { ALARM_PRIORITY_HIGH, 37, 0, ALARM_ID_NO_ALARM, FALSE, TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_OCCLUSION_BLOOD_PUMP + { ALARM_PRIORITY_HIGH, 37, 0, ALARM_ID_NO_ALARM, FALSE, TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, TRUE , FALSE }, // ALARM_ID_OCCLUSION_DIAL_IN_PUMP + { ALARM_PRIORITY_HIGH, 37, 0, ALARM_ID_NO_ALARM, FALSE, TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, TRUE , FALSE }, // ALARM_ID_OCCLUSION_DIAL_OUT_PUMP + { ALARM_PRIORITY_HIGH, 13, 0, ALARM_ID_NO_ALARM, FALSE, TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_ARTERIAL_PRESSURE_LOW + { ALARM_PRIORITY_HIGH, 14, 0, ALARM_ID_NO_ALARM, FALSE, TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_ARTERIAL_PRESSURE_HIGH + { ALARM_PRIORITY_HIGH, 8, 0, ALARM_ID_NO_ALARM, FALSE, TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_VENOUS_PRESSURE_LOW + { ALARM_PRIORITY_HIGH, 12, 0, ALARM_ID_NO_ALARM, FALSE, TRUE , FALSE, 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, 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, TRUE , FALSE }, // ALARM_ID_UF_VOLUME_ACCURACY_ERROR + { ALARM_PRIORITY_HIGH, 999, 0, ALARM_ID_NO_ALARM, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, TRUE, FALSE, FALSE }, // ALARM_ID_RTC_BATTERY_LOW + { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE, TRUE , TRUE , TRUE, TRUE, TRUE, TRUE, TRUE, TRUE , FALSE }, // ALARM_ID_RTC_OR_TIMER_ACCURACY_FAILURE + { ALARM_PRIORITY_HIGH, 999, 0, ALARM_ID_NO_ALARM, FALSE, FALSE, TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_RTC_RAM_OPS_ERROR + { ALARM_PRIORITY_HIGH, 999, 0, ALARM_ID_NO_ALARM, FALSE, FALSE, TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_NVDATA_EEPROM_OPS_FAILURE + { ALARM_PRIORITY_HIGH, 999, 0, ALARM_ID_NO_ALARM, FALSE, FALSE, TRUE , TRUE, TRUE, FALSE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_NVDATA_MFG_RECORD_CRC_ERROR + { ALARM_PRIORITY_HIGH, 999, 0, ALARM_ID_NO_ALARM, FALSE, FALSE, TRUE , FALSE, 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, TRUE , FALSE }, // ALARM_ID_NVDATA_CAL_RECORD_CRC_ERROR + { ALARM_PRIORITY_HIGH, 999, 0, ALARM_ID_NO_ALARM, FALSE, FALSE, TRUE , FALSE, 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, 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, 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, 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, TRUE , FALSE }, // ALARM_ID_FPGA_COMM_TIMEOUT + { ALARM_PRIORITY_HIGH, 999, 0, ALARM_ID_NO_ALARM, FALSE, FALSE, TRUE , FALSE, 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, TRUE , FALSE }, // ALARM_ID_VALVE_CONTROL_FAILURE + { ALARM_PRIORITY_HIGH, 999, 0, ALARM_ID_NO_ALARM, FALSE, TRUE , TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_BLOOD_PUMP_FLOW_VS_MOTOR_SPEED_CHECK + { ALARM_PRIORITY_HIGH, 999, 0, ALARM_ID_NO_ALARM, FALSE, TRUE , TRUE , FALSE, 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 , 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 , 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 , 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 , TRUE , FALSE }, // ALARM_ID_DIAL_OUT_PUMP_MOTOR_SPEED_CHECK + { ALARM_PRIORITY_HIGH, 999, 0, ALARM_ID_NO_ALARM, FALSE, TRUE , TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_BLOOD_PUMP_ROTOR_SPEED_TOO_HIGH + { ALARM_PRIORITY_MEDIUM, 22, 0, ALARM_ID_NO_ALARM, FALSE, TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_INLET_WATER_LOW_CONDUCTIVITY + { ALARM_PRIORITY_MEDIUM, 21, 0, ALARM_ID_NO_ALARM, FALSE, TRUE , FALSE, 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 , TRUE , FALSE }, // ALARM_ID_DG_SOFTWARE_FAULT + { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE , 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, 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, FALSE }, // ALARM_ID_INLET_WATER_HIGH_TEMPERATURE + { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE , 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, FALSE }, // ALARM_ID_INLET_WATER_LOW_PRESSURE + { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE , 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 , 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 , TRUE , FALSE }, // ALARM_ID_DG_ACCELEROMETER_SELF_TEST_FAILURE + { ALARM_PRIORITY_HIGH, 16, 0, ALARM_ID_NO_ALARM, FALSE, TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_HD_EXCESSIVE_TILT + { ALARM_PRIORITY_HIGH, 16, 0, ALARM_ID_NO_ALARM, FALSE, TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_DG_EXCESSIVE_TILT + { ALARM_PRIORITY_HIGH, 15, 0, ALARM_ID_NO_ALARM, FALSE, TRUE , TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_HD_SHOCK + { ALARM_PRIORITY_HIGH, 15, 0, ALARM_ID_NO_ALARM, FALSE, TRUE , TRUE , FALSE, 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 , TRUE , FALSE }, // ALARM_ID_HD_ACCELEROMETER_FAILURE + { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE , 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 , 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 , TRUE , FALSE }, // ALARM_ID_RO_REJECTION_RATIO_OUT_OF_RANGE + { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_INLET_WATER_PRESSURE_FAULT + { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE , 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 , 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 , 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 , 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 , TRUE , FALSE }, // ALARM_ID_HD_VALVE_POSITION_OUT_OF_RANGE + { ALARM_PRIORITY_HIGH, 38, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_AIR_TRAP_ILLEGAL_LEVELS + { ALARM_PRIORITY_HIGH, 35, 0, ALARM_ID_NO_ALARM, FALSE, TRUE , TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_AIR_TRAP_FILL_DURING_PRIME + { ALARM_PRIORITY_HIGH, 35, 0, ALARM_ID_NO_ALARM, FALSE, TRUE , TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_AIR_TRAP_FILL_DURING_TREATMENT + { ALARM_PRIORITY_HIGH, 999, 0, ALARM_ID_NO_ALARM, FALSE, TRUE , TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_BLOOD_FLOW_SIGNAL_STRENGTH_TOO_LOW + { ALARM_PRIORITY_HIGH, 999, 0, ALARM_ID_NO_ALARM, FALSE, TRUE , TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_DIALYSATE_FLOW_SIGNAL_STRENGTH_TOO_LOW + { ALARM_PRIORITY_HIGH, 999, 0, ALARM_ID_NO_ALARM, FALSE, TRUE , TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_EMPTY_SALINE_BAG + { ALARM_PRIORITY_MEDIUM, 999, 0, ALARM_ID_NO_ALARM, FALSE, TRUE , TRUE , FALSE, 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 , 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 , 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 , TRUE , FALSE }, // ALARM_ID_UV_REACTOR_NOT_HEALTHY + { ALARM_PRIORITY_LOW, 30, 0, ALARM_ID_NO_ALARM, FALSE, TRUE , TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_POST_ACID_CONDUCTIVITY_OUT_OF_RANGE + { ALARM_PRIORITY_LOW, 30, 0, ALARM_ID_NO_ALARM, FALSE, TRUE , TRUE , FALSE, 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 , 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 , 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 , 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 , 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 , 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 , 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 , 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 , 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 , 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 , 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 , TRUE , FALSE }, // ALARM_ID_DG_HEATERS_FAULT + { ALARM_PRIORITY_LOW, 32, ALM_ESC_5_MIN, ALARM_ID_END_OF_TREATMENT_ALARM,FALSE, FALSE, TRUE , FALSE, TRUE , FALSE, FALSE, FALSE, TRUE , FALSE }, // ALARM_ID_END_OF_TREATMENT_WARNING + { ALARM_PRIORITY_MEDIUM, 26, ALM_ESC_5_MIN, ALARM_ID_END_OF_TREATMENT_HIGH, FALSE, FALSE, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_END_OF_TREATMENT_ALARM + { ALARM_PRIORITY_HIGH, 4, 0, ALARM_ID_NO_ALARM, FALSE, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_END_OF_TREATMENT_HIGH + { ALARM_PRIORITY_HIGH, 4, 0, ALARM_ID_NO_ALARM, TRUE , 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 , 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 , 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 , 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 , 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 , 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 , TRUE , FALSE }, // ALARM_ID_PRIME_DIALYSATE_BYPASS_TIME_OUT + { ALARM_PRIORITY_LOW, 999, ALM_ESC_90_MIN, ALARM_PRIME_DONE_MED, FALSE, FALSE, FALSE, FALSE, TRUE , TRUE , FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_PRIME_COMPLETED_LOW_PRIORITY + { ALARM_PRIORITY_MEDIUM, 999, ALM_ESC_30_MIN, ALARM_PRIME_DONE_HIGH, FALSE, FALSE, FALSE, FALSE, TRUE , TRUE , FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_PRIME_COMPLETED_MEDIUM_PRIORITY + { ALARM_PRIORITY_HIGH, 999, 0, ALARM_ID_NO_ALARM, FALSE, FALSE, TRUE, FALSE, TRUE , TRUE , FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_PRIME_COMPLETED_HIGH_PRIORITY + { ALARM_PRIORITY_LOW, 35, 0, ALARM_ID_NO_ALARM, FALSE, TRUE , TRUE , FALSE, TRUE , TRUE , TRUE , FALSE, FALSE, FALSE }, // ALARM_ID_PRIME_OUT_OF_TIME + { ALARM_PRIORITY_LOW, 3, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_DG_COMMAND_INVALID_PARAMETER_FAULT + { ALARM_PRIORITY_HIGH, 999, 0, ALARM_ID_NO_ALARM, FALSE, TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_HD_LOAD_CELL_ACCELERATION_RES_1_ALARM + { ALARM_PRIORITY_HIGH, 999, 0, ALARM_ID_NO_ALARM, FALSE, TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_HD_LOAD_CELL_ACCELERATION_RES_2_ALARM + { ALARM_PRIORITY_LOW, 999, 0, ALARM_ID_NO_ALARM, FALSE, TRUE , TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_TREATMENT_STOPPED_AFTER_RINSEBACK + { ALARM_PRIORITY_HIGH, 999, 0, ALARM_ID_NO_ALARM, FALSE, TRUE , TRUE, FALSE, TRUE , TRUE , FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_TREATMENT_RINSEBACK_TIMEOUT_ALARM + { ALARM_PRIORITY_HIGH, 999, 0, ALARM_ID_NO_ALARM, FALSE, TRUE , TRUE, FALSE, TRUE , TRUE , FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_TREATMENT_RECIRC_TIMEOUT_ALARM + { ALARM_PRIORITY_HIGH, 999, 0, ALARM_ID_NO_ALARM, FALSE, TRUE , FALSE, FALSE, TRUE , TRUE , TRUE , FALSE, FALSE, FALSE }, // ALARM_ID_CARTRIDGE_DOOR_OPENED + { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_PRE_TREATMENT_NO_CART_SELF_TEST_FAILURE + { ALARM_PRIORITY_LOW, 999, 0, ALARM_ID_NO_ALARM, FALSE, TRUE , FALSE, FALSE, TRUE , TRUE , TRUE , FALSE, FALSE, FALSE }, // ALARM_ID_INSTALL_NEW_CARTRIDGE + { ALARM_PRIORITY_LOW, 999, 0, ALARM_ID_NO_ALARM, FALSE, TRUE , FALSE, FALSE, TRUE , TRUE , TRUE , FALSE, FALSE, FALSE }, // ALARM_ID_CARTRIDGE_INSTALLED_IMPROPERLY + { ALARM_PRIORITY_MEDIUM, 999, 0, ALARM_ID_NO_ALARM, FALSE, TRUE , TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_RINSEBACK_VOLUME_CHECK_FAILURE + { ALARM_PRIORITY_LOW, 999, 0, ALARM_ID_NO_ALARM, FALSE, TRUE , FALSE, FALSE, TRUE , TRUE , TRUE , FALSE, FALSE, FALSE }, // ALARM_ID_NO_CARTRIDGE_LOADED + { ALARM_PRIORITY_MEDIUM, 999, 0, ALARM_ID_NO_ALARM, FALSE, TRUE , TRUE , FALSE, TRUE , TRUE , FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_END_TREATMENT_TIMEOUT_ALARM + { ALARM_PRIORITY_MEDIUM, 999, 0, ALARM_ID_NO_ALARM, FALSE, TRUE , TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_BLOOD_PRIME_VOLUME_CHECK_FAILURE + { ALARM_PRIORITY_HIGH, 28, 0, ALARM_ID_NO_ALARM, FALSE, TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, TRUE , FALSE }, // ALARM_ID_DIALYSATE_TEMPERATURE_TOO_HIGH + { ALARM_PRIORITY_HIGH, 29, 0, ALARM_ID_NO_ALARM, FALSE, TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_DIALYSATE_TEMPERATRUE_TOO_LOW + { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_PRE_TREATMENT_DRY_SELF_TEST_FAILURE + { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_PRE_TREATMENT_WET_SELF_TEST_FAILURE + { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_DG_FLOW_METER_CHECK_FAILURE + { ALARM_PRIORITY_HIGH, 4, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_DG_RO_PUMP_TOO_MANY_RAMP_UP_RETRY + { ALARM_PRIORITY_HIGH, 3, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_NVDATAMGMT_GROUP_RECORD_CRC_INVALID + { ALARM_PRIORITY_HIGH, 4, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_NVDATAMGMT_INDIVIDUAL_RECORD_CRC_INVALID + { ALARM_PRIORITY_HIGH, 4, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_NVDATAMGMT_INDIVIDUAL_RECORD_TIME_INVALID + { ALARM_PRIORITY_HIGH, 15, 0, ALARM_ID_NO_ALARM, FALSE, TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, TRUE }, // ALARM_ID_HD_AC_POWER_LOST + { ALARM_PRIORITY_HIGH, 4, 0, ALARM_ID_NO_ALARM, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE }, // ALARM_ID_DG_RESTARTED_FAULT + { ALARM_PRIORITY_LOW, 30, 0, ALARM_ID_NO_ALARM, FALSE, TRUE , TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_DIALYSATE_CONDUCTIVITY_OUT_OF_RANGE + { ALARM_PRIORITY_HIGH, 36, 0, ALARM_ID_NO_ALARM, FALSE, TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_HD_FLUID_LEAK_DETECTED + { ALARM_PRIORITY_HIGH, 36, 0, ALARM_ID_NO_ALARM, FALSE, TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE }, // ALARM_ID_DG_FLUID_LEAK_DETECTED + // Priority Rank Escalate In Escalate To Fault Stops ClrIm NoClr NoRes NoRin NoEnd NoNew NoRcr UsrAck +}; + +#endif // included by AlarmMgmt.c + +#endif // HD build + /**@}*/ #endif