/************************************************************************** * * Copyright (c) 2024-2024 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 MsgDefs.h * * @author (last) Sean * @date (last) 16-Sep-2024 * * @author (original) Sean * @date (original) 30-Jul-2024 * ***************************************************************************/ #ifndef __MESSAGE_DEFINITIONS_H__ #define __MESSAGE_DEFINITIONS_H__ // ********** public definitions ********** /** * @addtogroup Messaging * @{ */ /// Enumeration of system message IDs enum Msg_IDs { // normal CAN messages MSG_ID_UNUSED = 0x0, ///< Zero is an undefined (un-used) message ID) MSG_ID_ALARM_STATUS_DATA = 0x1, ///< HD broadcast of system alarm state information MSG_ID_ALARM_TRIGGERED = 0x2, ///< Alarm triggered event MSG_ID_ALARM_CLEARED = 0x3, ///< Alarm cleared event MSG_ID_ALARM_CONDITION_CLEARED = 0x4, ///< Alarm condition cleared event MSG_ID_USER_ALARM_SILENCE_REQUEST = 0x5, ///< UI request alarm silence (or cancel) MSG_ID_UI_ALARM_USER_ACTION_REQUEST = 0x6, ///< UI user has requested an alarm action MSG_ID_TD_ALARM_INFORMATION_DATA = 0x7, ///< TD alarm information broadcast message MSG_ID_DD_ALARM_INFO_DATA = 0x8, ///< DD alarm information data publish MSG_ID_UI_ACTIVE_ALARMS_LIST_REQUEST = 0x9, ///< UI active alarms list request MSG_ID_TD_ACTIVE_ALARMS_LIST_REQUEST_RESPONSE = 0xA, ///< TD active alarms list request response MSG_ID_UI_SET_ALARM_AUDIO_VOLUME_LEVEL_CMD_REQUEST = 0xB, ///< UI command to set alarm audio volume level MSG_ID_TD_ALARM_AUDIO_VOLUME_SET_RESPONSE = 0xC, ///< TD response to UI set alarm audio volume request MSG_ID_FW_VERSIONS_REQUEST = 0xD, ///< UI request for f/w versions MSG_ID_TD_VERSION_REPONSE = 0xE, ///< TD f/w version response MSG_ID_DD_VERSION_REPONSE = 0xF, ///< DD f/w version response MSG_ID_UI_CHECK_IN = 0x10, ///< UI check-in with TD MSG_ID_TD_BLOOD_PUMP_DATA = 0x11, ///< TD broadcast blood pump data MSG_ID_TD_OP_MODE_DATA = 0x12, ///< TD broadcast current operating mode MSG_ID_DD_OP_MODE_DATA = 0x13, ///< DD broadcast current operating mode MSG_ID_DD_COMMAND_RESPONSE = 0x14, ///< DD response to command from TD MSG_ID_TD_UI_VERSION_INFO_REQUEST = 0x15, ///< TD request for UI version information MSG_ID_UI_VERSION_INFO_RESPONSE = 0x16, ///< UI response to TD request for version information MSG_ID_TD_EVENT = 0x17, ///< TD general event MSG_ID_DD_EVENT = 0x18, ///< DD general event MSG_ID_TD_DD_ALARMS_REQUEST = 0x19, ///< TD request for DD to re-send trigger messages for each active alarm MSG_ID_UI_TD_RESET_IN_SERVICE_MODE_REQUEST = 0x1A, ///< UI TD reset in service mode request MSG_ID_DD_VALVES_STATES_DATA = 0x1B, ///< DD broadcast valve states MSG_ID_DD_PRESSURES_DATA = 0x1C, ///< DD pressure sensor readings MSG_ID_TD_VOLTAGES_DATA = 0x1D, ///< TD broadcast voltages data MSG_ID_TD_BUBBLES_DATA = 0x1E, ///< TD broadcast bubbles data MSG_ID_DD_CONDUCTIVITY_DATA = 0x1F, ///< DD conductivity sensor readings MSG_ID_TD_AIR_PUMP_DATA = 0x20, ///< TD broadcast air pump data MSG_ID_TD_SWITCHES_DATA = 0x21, ///< TD broadcast switches data MSG_ID_POWER_OFF_WARNING = 0x22, ///< TD broadcast for a power off warning MSG_ID_OFF_BUTTON_PRESS_REQUEST = 0x23, ///< TD off button request message to UI for user confirmation MSG_ID_TD_PRESSURE_DATA = 0x24, ///< TD broadcast pressure data MSG_ID_DD_CONCENTRATE_PUMP_DATA = 0x25, ///< DD concentrate pump data MSG_ID_DD_TEMPERATURE_DATA = 0x26, ///< DD temperature data MSG_ID_DIALYSATE_PUMPS_DATA = 0x27, ///< DD dialysate pumps data MSG_ID_DD_HEATERS_DATA = 0x28, ///< DD heaters data MSG_ID_DD_LEVEL_DATA = 0x29, ///< DD level data MSG_ID_TD_AIR_TRAP_DATA = 0x2A, ///< TD broadcast air trap data MSG_ID_TD_VALVES_DATA = 0x2B, ///< TD broadcast valves data MSG_ID_RO_EVENT = 0x2C, ///< RO general event MSG_ID_RO_ALARM_INFO_DATA= 0x2D, ///< RO alarm info data MSG_ID_DD_BAL_CHAMBER_DATA = 0x2E, ///< DD balancing chamber data MSG_ID_DD_GEN_DIALYSATE_MODE_DATA = 0x2F, ///< DD Generate dialysate mode data MSG_ID_DD_GEN_DIALYSATE_REQUEST_DATA = 0x30, ///< DD Generate dialysate request data coming from TD with additional parameters MSG_ID_RO_VALVES_STATES_DATA = 0x31, ///< RO valves data MSG_ID_RO_PUMP_DATA = 0x32, ///< RO pumps data MSG_ID_RO_OP_MODE_DATA = 0x33, ///< RO broadcast operation mode data MSG_ID_RO_PRESSURES_DATA = 0x34, ///< RO broadcast pressures data MSG_ID_RO_LEVEL_DATA = 0x35, ///< RO broadcast level data MSG_ID_RO_FLOW_DATA = 0x36, ///< RO broadcast flow data MSG_ID_RO_CONDUCTIVITY_DATA = 0x37, ///< RO broadcast conductivity data MSG_ID_DD_RO_START_STOP_CMD_REQUEST = 0x38, ///< DD requests RO to start/stop delivering the purified water. MSG_ID_RO_TEMPERATURE_DATA = 0x39, ///< RO temperatures data broadcast MSG_ID_RO_HEATER_DATA = 0x3A, ///< RO heater data broadcast MSG_ID_RO_GEN_PERMEATE_MODE_DATA = 0x3B, ///< RO Gen Permeate data broadcast MSG_ID_DD_PRE_GEN_DIALYSATE_STATE_DATA = 0x3C, ///< DD Pre-gen dialysate mode data MSG_ID_DD_POST_GEN_DIALYSATE_STATE_DATA = 0x3D, ///< DD Post-gen dialysate mode data #ifdef __PUMPTEST__ MSG_ID_DD_PISTON_PUMP_CONTROL_DATA = 0xF0, ///< DD piston pump data #endif // 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_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 voltage data broadcast interval MSG_ID_TD_VOLTAGE_OVERRIDE_REQUEST = 0x8005, ///< TD override request for a given voltage MSG_ID_TD_BUBBLE_PUBLISH_INTERVAL_OVERRIDE_REQUEST = 0x8006, ///< TD override request for the bubble data broadcast interval MSG_ID_TD_PRESSURE_OVERRIDE_REQUEST = 0x8007, ///< TD override request for a given pressure MSG_ID_TD_AIR_PUMP_SET_STATE_REQUEST = 0x8008, ///< TD set air pump state request MSG_ID_TD_AIR_PUMP_PUBLISH_INTERVAL_OVERRIDE_REQUEST = 0x8009, ///< TD override request for the air pump data broadcast interval MSG_ID_TD_SWITCHES_PUBLISH_INTERVAL_OVERRIDE_REQUEST = 0x800A, ///< TD override request for the switches data broadcast interval MSG_ID_TD_SWITCH_STATE_OVERRIDE_REQUEST = 0x800B, ///< TD override request for a given switch MSG_ID_TD_OFF_BUTTON_OVERRIDE_REQUEST = 0x800C, ///< TD override request for the off button MSG_ID_TD_STOP_BUTTON_OVERRIDE_REQUEST = 0x800D, ///< TD override request for the stop button MSG_ID_TD_ALARM_LAMP_PATTERN_OVERRIDE_REQUEST = 0x800E, ///< TD override request for the alarm lamp pattern MSG_ID_TD_ALARM_AUDIO_LEVEL_OVERRIDE_REQUEST = 0x800F, ///< TD override request for the alarm audio level MSG_ID_TD_ALARM_AUDIO_CURRENT_HG_OVERRIDE_REQUEST = 0x8010, ///< TD override request for the alarm audio HG current MSG_ID_TD_ALARM_AUDIO_CURRENT_LG_OVERRIDE_REQUEST = 0x8011, ///< TD override request for the alarm audio LG current MSG_ID_TD_BACKUP_ALARM_AUDIO_CURRENT_OVERRIDE_REQUEST = 0x8012, ///< TD override request for the backup alarm audio current MSG_ID_TD_PRESSURE_PUBLISH_INTERVAL_OVERRIDE_REQUEST = 0x8013, ///< TD override request for the pressures data broadcast interval MSG_ID_TD_AIR_TRAP_LEVEL_OVERRIDE_REQUEST = 0x8014, ///< TD override request for debounced reading of a given air trap level sensor MSG_ID_TD_AIR_TRAP_LEVEL_RAW_OVERRIDE_REQUEST = 0x8015, ///< TD override request for raw reading of a given air trap level sensor MSG_ID_TD_AIR_TRAP_PUBLISH_INTERVAL_OVERRIDE_REQUEST = 0x8016, ///< TD override request for the air trap data broadcast interval MSG_ID_TD_3_WAY_VALVE_SET_STATE_REQUEST = 0x8017, ///< TD set 3-way valve state request MSG_ID_TD_ROTARY_PINCH_VALVE_SET_POS_REQUEST = 0x8018, ///< TD set rotary pinch valve commanded position request MSG_ID_TD_ROTARY_PINCH_VALVE_STATUS_OVERRIDE_REQUEST = 0x8019, ///< TD override request for rotary pinch valve MSG_ID_TD_ROTARY_PINCH_VALVE_POSITION_OVERRIDE_REQUEST = 0x801A, ///< TD override request for rotary pinch valve actual encoder position MSG_ID_TD_VALVES_PUBLISH_INTERVAL_OVERRIDE_REQUEST = 0x801B, ///< TD override request for pinch valves data broadcast interval MSG_ID_TD_ALARM_STATUS_PUBLISH_INTERVAL_OVERRIDE_REQUEST = 0x801C, ///< TD override request for alarm status broadcast interval MSG_ID_TD_ALARM_INFO_PUBLISH_INTERVAL_OVERRIDE_REQUEST = 0x801D, ///< TD override request for alarm information broadcast interval MSG_ID_TD_ALARM_START_TIME_OVERRIDE_REQUEST = 0x801E, ///< TD override request for alarm start time MSG_ID_TD_ALARM_CLEAR_ALL_ALARMS_REQUEST = 0x801F, ///< TD clear all alarms request MSG_ID_TD_WATCHDOG_OVERRIDE_REQUEST = 0x8020, ///< TD override request for watchdog task check-in MSG_ID_TD_ALARM_STATE_OVERRIDE_REQUEST = 0x8021, ///< TD override request for alarm state MSG_ID_TD_SAFETY_SHUTDOWN_OVERRIDE_REQUEST = 0x8022, ///< TD override request for safety shutdown MSG_ID_TD_PINCH_VALVE_SET_POSITION_REQUEST = 0x8023, ///< TD set pinch valve A/B/C position MSG_ID_TD_PINCH_VALVE_HOME_REQUEST = 0x8024, ///< TD initiate a pinch valve home operation MSG_ID_TD_BLOOD_PUMP_PUBLISH_INTERVAL_OVERRIDE_REQUEST = 0x8025, ///< TD override request for blood pump data broadcast interval MSG_ID_TD_BLOOD_PUMP_SET_FLOW_RATE_REQUEST = 0x8026, ///< TD set blood pump set flow rate request MSG_ID_TD_BLOOD_PUMP_SET_SPEED_REQUEST = 0x8027, ///< TD set blood pump set speed request MSG_ID_TD_BLOOD_PUMP_MEASURED_FLOW_RATE_OVERRIDE_REQUEST = 0x8028, ///< TD override request for blood pump measured flow rate MSG_ID_TD_BLOOD_PUMP_MEASURED_MOTOR_SPEED_OVERRIDE_REQUEST = 0x8029, ///< TD override request for blood pump measured motor speed MSG_ID_TD_BLOOD_PUMP_MEASURED_ROTOR_SPEED_OVERRIDE_REQUEST = 0x802A, ///< TD override request for blood pump measured rotor speed MSG_ID_TD_BLOOD_PUMP_ROTOR_COUNT_OVERRIDE_REQUEST = 0x802B, ///< TD override request for blood pump rotor count MSG_ID_TD_TMP_PRESSURE_OVERRIDE_REQUEST = 0x802C, ///< TD override request for TMP 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 MSG_ID_DD_SOFTWARE_RESET_REQUEST = 0xA001, ///< DD reset request MSG_ID_DD_SEND_TEST_CONFIGURATION = 0xA002, ///< DD send test configuration to Dialin MSG_ID_DD_VALVE_PUBLISH_INTERVAL_OVERRIDE_REQUEST = 0xA003, ///< DD valve publish interval override request MSG_ID_DD_VALVE_STATE_OVERRIDE_REQUEST = 0xA004, ///< DD valve state override request MSG_ID_DD_VALVE_SENSED_STATE_OVERRIDE_REQUEST = 0xA005, ///< DD valve sensed state override request MSG_ID_DD_PRESSURE_SENSOR_READINGS_OVERRIDE_REQUEST = 0xA006, ///< DD pressure sensor override request MSG_ID_DD_PRESSURE_SENSOR_TEMPERATURE_OVERRIDE_REQUEST = 0xA007, ///< DD pressure sensor temperature override request MSG_ID_DD_PRESSURE_SENSOR_READ_COUNTER_OVERRIDE_REQUEST = 0xA008, ///< DD pressure sensor read counter request MSG_ID_DD_PRESSURE_SENSOR_ERROR_COUNTER_OVERRIDE_REQUEST = 0xA009, ///< DD pressure sensor error counter request MSG_ID_DD_PRESSURE_SENSOR_PUBLISH_INTERVAL_OVERRIDE_REQUEST = 0xA00A, ///< DD pressure sensor publish interval override request MSG_ID_DD_PRESSURE_SENSOR_FILTER_READINGS_OVERRIDE_REQUEST = 0xA00B, ///< DD pressure sensor filter readings override request MSG_ID_DD_PRESSURE_SENSOR_FILTER_TEMPERATURE_OVERRIDE_REQUEST = 0xA00C, ///< DD pressure sensor filter temperature override request MSG_ID_DD_CONDUCTIVITY_SENSOR_READINGS_OVERRIDE_REQUEST = 0xA00D, ///< DD conductivity sensor reading override request MSG_ID_DD_CONDUCTIVITY_SENSOR_TEMPERATURE_OVERRIDE_REQUEST = 0xA00E, ///< DD conductivity sensor temperature override request MSG_ID_DD_CONDUCTIVITY_SENSOR_READ_COUNTER_OVERRIDE_REQUEST = 0xA00F, ///< DD conductivity sensor read counter request MSG_ID_DD_CONDUCTIVITY_SENSOR_ERROR_COUNTER_OVERRIDE_REQUEST = 0xA010, ///< DD conductivity sensor error counter request MSG_ID_DD_CONDUCTIVITY_SENSOR_PUBLISH_INTERVAL_OVERRIDE_REQUEST = 0xA011, ///< DD conductivity sensor publish interval override request MSG_ID_DD_CONCENTRATE_PUMP_PUBLISH_INTERVAL_OVERRIDE_REQUEST = 0xA012, ///< DD concentrate pump publish interval override request MSG_ID_DD_CONCENTRATE_PUMP_TARGET_SPEED_OVERRIDE_REQUEST = 0xA013, ///< DD concentrate pump target speed override request MSG_ID_DD_CONCENTRATE_PUMP_MEASURED_SPEED_OVERRIDE_REQUEST = 0xA014, ///< DD concentrate pump measured speed override request MSG_ID_DD_CONCENTRATE_PUMP_PARKED_OVERRIDE_REQUEST = 0xA015, ///< DD concentrate pump parked override request MSG_ID_DD_CONCENTRATE_PUMP_PARK_FAULT_OVERRIDE_REQUEST = 0xA016, ///< DD concentrate pump park fault override request MSG_ID_DD_CONCENTRATE_PUMP_PARK_REQUEST_OVERRIDE_REQUEST = 0xA017, ///< DD concentrate pump park request override request MSG_ID_DD_TEMPERATURE_SENSOR_PUBLISH_INTERVAL_OVERRIDE_REQUEST = 0xA018, ///< DD temperature sensor publish interval override request MSG_ID_DD_TEMPERATURE_SENSOR_MEASURED_TEMPERATURE_OVERRIDE_REQUEST = 0xA019, ///< DD temperature sensor measured temperature override request MSG_ID_DD_TEMPERATURE_SENSOR_READ_COUNTER_OVERRIDE_REQUEST = 0xA01A, ///< DD temperature sensor read counter override request MSG_ID_DD_TEMPERATURE_SENSOR_BARO_READ_COUNTER_OVERRIDE_REQUEST = 0xA01B, ///< DD temperature sensor baro sensor read counter override request MSG_ID_DD_TEMPERATURE_SENSOR_BARO_CRC_OVERRIDE_REQUEST = 0xA01C, ///< DD temperature sensor baro sensor coefficient CRC override request MSG_ID_DD_DIALYSATE_PUMPS_PUBLISH_INTERVAL_OVERRIDE_REQUEST = 0xA01D, ///< DD dialysate pumps data publish interval override request MSG_ID_DD_DIALYSATE_PUMPS_TARGET_SPEED_OVERRIDE_REQUEST = 0xA01E, ///< DD dialysate pumps target speed override request MSG_ID_DD_DIALYSATE_PUMPS_MEASURED_SPEED_OVERRIDE_REQUEST = 0xA01F, ///< DD dialysate pumps measured speed override request MSG_ID_DD_DIALYSATE_PUMPS_TARGET_PRESSURE_OVERRIDE_REQUEST = 0xA020, ///< DD dialysate pumps target pressure override request MSG_ID_DD_DIALYSATE_PUMPS_MEASURED_CURRENT_OVERRIDE_REQUEST = 0xA021, ///< DD dialysate pumps measured current override request MSG_ID_DD_DIALYSATE_PUMPS_MEASURED_DIRECTION_OVERRIDE_REQUEST = 0xA022, ///< DD dialysate pumps measured direction override request MSG_ID_DD_HEATERS_PUBLISH_INTERVAL_OVERRIDE_REQUEST = 0xA023, ///< DD heaters data publish interval override request MSG_ID_DD_HEATERS_DUTY_CYCLE_OVERRIDE_REQUEST = 0xA024, ///< DD heaters dutycycle override request MSG_ID_DD_LEVELS_PUBLISH_INTERVAL_OVERRIDE_REQUEST = 0xA025, ///< DD levels data publish interval override request MSG_ID_DD_LEVELS_STATUS_OVERRIDE_REQUEST = 0xA026, ///< DD levels status override request MSD_ID_DD_TD_COMMUNICATION_STATUS_OVERRIDE_REQUEST = 0xA027, ///< DD TD CAN Communication status override request MSG_ID_DD_OP_MODE_STATUS_OVERRIDE_REQUEST = 0xA028, ///< DD operation mode status override request MSG_ID_DD_SET_OPERATION_MODE_OVERRIDE_REQUEST = 0xA029, ///< DD set new operation mode override request MSG_ID_DD_START_GEN_DIALYSATE_MODE_OVERRIDE_REQUEST = 0xA02A, ///< DD start gen dialysate mode override request MSG_ID_DD_DIALYSATE_PUMPS_START_STOP_OVERRIDE_REQUEST = 0xA02B, ///< DD dialysate pumps start/stop override request MSG_ID_DD_GEND_MODE_DATA_PUBLISH_OVERRIDE_REQUEST = 0xA02C, ///< DD generate dialysate mode data publish interval override request MSG_ID_DD_CONCENTRATE_PUMPS_START_STOP_OVERRIDE_REQUEST = 0xA02D, ///< DD Concentrate pumps start/stop override request MSG_ID_DD_HEATERS_START_STOP_OVERRIDE_REQUEST = 0xA02E, ///< DD Heaters start override request MSG_ID_DD_VALVES_OPEN_CLOSE_STATE_OVERRIDE_REQUEST = 0xA02F, ///< DD Valves open/close state override request MSD_ID_DD_RO_COMMUNICATION_STATUS_OVERRIDE_REQUEST = 0xA030, ///< DD RO CAN Communication status override request MSG_ID_DD_BAL_CHAMBER_DATA_PUBLISH_OVERRIDE_REQUEST = 0xA031, ///< DD balance chamber data publish interval override request MSG_ID_DD_BAL_CHAMBER_SWITCH_FREQ_OVERRIDE_REQUEST = 0xA032, ///< DD balance chamber switching frequency override request MSG_ID_DD_DIAL_DELIVERY_IN_PROGRESS_OVERRIDE_REQUEST = 0xA033, ///< DD dialysate delivery in progress override request MSG_ID_DD_DIAL_DELIVERY_GOOD_TO_DELIVER_OVERRIDE_REQUEST = 0xA034, ///< DD dialysate delivery good to deliver override request MSG_ID_DD_HEATERS_TARGET_TEMPERATURE_OVERRIDE_REQUEST = 0xA035, ///< DD heaters target temperature override request MSG_ID_DD_BC_VALVE_STATES_OVERRIDE_REQUEST = 0xA036, ///< DD balancing chamber valve states override request MSG_ID_DD_BC_SWITCH_ONLY_START_STOP_OVERRIDE_REQUEST = 0xA037, ///< DD balancing chamber switch only start/stop override request MSG_ID_DD_HYD_CHAMBER_TARGET_TEMP_OVERRIDE_REQUEST = 0xA038, ///< DD Hydraulic chamber target temperature override request MSG_ID_DD_ACID_DOSING_VOLUME_OVERRIDE_REQUEST = 0xA039, ///< DD acid dosing volume override request MSG_ID_DD_BICARB_DOSING_VOLUME_OVERRIDE_REQUEST = 0xA03A, ///< DD bicarb dosing volume override request MSG_ID_DD_GEND_EXEC_STATE_OVERRIDE_REQUEST = 0xA03B, ///< DD GenD execution state override request MSG_ID_DD_HEATERS_PWM_PERIOD_OVERIDE_REQUEST = 0xA03C, ///< DD heaters PWM period override request MSG_ID_DD_PRE_GEND_MODE_DATA_PUBLISH_OVERRIDE_REQUEST = 0xA03D, ///< DD Pre generate dialysate mode data publish interval override request MSG_ID_DD_POST_GEND_MODE_DATA_PUBLISH_OVERRIDE_REQUEST = 0xA03E, ///< DD Post generate dialysate mode data publish interval override request #ifdef __PUMPTEST__ MSG_ID_DD_PISTON_PUMP_DATA_PUBLISH_OVERRIDE_REQUEST = 0xAF00, ///< DD piston pump data publish interval override request MSG_ID_DD_PISTON_PUMP_START_STOP_OVERRIDE_REQUEST = 0xAF01, ///< DD piston pump start/stop override request MSG_ID_DD_PISTON_PUMP_FILL_AFTER_DISPENSE_OVERRIDE_REQUEST = 0xAF02, ///< DD piston pump fill after dispense control #endif MSG_ID_FIRST_RO_TESTER_MESSAGE = 0xB000, ///< First RO test message ID MSG_ID_RO_TESTER_LOGIN_REQUEST = MSG_ID_FIRST_RO_TESTER_MESSAGE, ///< RO tester log-in MSG_ID_RO_SOFTWARE_RESET_REQUEST = 0xB001, ///< RO reset request MSG_ID_RO_SEND_TEST_CONFIGURATION = 0xB002, ///< RO send test configuration to Dialin MSG_ID_RO_VALVE_PUBLISH_INTERVAL_OVERRIDE_REQUEST = 0xB003, ///< RO valve data publish interval override request MSG_ID_RO_VALVE_CMD_STATE_OVERRIDE_REQUEST = 0xB004, ///< RO valve commanded state override request MSG_ID_RO_VALVE_SENSED_STATE_OVERRIDE_REQUEST = 0xB005, ///< RO valve sensed state override request MSG_ID_RO_BOOST_PUMP_SET_PWM_REQUEST = 0xB006, ///< RO set boost pump PWM request MSG_ID_RO_BOOST_PUMP_READ_PWM_OVERRIDE_REQUEST = 0xB007, ///< RO override request for boost pump read PWM MSG_ID_RO_BOOST_PUMP_SPEED_OVERRIDE_REQUEST = 0xB008, ///< RO override request for boost pump speed (RPM) MSG_ID_RO_BOOST_PUMPS_PUBLISH_INTERVAL_OVERRIDE_REQUEST = 0xB009, ///< RO boost pumps data publish interval override request MSG_ID_RO_PRESSURE_OVERRIDE_REQUEST = 0xB00A, ///< RO override request for pressure (mmHg) MSG_ID_RO_PRESSURE_TEMP_OVERRIDE_REQUEST = 0xB00B, ///< RO override request for pressure sensor temperature (deg C) MSG_ID_RO_PRESSURE_READ_COUNT_OVERRIDE_REQUEST = 0xB00C, ///< RO override request for pressure sensor read count MSG_ID_RO_PRESSURE_ERROR_COUNT_OVERRIDE_REQUEST = 0xB00D, ///< RO override request for pressure sensor error count MSG_ID_RO_PRESSURE_PUBLISH_INTERVAL_OVERRIDE_REQUEST = 0xB00E, ///< RO pressures data publish interval override request MSG_ID_RO_LEVEL_PUBLISH_INTERVAL_OVERRIDE_REQUEST = 0xB00F, ///< RO level data publish interval override request MSG_ID_RO_LEVEL_OVERRIDE_REQUEST = 0xB010, ///< RO override request for level sensor. MSG_ID_RO_FLOWS_PUBLISH_INTERVAL_OVERRIDE_REQUEST = 0xB011, ///< RO flows data publish interval override request MSG_ID_RO_FLOW_RATE_OVERRIDE_REQUEST = 0xB012, ///< RO override request for flow rate (mL/min) MSG_ID_RO_FLOW_TEMP_OVERRIDE_REQUEST = 0xB013, ///< RO override request for flow temperature (deg C) MSG_ID_RO_CONDUCTIVITY_PUBLISH_INTERVAL_OVERRIDE_REQUEST = 0xB014, ///< RO conductivity data publish interval override request MSG_ID_RO_CONDUCTIVITY_OVERRIDE_REQUEST = 0xB015, ///< RO conductivity override request MSG_ID_RO_CONDUCTIVITY_TEMP_OVERRIDE_REQUEST = 0xB016, ///< RO conductivity sensor temperature override request MSG_ID_RO_CONDUCTIVITY_READ_COUNT_OVERRIDE_REQUEST = 0xB017, ///< RO conductivity sensor read count override request MSG_ID_RO_CONDUCTIVITY_ERROR_COUNT_OVERRIDE_REQUEST = 0xB018, ///< RO conductivity sensor error count override request MSG_ID_RO_TEMPERATURE_OVERRIDE_REQUEST = 0xB019, ///< RO temperature override request MSG_ID_RO_FILTERED_FLOW_RATE_OVERRIDE_REQUEST = 0xB01A, ///< RO override request for filtered flow rate (mL/min) MSG_ID_RO_FILTERED_FLOW_TEMP_OVERRIDE_REQUEST = 0xB01B, ///< RO override request for filtered flow temperature (deg C) MSG_ID_TD_DEBUG_EVENT = 0xFFF1, ///< TD debug event text to be logged in event log MSG_ID_DD_DEBUG_EVENT = 0xFFF2, ///< DD debug event text to be logged in event log MSG_ID_RO_DEBUG_EVENT = 0xFFF3, ///< RO debug event text to be logged in event log MSG_ID_ACK_MESSAGE_THAT_REQUIRES_ACK = 0xFFFF, ///< Acknowledgment of message that requires acknowledgment END_OF_MSG_IDS ///< End of system message IDs }; typedef enum Msg_IDs MSG_ID_T; ///< Type for message IDs enumeration /// Enumeration of settings change rejection reason codes enum Request_Reject_Reasons { REQUEST_REJECT_REASON_NONE = 0, ///< Used when there is no rejection REQUEST_REJECT_REASON_NOT_ALLOWED_IN_CURRENT_MODE = 1, ///< Request is not allowed in the current operating mode REQUEST_REJECT_REASON_TIMEOUT_WAITING_FOR_USER_CONFIRM = 2, ///< Validated request was not confirmed by user in reasonable time REQUEST_REJECT_REASON_NOT_IN_TREATMENT_MODE = 3, ///< Request is not allowed if not in treatment mode REQUEST_REJECT_REASON_INVALID_TREATMENT_STATE = 4, ///< Request is not allowed in current treatment state REQUEST_REJECT_REASON_TREATMENT_TOO_CLOSE_TO_FINISHED = 5, ///< Request is not allowed so near end of treatment REQUEST_REJECT_REASON_TREATMENT_TIME_OUT_OF_RANGE = 6, ///< Treatment duration is out of range REQUEST_REJECT_REASON_TREATMENT_TIME_LESS_THAN_CURRENT = 7, ///< Treatment time change is less than currently elapsed treatment time REQUEST_REJECT_REASON_BLOOD_FLOW_OUT_OF_RANGE = 8, ///< Blood flow is out of range REQUEST_REJECT_REASON_DIAL_FLOW_OUT_OF_RANGE = 9, ///< Dialysate flow is out of range REQUEST_REJECT_REASON_DIAL_VOLUME_OUT_OF_RANGE = 10, ///< Dialysate flow rate or treatment duration causes dialysate volume to exceed limit REQUEST_REJECT_REASON_UF_VOLUME_OUT_OF_RANGE = 11, ///< Ultrafiltration volume is out of range REQUEST_REJECT_REASON_UF_RATE_OUT_OF_RANGE = 12, ///< Ultrafiltration rate is out of range REQUEST_REJECT_REASON_TREATMENT_TIME_LESS_THAN_MINIMUM = 13, ///< Treatment time change is less than minimum treatment time REQUEST_REJECT_REASON_UF_NOT_IN_PROGESS = 14, ///< Ultrafiltration is not currently in progress 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_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 /// Enumeration of TD to DD command request rejection reason codes enum Cmd_Request_Reject_Reasons { DD_CMD_REQUEST_REJECT_REASON_NONE = 0, ///< Used when there is no rejection DD_CMD_REQUEST_REJECT_REASON_INVALID_MODE = 1, ///< Command is not allowed in the current operating mode DD_CMD_REQUEST_REJECT_REASON_INVALID_PARAMETER = 2, ///< Command parameter is not valid NUM_OF_DD_CMD_REQUEST_REJECT_REASONS ///< Number of command request reject codes }; typedef enum Cmd_Request_Reject_Reasons CMD_REQUEST_REJECT_REASON_CODE_T; ///< Type for command request rejection reason codes enumeration /**@}*/ #endif