Index: AlarmDefs.h
===================================================================
diff -u -rf82d5490b34b79f8410b1852139f7f3748b38e61 -rec3513b4b94dc88a677fd42667dcca3491a5e54d
--- AlarmDefs.h (.../AlarmDefs.h) (revision f82d5490b34b79f8410b1852139f7f3748b38e61)
+++ AlarmDefs.h (.../AlarmDefs.h) (revision ec3513b4b94dc88a677fd42667dcca3491a5e54d)
@@ -7,8 +7,8 @@
*
* @file AlarmDefs.h
*
-* @author (last) Varshini Nagabooshanam
-* @date (last) 18-Jun-2026
+* @author (last) Santhosh Reddy
+* @date (last) 07-Jul-2026
*
* @author (original) Sean Nash
* @date (original) 01-Aug-2024
@@ -229,7 +229,8 @@
ALARM_ID_DD_D92_PUMP_RPM_OUT_OF_RANGE = 197, ///< DD D92 pump rpm out of range
ALARM_ID_TD_PRIME_COMPLETED_MEDIUM = 198, ///< TD prime completed medium priority alarm
ALARM_ID_TD_REPEATED_AIR_TRAP_LOWER_EVENTS = 199, ///< TD repeated air trap lower events
- ALARM_ID_TD_PRE_TX_HEPARIN_LOAD_SYRINGE = 200, ///< TD Pre-Treatment Load Heparin Syringe
+ ALARM_ID_TD_TUBE_SET_MISMATCH = 200, ///< TD tubeset mismatch alarm
+ ALARM_ID_TD_PRE_TX_HEPARIN_LOAD_SYRINGE = 201, ///< TD Pre-Treatment Load Heparin Syringe
NUM_OF_ALARM_IDS ///< Number of alarms
};
typedef enum Alarm_List ALARM_ID_T; ///< Type for alarm list enumeration
@@ -322,6 +323,30 @@
/**@}*/
+/// Alarm properties request payload for CAN broadcast
+struct AlarmTableResponsePayload
+{
+ U08 alarmPriority; ///< Priority of alarm
+ U16 alarmSubRank; ///< Alarm's rank within it's priority
+ U08 alarmSource; ///< Alarm's sub system source
+ U08 alarmIsFault; ///< Alarm is a system fault?
+ U08 alarmIsDDFault; ///< Alarm is a fault for DD?
+ U08 alarmStops; ///< Alarm activation should cause a controlled stop
+ U08 alarmConditionClearImmed; ///< Alarm condition is cleared immediately (does not persist after alarm triggered)
+ U08 alarmNoClear; ///< Alarm cannot be cleared (unrecoverable)?
+ U08 alarmNoResume; ///< Alarm prevents treatment resume
+ U08 alarmNoRinseback; ///< Alarm prevents rinseback
+ U08 alarmNoEndTreatment; ///< Alarm prevents ending treatment
+ U08 alarmBlockRinseback; ///< Alarm should not trigger while in rinseback states
+ U08 alarmBlockEndTx; ///< Alarm should not trigger while in post-treatment mode
+ U08 alarmNoBloodRecirc; ///< Alarm prevents blood re-circulation
+ U08 alarmNoDialysateRecirc; ///< Alarm prevents dialysate re-circulation
+ U08 alarmAutoResume; ///< Alarm should resume automatically once the condition is cleared
+ U08 alarmClearOnly; ///< Clear only this alarm on user acknowledgment
+ U08 alarmTreatmentLog; ///< Log alarm to treatment log if active during treatment
+ U16 alarmID; ///< Alarm ID
+};
+typedef struct AlarmTableResponsePayload ALARM_PROP_T;
#if defined (__ALARM_MGMT_C__) || defined(__ALARM_MGMT_DD_C__) || defined(__ALARM_MGMT_TD_C__) || defined(__ALARM_MGMT_FP_C__)
@@ -355,6 +380,8 @@
};
typedef struct AlarmsStateRecord ALARM_T;
+
+
/// Record defining the ranking of each individual alarm.
struct AlarmsRankRecord
{
@@ -363,6 +390,7 @@
};
typedef struct AlarmsRankRecord ALARM_RANK_T;
+
#endif
#ifdef __ALARM_MGMT_C__
@@ -561,7 +589,6 @@
{ ALARM_PRIORITY_LOW, 745, ALM_SRC_TD, FALSE, FALSE, TRUE , FALSE, FALSE, FALSE, TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, ALARM_ID_TD_SYRINGE_DETECTED },
{ ALARM_PRIORITY_LOW, 715, ALM_SRC_TD, FALSE, FALSE, TRUE , FALSE, FALSE, FALSE, TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, ALARM_ID_TD_SYRINGE_PUMP_NOT_ENOUGH_HEPARIN_ALARM },
{ ALARM_PRIORITY_LOW, 716, ALM_SRC_TD, FALSE, FALSE, TRUE , FALSE, FALSE, FALSE, TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, ALARM_ID_TD_SYRINGE_PUMP_OCCLUSION },
- { ALARM_PRIORITY_LOW, 717, ALM_SRC_TD, FALSE, FALSE, TRUE , TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, TRUE , FALSE, ALARM_ID_TD_PRE_TX_HEPARIN_LOAD_SYRINGE },
{ ALARM_PRIORITY_HIGH, 10, ALM_SRC_TD, TRUE , FALSE, TRUE , TRUE , TRUE , TRUE , TRUE , TRUE , FALSE, FALSE, TRUE , TRUE , FALSE, FALSE, FALSE, ALARM_ID_TD_SYRINGE_PUMP_PRIME_TIMEOUT },
{ ALARM_PRIORITY_HIGH, 110, ALM_SRC_FP, FALSE, TRUE , TRUE , TRUE , FALSE, TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, TRUE , FALSE, FALSE, FALSE, ALARM_ID_FP_P9_COND_SENSOR_FPGA_FAULT },
{ ALARM_PRIORITY_HIGH, 110, ALM_SRC_FP, FALSE, TRUE , TRUE , TRUE , FALSE, TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, TRUE , FALSE, FALSE, FALSE, ALARM_ID_FP_P18_COND_SENSOR_FPGA_FAULT },
@@ -578,6 +605,8 @@
{ ALARM_PRIORITY_HIGH, 110, ALM_SRC_DD, FALSE, TRUE , TRUE , TRUE , FALSE, TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, TRUE , FALSE, FALSE, FALSE, ALARM_ID_DD_D92_PUMP_RPM_OUT_OF_RANGE },
{ ALARM_PRIORITY_MEDIUM, 590, ALM_SRC_TD, FALSE, FALSE, FALSE, TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, TRUE , FALSE, ALARM_ID_TD_PRIME_COMPLETED_MEDIUM },
{ ALARM_PRIORITY_HIGH, 17, ALM_SRC_TD, FALSE, FALSE, TRUE , TRUE , FALSE, TRUE , TRUE , FALSE, FALSE, FALSE, TRUE , TRUE , FALSE, FALSE, TRUE , ALARM_ID_TD_REPEATED_AIR_TRAP_LOWER_EVENTS },
+ { ALARM_PRIORITY_MEDIUM, 300, ALM_SRC_TD, FALSE, FALSE, FALSE, FALSE, FALSE, TRUE , TRUE , TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, ALARM_ID_TD_TUBE_SET_MISMATCH },
+ { ALARM_PRIORITY_LOW, 717, ALM_SRC_TD, FALSE, FALSE, TRUE , TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, FALSE, TRUE , FALSE, ALARM_ID_TD_PRE_TX_HEPARIN_LOAD_SYRINGE },
}; // Priority Rank Source Fault DDFault Stops ClrIm NoClr NoRes NoRin NoEnd BlkRB BlkET NoBRcr NoDRcr AutoRes ClrOnly TxLog ID
/// Table of alarms and their rank.
@@ -744,6 +773,7 @@
{ 291, ALARM_ID_TD_BLOOD_PRIME_PAUSE_TIMEOUT },
{ 292, ALARM_ID_TD_BLOOD_PRIME_PAUSE_WARNING },
{ 300, ALARM_ID_TD_TREATMENT_STOPPED_BY_USER },
+ { 300, ALARM_ID_TD_TUBE_SET_MISMATCH },
{ 401, ALARM_ID_DD_DIALYSATE_TEMP_ABOVE_SAFETY_TEMP },
{ 401, ALARM_ID_DD_DIALYSATE_TEMP_ABOVE_TARGET_TEMP },
{ 402, ALARM_ID_DD_DIALYSATE_TEMP_BELOW_TARGET_TEMP },
@@ -1013,7 +1043,8 @@
{ 197 , ALARM_ID_DD_D92_PUMP_RPM_OUT_OF_RANGE , "DD | Service Required: Dialysate Device | A problem was detected with the dialysate device. \n- Treatment must be terminated.\n- Locate the ID code found in the bottom left corner\nof the alarm screen.\n- Call service to report the issue and schedule a repair. | DD Fault: Subtitution Pump Fault | DD substitution pump RPM out of range | If the substitution pump RPM > 20.0 of the target RPM. | "},
{ 198 , ALARM_ID_TD_PRIME_COMPLETED_MEDIUM , "TD | Prime Complete - 30 MIN WARNING | The priming process completed 90 minutes ago. \n- Treatment must begin within 30 minutes or the\npre-treatment process will be terminated.\n- Press Resume/OK to continue. | Process: Pre-Tx Prime Complete | TD prime completed medium priority alarm | In Pre-Treatment Recirculation for 90 minutes | "},
{ 199 , ALARM_ID_TD_REPEATED_AIR_TRAP_LOWER_EVENTS , "TD | Blood Pump Stopped: Venous Air Detector | The air trap level required repeated lowering events. \n- Confirm blood tubing connections are secure.\n- Inspect the air trap for abnormal fluid levels. \n- Resume treatment if the condition has been corrected. | Blood Stop: Repeated Air Trap Lower | Repeated air trap lower events detected during treatment | If 5 air trap lower events occur within 5 minutes during treatment. | "},
- { 200 , ALARM_ID_TD_PRE_TX_HEPARIN_LOAD_SYRINGE , "UI TD | Load Syringe | Fill syringe with 4mL of heparin.\n- Connect heparin filled syringe to infusion port.\n- Insert syringe into the syringe pump.\n- Lock heparin syringe in place.\n- Unclamp heparin pinch clamp. | Process: Pre-Tx Load Syringe | User must load the heparin syringe before continuing heparin setup. | While in Pre-Treatment: Heparin Setup: Await Syringe Load Confirmation state. | "},
+ { 200 , ALARM_ID_TD_TUBE_SET_MISMATCH , "TD | Wrong Tube Set Installed | The installed tube set does not match the selected treatment type. \n- Remove the current tube set.\n- Install the correct tube set for the selected treatment:\n HD or HD with Online Fluid requires an HD tube set.\n HDF requires an HDF tube set. | TD Tube Set Mismatch | TD installed tube set type does not match the selected treatment modality | If the scanned tube set type does not match the tube set type required for the selected treatment modality. | "},
+ { 201 , ALARM_ID_TD_PRE_TX_HEPARIN_LOAD_SYRINGE , "UI TD | Load Syringe | Fill syringe with 4mL of heparin.\n- Connect heparin filled syringe to infusion port.\n- Insert syringe into the syringe pump.\n- Lock heparin syringe in place.\n- Unclamp heparin pinch clamp. | Process: Pre-Tx Load Syringe | User must load the heparin syringe before continuing heparin setup. | While in Pre-Treatment: Heparin Setup: Await Syringe Load Confirmation state. | "},
};
#endif // manual alarms