Index: AlarmDefs.h =================================================================== diff -u -raa380693ce968185757b7741ccb85b070a044a7e -r7bdebb83418eb57b2ce574eadeecb8677b7afc0a --- AlarmDefs.h (.../AlarmDefs.h) (revision aa380693ce968185757b7741ccb85b070a044a7e) +++ AlarmDefs.h (.../AlarmDefs.h) (revision 7bdebb83418eb57b2ce574eadeecb8677b7afc0a) @@ -68,6 +68,7 @@ ALARM_ID_DD_CD2_SENSOR_FPGA_FAULT = 37, ///< DD CD2 conductivity sensor freshness/error timeout fault ALARM_ID_DD_CD3_SENSOR_FPGA_FAULT = 38, ///< DD CD3 conductivity sensor freshness/error timeout fault ALARM_ID_DD_CD4_SENSOR_FPGA_FAULT = 39, ///< DD CD4 conductivity sensor freshness/error timeout fault + ALARM_ID_TD_VENOUS_BUBBLE_DETECTED = 40, ///< TD venous bubble detected NUM_OF_ALARM_IDS ///< Total number of alarms }; typedef enum Alarm_List ALARM_ID_T; ///< Type for alarm list enumeration @@ -241,6 +242,7 @@ { ALARM_PRIORITY_HIGH, 110, FALSE, TRUE , TRUE , TRUE , FALSE, TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, TRUE , FALSE, FALSE, ALARM_ID_DD_CD2_SENSOR_FPGA_FAULT }, { ALARM_PRIORITY_HIGH, 110, FALSE, TRUE , TRUE , TRUE , FALSE, TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, TRUE , FALSE, FALSE, ALARM_ID_DD_CD3_SENSOR_FPGA_FAULT }, { ALARM_PRIORITY_HIGH, 110, FALSE, TRUE , TRUE , TRUE , FALSE, TRUE , FALSE, FALSE, FALSE, FALSE, FALSE, TRUE , FALSE, FALSE, ALARM_ID_DD_CD4_SENSOR_FPGA_FAULT }, + { ALARM_PRIORITY_HIGH, 12, FALSE, FALSE, TRUE , TRUE , FALSE, TRUE , TRUE , FALSE, FALSE, TRUE , TRUE , TRUE , FALSE, TRUE , ALARM_ID_TD_VENOUS_BUBBLE_DETECTED, }, }; // Priority Rank Fault DDFault Stops ClrIm NoClr NoRes NoRin NoEnd BlkRB BlkET NoBRcr NoDRcr ClrOnly TxLog ID /// Table of alarms and their rank. @@ -262,6 +264,7 @@ { 10, ALARM_ID_TD_ARTERIAL_SENSOR_TIMEOUT_FAULT }, { 10, ALARM_ID_TD_VENOUS_SENSOR_TIMEOUT_FAULT }, { 10, ALARM_ID_TD_VOLTAGE_OUT_OF_RANGE }, + { 12, ALARM_ID_TD_VENOUS_BUBBLE_DETECTED }, { 100, ALARM_ID_TD_AC_POWER_LOST_IN_TREATMENT }, { 110, ALARM_ID_DD_CRITICAL_DATA_ERROR }, { 110, ALARM_ID_DD_WATCHDOG_EXPIRED }, @@ -349,6 +352,7 @@ { 37 , ALARM_ID_DD_CD2_SENSOR_FPGA_FAULT , "DD | Service Required: Hemodialysis Device | A problem was detected with the hemodialysis device.\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 Conductivity Sensor (CD2) Error | DD conductivity sensor located after balancing chamber reporting error or not being read successfully | Conductvity Sensor (CD2) is reporting an error or FPGA is failing to read sensor. | "}, { 38 , ALARM_ID_DD_CD3_SENSOR_FPGA_FAULT , "DD | Service Required: Hemodialysis Device | A problem was detected with the hemodialysis device.\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 Conductivity Sensor (CD3) Error | DD conductivity sensor located after balancing chamber reporting error or not being read successfully | Conductvity Sensor (CD3) is reporting an error or FPGA is failing to read sensor. | "}, { 39 , ALARM_ID_DD_CD4_SENSOR_FPGA_FAULT , "DD | Service Required: Hemodialysis Device | A problem was detected with the hemodialysis device.\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 Conductivity Sensor (CD4) Error | DD conductivity sensor located in spent dialysate path reporting error or not being read successfully | Conductvity Sensor (CD4) is reporting an error or FPGA is failing to read sensor. | "}, + { 40 , ALARM_ID_TD_VENOUS_BUBBLE_DETECTED , "TD | Venous Air Detected | Air detected in the venous air trap.\n- Confirm arterial access placement and confirm\nconnections are secure.\n- Treatment must be terminated without rinseback. | Blood Stop: Venous Air Bubble | HD venous air bubble detected alarm | If bubbles are detected during the treatment. | "}, }; #endif // manual alarms Index: MsgDefs.h =================================================================== diff -u -rf3d5fcf6e351c0c63250fb1e2c142ee0fd37858c -r7bdebb83418eb57b2ce574eadeecb8677b7afc0a --- MsgDefs.h (.../MsgDefs.h) (revision f3d5fcf6e351c0c63250fb1e2c142ee0fd37858c) +++ MsgDefs.h (.../MsgDefs.h) (revision 7bdebb83418eb57b2ce574eadeecb8677b7afc0a) @@ -58,14 +58,20 @@ MSG_ID_UI_TD_RESET_IN_SERVICE_MODE_REQUEST = 0x20, ///< UI TD reset in service mode request MSG_ID_DD_VALVES_STATES_DATA = 0x21, ///< DD broadcast valve states MSG_ID_DD_PRESSURES_DATA = 0x22, ///< DD pressure sensor readings + MSG_ID_TD_VOLTAGES_DATA = 0x23, ///< TD broadcast voltages data + MSG_ID_TD_BUBBLES_DATA = 0x24, ///< TD broadcast bubbles data MSG_ID_DD_CONDUCTIVITY_DATA = 0x25, ///< DD conductivity sensor readings // service/test CAN messages MSG_ID_FIRST_TD_TESTER_MESSAGE = 0x8000, ///< First TD test message ID MSG_ID_TESTER_LOGIN_REQUEST = MSG_ID_FIRST_TD_TESTER_MESSAGE, ///< TD tester log-in MSG_ID_TD_SOFTWARE_RESET_REQUEST = 0x8001, ///< TD reset request MSG_ID_TD_SEND_TEST_CONFIGURATION = 0x8002, ///< TD send test configuration to Dialin - MSG_ID_TD_VENOUS_BUBBLE_OVERRIDE_REQUEST = 0x8003, ///< TD override request for the venous bubble detector + MSG_ID_TD_BUBBLE_OVERRIDE_REQUEST = 0x8003, ///< TD override request for a given bubble detector + MSG_ID_TD_VOLTAGE_PUBLISH_INTERVAL_OVERRIDE_REQUEST = 0x8004, ///< TD override request for the TD voltage data broadcast interval + MSG_ID_TD_VOLTAGE_OVERRIDE_REQUEST = 0x8005, ///< TD override request for a given TD voltage + MSG_ID_TD_BUBBLE_PUBLISH_INTERVAL_OVERRIDE_REQUEST = 0x8006, ///< TD override request for the TD bubble data broadcast interval + MSG_ID_TD_PRESSURE_OVERRIDE_REQUEST = 0x8007, ///< TD override request for a given TD pressure MSG_ID_FIRST_DD_TESTER_MESSAGE = 0xA000, ///< First DD test message ID MSG_ID_DD_TESTER_LOGIN_REQUEST = MSG_ID_FIRST_DD_TESTER_MESSAGE, ///< DD tester log-in @@ -102,48 +108,36 @@ REQUEST_REJECT_REASON_UF_NOT_PAUSED = 15, ///< Ultrafiltration is not currently paused REQUEST_REJECT_REASON_SALINE_BOLUS_IN_PROGRESS = 16, ///< A saline bolus is in progress REQUEST_REJECT_REASON_PARAM_OUT_OF_RANGE = 17, ///< A treatment parameter is out of range - REQUEST_REJECT_REASON_HEPARIN_PRESTOP_EXCEEDS_DURATION = 18, ///< The Heparin pre-stop setting is greater than the treatment duration - REQUEST_REJECT_REASON_DG_FILTER_FLUSH_HAS_BEEN_EXPIRED = 19, ///< DG filter flush time has been expired - REQUEST_REJECT_REASON_AVAILABLE_2 = 20, ///< Not used - REQUEST_REJECT_REASON_SALINE_MAX_VOLUME_REACHED = 21, ///< Saline bolus volume maximum has been reached - no more saline allowed - REQUEST_REJECT_REASON_SALINE_BOLUS_NOT_IN_PROGRESS = 22, ///< A saline bolus is not in progress - REQUEST_REJECT_REASON_ACTION_DISABLED_IN_CURRENT_STATE = 23, ///< Requested user action is disabled in current state - REQUEST_REJECT_REASON_ALARM_IS_ACTIVE = 24, ///< Requested user action not allowed while alarm is active - REQUEST_REJECT_REASON_INVALID_COMMAND = 25, ///< Requested user action invalid - REQUEST_REJECT_REASON_TREATMENT_IS_COMPLETED = 26, ///< The treatment has been completed - REQUEST_REJECT_REASON_ADDL_RINSEBACK_MAX_VOLUME_REACHED = 27, ///< Rinseback additional volume maximum has been reached - no more additional rinsebacks allowed - REQUEST_REJECT_REASON_DIALYZER_NOT_INVERTED = 28, ///< Dialyzer not inverted yet - REQUEST_REJECT_REASON_NO_PATIENT_CONNECTION_CONFIRM = 29, ///< The user has not confirmed patient connection - REQUEST_REJECT_REASON_HEPARIN_PAUSE_INVALID_IN_THIS_STATE = 30, ///< Heparin cannot be paused if not currently deliverying Heparin - REQUEST_REJECT_REASON_HEPARIN_NOT_PAUSED = 31, ///< Heparin cannot be resumed if not paused - REQUEST_REJECT_REASON_DG_COMM_LOST = 32, ///< Treatment cannot initiate if DG comm is lost - REQUEST_REJECT_REASON_DRAIN_NOT_COMPLETE = 33, ///< Post-treatment reservoirs drain not complete - REQUEST_REJECT_REASON_DG_NOT_IN_STANDBY_IDLE_STATE = 34, ///< Treatment cannot initiate if DG is not in standby idle state - REQUEST_REJECT_REASON_INVALID_REQUEST_FORMAT = 35, ///< Request message not formatted properly - REQUEST_REJECT_REASON_INVALID_DATE_OR_TIME = 36, ///< Given date/time is invalid - REQUEST_REJECT_REASON_TREATMENT_IN_PROGRESS = 37, ///< Treatment is in progress - REQUEST_REJECT_REASON_BATTERY_IS_NOT_CHARGED = 38, ///< Battery does not have enough charge to start treatment - REQUEST_REJECT_REASON_RINSEBACK_NOT_COMPLETED = 39, ///< Cannot move on to recirculate without completing full rinseback. - REQUEST_REJECT_REASON_RESERVOIR_ONE_IS_NOT_READY = 40, ///< Reservoir one fill is not complete - REQUEST_REJECT_REASON_PUMP_TRACK_NOT_CLOSED = 41, ///< Pump track is not ready / closed - REQUEST_REJECT_REASON_DOOR_NOT_CLOSED = 42, ///< Door is not closed - REQUEST_REJECT_REASON_SYRINGE_NOT_PRESENT = 43, ///< Syringe is not present - REQUEST_REJECT_REASON_DG_DIALYSATE_CAP_OPEN = 44, ///< Dialysate cap open - REQUEST_REJECT_REASON_DG_CONCENTRATE_CAP_OPEN = 45, ///< Concentrate cap open - REQUEST_REJECT_REASON_DG_DISINFECT_HAS_BEEN_EXPIRED = 46, ///< DG disinfect has been expired - REQUEST_REJECT_REASON_DG_SERVICE_IS_DUE = 47, ///< DG service is due - REQUEST_REJECT_REASON_HD_SERVICE_IS_DUE = 48, ///< HD service is due - REQUEST_REJECT_REASON_DG_CHEM_FLUSH_NOT_COMPLETED = 49, ///< DG chemical flush is not complete - REQUEST_REJECT_REASON_DG_RO_FILTER_TEMPERATURE_OUT_OF_RANGE = 50, ///< DG RO filter temperature out of range - REQUEST_REJECT_REASON_DG_INCOMPATIBLE = 51, ///< DG firmware version is not compatible with HD firmware - REQUEST_REJECT_REASON_HEPARIN_PRESTOP_WITH_NO_DISPENSE = 52, ///< Heparin settings are zero but pre-stop setting is non-zero - REQUEST_REJECT_REASON_DIALYZER_REPRIME_IN_PROGRESS = 53, ///< Saline bolus is not allowed during dialyzer reprime - REQUEST_REJECT_REASON_DG_RO_ONLY_MODE_DG_BUSY = 54, ///< DG RO only mode DG is busy - REQUEST_REJECT_REASON_DG_RO_ONLY_MODE_INVALID_PARAMETER = 55, ///< DG RO only mode invalid parameter - REQUEST_REJECT_REASON_DG_RO_ONLY_MODE_INVALID_PAYLOAD_LENGTH = 56, ///< DG RO only mode invalid payload length - REQUEST_REJECT_REASON_TREATMENT_CANNOT_BE_RESUMED = 57, ///< Cannot resume treatment per alarm - REQUEST_REJECT_REASON_EXCEEDS_MAXIMUM_HEPARIN_VOLUME = 58, ///< Cannot continue due to maximum heparin volume - REQUEST_REJECT_REASON_CHEM_DISINFECT_NOT_ENABLED_INST_CONFIG = 59, ///< Cannot start chemical disinfect because it is not enabled in institutional record. + REQUEST_REJECT_REASON_FILTER_FLUSH_HAS_BEEN_EXPIRED = 18, ///< Filter flush time has been expired + REQUEST_REJECT_REASON_SALINE_MAX_VOLUME_REACHED = 19, ///< Saline bolus volume maximum has been reached - no more saline allowed + REQUEST_REJECT_REASON_SALINE_BOLUS_NOT_IN_PROGRESS = 20, ///< A saline bolus is not in progress + REQUEST_REJECT_REASON_ACTION_DISABLED_IN_CURRENT_STATE = 21, ///< Requested user action is disabled in current state + REQUEST_REJECT_REASON_ALARM_IS_ACTIVE = 22, ///< Requested user action not allowed while alarm is active + REQUEST_REJECT_REASON_INVALID_COMMAND = 23, ///< Requested user action invalid + REQUEST_REJECT_REASON_TREATMENT_IS_COMPLETED = 24, ///< The treatment has been completed + REQUEST_REJECT_REASON_ADDL_RINSEBACK_MAX_VOLUME_REACHED = 25, ///< Rinseback additional volume maximum has been reached - no more additional rinsebacks allowed + REQUEST_REJECT_REASON_DIALYZER_NOT_INVERTED = 26, ///< Dialyzer not inverted yet + REQUEST_REJECT_REASON_NO_PATIENT_CONNECTION_CONFIRM = 27, ///< The user has not confirmed patient connection + REQUEST_REJECT_REASON_DD_COMM_LOST = 28, ///< Treatment cannot initiate if DD comm is lost + REQUEST_REJECT_REASON_DD_NOT_IN_STANDBY_IDLE_STATE = 29, ///< Treatment cannot initiate if DD is not in standby idle state + REQUEST_REJECT_REASON_INVALID_REQUEST_FORMAT = 30, ///< Request message not formatted properly + REQUEST_REJECT_REASON_INVALID_DATE_OR_TIME = 31, ///< Given date/time is invalid + REQUEST_REJECT_REASON_TREATMENT_IN_PROGRESS = 32, ///< Treatment is in progress + REQUEST_REJECT_REASON_BATTERY_IS_NOT_CHARGED = 33, ///< Battery does not have enough charge to start treatment + REQUEST_REJECT_REASON_RINSEBACK_NOT_COMPLETED = 34, ///< Cannot move on to recirculate without completing full rinseback. + REQUEST_REJECT_REASON_DOOR_NOT_CLOSED = 35, ///< Door is not closed + REQUEST_REJECT_REASON_DD_DIALYSATE_CAP_OPEN = 36, ///< Dialysate cap open + REQUEST_REJECT_REASON_DD_CONCENTRATE_CAP_OPEN = 37, ///< Concentrate cap open + REQUEST_REJECT_REASON_DISINFECT_HAS_BEEN_EXPIRED = 38, ///< Disinfect has been expired + REQUEST_REJECT_REASON_DD_SERVICE_IS_DUE = 39, ///< DD service is due + REQUEST_REJECT_REASON_TD_SERVICE_IS_DUE = 40, ///< TD service is due + REQUEST_REJECT_REASON_RO_FILTER_TEMPERATURE_OUT_OF_RANGE = 41, ///< RO filter temperature out of range + REQUEST_REJECT_REASON_DD_INCOMPATIBLE = 42, ///< DD firmware version is not compatible with TD firmware + REQUEST_REJECT_REASON_DIALYZER_REPRIME_IN_PROGRESS = 43, ///< Saline bolus is not allowed during dialyzer reprime + REQUEST_REJECT_REASON_RO_ONLY_MODE_DD_BUSY = 44, ///< RO only mode DD is busy + REQUEST_REJECT_REASON_RO_ONLY_MODE_INVALID_PARAMETER = 45, ///< RO only mode invalid parameter + REQUEST_REJECT_REASON_RO_ONLY_MODE_INVALID_PAYLOAD_LENGTH = 46, ///< RO only mode invalid payload length + REQUEST_REJECT_REASON_TREATMENT_CANNOT_BE_RESUMED = 47, ///< Cannot resume treatment per alarm NUM_OF_REQUEST_REJECT_REASONS ///< Number of settings change reject codes }; typedef enum Request_Reject_Reasons REQUEST_REJECT_REASON_CODE_T; ///< Type for settings change rejection reason codes enumeration