/************************************************************************** * * 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_RESPONSE = 0xE, ///< TD f/w version response MSG_ID_DD_VERSION_RESPONSE = 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_FP_EVENT = 0x2C, ///< FP general event MSG_ID_FP_ALARM_INFO_DATA= 0x2D, ///< FP 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_FP_VALVES_STATES_DATA = 0x31, ///< FP valves data MSG_ID_FP_RO_PUMP_DATA = 0x32, ///< FP broadcast P12 pump data MSG_ID_FP_OP_MODE_DATA = 0x33, ///< FP broadcast operation mode data MSG_ID_FP_PRESSURES_DATA = 0x34, ///< FP broadcast pressures data MSG_ID_FP_LEVEL_DATA = 0x35, ///< FP broadcast level data MSG_ID_FP_FLOW_DATA = 0x36, ///< FP broadcast flow data MSG_ID_FP_CONDUCTIVITY_DATA = 0x37, ///< FP broadcast conductivity data MSG_ID_DD_FP_START_STOP_CMD_REQUEST = 0x38, ///< DD requests FP to start/stop delivering the purified water MSG_ID_FP_TEMPERATURE_DATA = 0x39, ///< FP temperatures data broadcast MSG_ID_FP_HEATER_DATA = 0x3A, ///< FP heater data broadcast MSG_ID_TD_TREATMENT_TIME_DATA = 0x3B, ///< TD treatment time data broadcast MSG_ID_TD_TREATMENT_STATE_DATA = 0x3C, ///< TD treatment state data broadcast MSG_ID_TD_SALINE_BOLUS_DATA = 0x3D, ///< TD saline bolus status data broadcast MSG_ID_TD_ULTRAFILTRATION_DATA = 0x3E, ///< TD ultrafiltration status data broadcast MSG_ID_UI_TREATMENT_PARAMS_TO_VALIDATE = 0x3F, ///< UI treatment parameters (except UF volume) to be validated by TD MSG_ID_TD_RESP_TREATMENT_PARAMS_TO_VALIDATE = 0x40, ///< TD response to treatment parameter validation request MSG_ID_UI_ULTRAFILTRATION_VOLUME_TO_VALIDATE = 0x41, ///< UI ultrafiltration volume parameter to be validated by TD MSG_ID_TD_RESP_ULTRAFILTRATION_VOLUME_TO_VALIDATE = 0x42, ///< TD response to ultrafiltration volume validation request MSG_ID_TD_TREATMENT_PARAM_RANGES = 0x43, ///< TD treatment parameter ranges for UI MSG_ID_UI_TREATMENT_PARAMS_CONFIRMED = 0x44, ///< UI treatment parameters confirmed/rejected MSG_ID_UI_INITIATE_TREATMENT_WORKFLOW = 0x45, ///< UI initiate/cancel treatment workflow request MSG_ID_TD_RESP_INITIATE_TREATMENT_WORKFLOW = 0x46, ///< TD response to initiate/cancel treatment workflow request MSG_ID_UI_UF_PAUSE_RESUME_REQUEST = 0x47, ///< UI ultrafiltration pause/resume request MSG_ID_TD_UF_PAUSE_RESUME_RESPONSE = 0x48, ///< TD response to ultrafiltration pause/resume request MSG_ID_FP_GEN_WATER_MODE_DATA = 0x49, ///< FP Gen Permeate data broadcast MSG_ID_DD_PRE_GEN_DIALYSATE_STATE_DATA = 0x4A, ///< DD Pre-gen dialysate mode data MSG_ID_DD_POST_GEN_DIALYSATE_STATE_DATA = 0x4B, ///< DD Post-gen dialysate mode data MSG_ID_DD_PRE_GEN_DIALYSATE_REQUEST_DATA = 0x4C, ///< DD Pre Generate dialysate request data coming from TD. MSG_ID_FP_PRE_GEN_WATER_MODE_DATA = 0x4D, ///< FP Pre Generate water mode data. MSG_ID_TD_EJECTOR_DATA = 0x4E, ///< TD ejector data broadcast MSG_ID_TD_TREATMENT_SET_POINTS = 0x4F, ///< TD treatment user set points. MSG_ID_FP_BOOST_PUMP_DATA = 0x50, ///< FP broadcast P40 pump data MSG_ID_TD_SERIAL_RESPONSE = 0x51, ///< TD response to UI serial request MSG_ID_DD_SERIAL_RESPONSE = 0x52, ///< DD response to UI serial request MSG_ID_TD_TEMPERATURE_DATA = 0x53, ///< TD Temperature broadcast data MSG_ID_TD_BATTERY_DATA = 0x54, ///< TD Battery broadcast data MSG_ID_FP_FILTER_FLUSH_DATA = 0x55, ///< FP Filter Flush broadcast data MSG_ID_FP_PERMEATE_FLUSH_DATA = 0x56, ///< FP Permeate Flush broadcast data MSG_ID_FP_CONCENTRATE_FLUSH_DATA = 0x57, ///< FP Concentrate Flush broadcast data MSG_ID_FP_GENP_DEF_DATA = 0x58, ///< FP Generate Permeate Defeatured broadcast data MSG_ID_FP_PRE_GEN_DEF_DATA = 0x59, ///< FP Pre Generate Permeate Defeatured broadcast data MSG_ID_FP_VERSION_RESPONSE = 0x5A, ///< FP FW Version response MSG_ID_TD_TREATMENT_PAUSED_TIMER_DATA = 0x5B, ///< TD treatment paused timer data. MSG_ID_DD_UF_DATA = 0x5C, ///< DD ultrafiltration data MSG_ID_FP_PERMEATE_TANK_DATA = 0x5D, ///< FP Permeate tank broadcast data MSG_ID_DD_SPENT_CHAMBER_FILL_DATA = 0x5E, ///< DD spent chamber fill broadcast data MSG_ID_UI_SOLUTION_INFUSION_REQUEST = 0x5F, ///< UI solution infusion request MSG_ID_TD_SOLUTION_INFUSION_RESPONSE = 0x60, ///< TD solution infusion response MSG_ID_DD_BLOOD_LEAK_DATA = 0x61, ///< DD blood leak 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_TD_REQ_CURRENT_TREATMENT_PARAMETERS = 0x802D, ///< TD request for current treatment parameters MSG_ID_TD_RSP_CURRENT_TREATMENT_PARAMETERS = 0x802E, ///< TD response to request for current treatment parameters MSG_ID_TD_SET_TREATMENT_PARAMETER = 0x802F, ///< TD set a specific treatment parameter MSG_ID_TD_OP_MODE_PUBLISH_INTERVAL_OVERRIDE_REQUEST = 0x8030, ///< TD override request for operation mode data publish interval MSG_ID_TD_OP_MODE_OVERRIDE_REQUEST = 0x8031, ///< TD set operation mode request MSG_ID_TD_EJECTOR_MOTOR_SET_SPEED_REQUEST = 0x8032, ///< TD set ejector motor speed request MSG_ID_TD_EJECTOR_COMMAND = 0x8033, ///< TD ejector command MSG_ID_TD_EJECTOR_PUBLISH_INTERVAL_OVERRIDE_REQUEST = 0x8034, ///< TD override request for ejector data publish interval MSG_ID_TD_SET_AIR_TRAP_CONTROL = 0x8035, ///< TD set air trap control to start or stop MSG_ID_TD_HOME_BLOOD_PUMP = 0x8036, ///< TD home blood pump request MSG_ID_TD_BLOOD_FLOW_ALPHA_Y_INTERCEPT_OVERRIDE_REQUEST = 0x8037, ///< TD override request for blood flow alpha Y intercept MSG_ID_TD_BLOOD_FLOW_WEAR_A_TERM_OVERRIDE_REQUEST = 0x8038, ///< TD override request for blood flow wear A term MSG_ID_TD_BLOOD_FLOW_WEAR_B_TERM_OVERRIDE_REQUEST = 0x8039, ///< TD override request for blood flow wear B term MSG_ID_TD_SET_TEST_CONFIGURATION = 0x803A, ///< TD set test configuration MSG_ID_TD_GET_TEST_CONFIGURATION = 0x803B, ///< TD get test configuration MSG_ID_TD_RESET_ALL_TEST_CONFIGURATIONS = 0x803C, ///< TD reset all the configurations 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_UF_DATA_PUBLISH_OVERRIDE_REQUEST = 0xA03E, ///< DD ultrafiltration data publish interval 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_FP_COMMUNICATION_STATUS_OVERRIDE_REQUEST = 0xA030, ///< DD FP 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 MSG_ID_DD_SEND_BLOOD_LEAK_EMB_MODE_RESPONSE = 0xA03F, ///< DD send blood embedded mode response MSG_ID_DD_SPENT_CHAMB_FILL_DATA_PUBLISH_OVERRIDE_REQUEST = 0xA040, ///< DD stop pre-gen dialysate mode override request MSG_ID_DD_AVAILABLE_TO_USE_4 = 0xA041, ///< DD stop gen dialysate mode override request MSG_ID_DD_SAFETY_SHUTDOWN_OVERRIDE_REQUEST = 0xA042, ///< DD set/reset safety shutdown override request MSG_ID_DD_SET_TEST_CONFIGURATION = 0xA043, ///< DD set test configuration MSG_ID_DD_GET_TEST_CONFIGURATION = 0xA044, ///< DD get test configuration MSG_ID_DD_RESET_ALL_TEST_CONFIGURATIONS = 0xA045, ///< DD reset all the configurations MSG_ID_DD_BLOOD_LEAK_DATA_PUBLISH_INTERVAL_OVERRIDE_REQUEST = 0xA047, ///< DD blood leak data publish interval override request MSG_ID_DD_BLOOD_LEAK_STATUS_OVERRIDE_REQUEST = 0xA048, ///< DD blood leak status override request MSG_ID_DD_BLOOD_LEAK_SET_TO_EMBEDDED_MODE_REQUEST = 0xA049, ///< DD blood leak set to embedded mode request MSG_ID_DD_BLOOD_LEAK_SET_EMBEDDED_MODE_CMD_REQUEST = 0xA04A, ///< DD blood leak set embedded more command request MSG_ID_DD_BLOOD_LEAK_EMBEDDED_MODE_INFO_OVERRIDE_REQUEST = 0xA04B, ///< DD blood leak embedded mode information override request MSG_ID_DD_BLOOD_LEAK_INTENSITY_MOVING_AVERAGE_OVERRIDE_REQUEST = 0xA04C, ///< DD blood leak intensity moving average override request MSG_ID_DD_BLOOD_LEAK_ZEROING_INTERVAL_IN_MS_OVERRIDE_REQUEST = 0xA04D, ///< DD blood leak zeroing interval in milliseconds override request MSG_ID_DD_BLOOD_LEAK_ZERO_REQUEST = 0xA04E, ///< DD blood leak zero request MSG_ID_FIRST_FP_TESTER_MESSAGE = 0xB000, ///< First FP test message ID MSG_ID_FP_TESTER_LOGIN_REQUEST = MSG_ID_FIRST_FP_TESTER_MESSAGE, ///< FP tester log-in MSG_ID_FP_SOFTWARE_RESET_REQUEST = 0xB001, ///< FP reset request MSG_ID_FP_SEND_TEST_CONFIGURATION = 0xB002, ///< FP send test configuration to Dialin MSG_ID_FP_VALVE_PUBLISH_INTERVAL_OVERRIDE_REQUEST = 0xB003, ///< FP valve data publish interval override request MSG_ID_FP_VALVE_CMD_STATE_OVERRIDE_REQUEST = 0xB004, ///< FP valve commanded state override request MSG_ID_FP_VALVE_SENSED_STATE_OVERRIDE_REQUEST = 0xB005, ///< FP valve sensed state override request MSG_ID_FP_FLUID_PUMP_SET_PWM_REQUEST = 0xB006, ///< FP set boost pump PWM request MSG_ID_FP_FLUID_PUMP_READ_PWM_OVERRIDE_REQUEST = 0xB007, ///< FP override request for boost pump read PWM MSG_ID_FP_FLUID_PUMP_SPEED_OVERRIDE_REQUEST = 0xB008, ///< FP override request for boost pump speed (RPM) MSG_ID_FP_RO_PUMP_PUBLISH_INTERVAL_OVERRIDE_REQUEST = 0xB009, ///< FP boost pumps data publish interval override request MSG_ID_FP_PRESSURE_OVERRIDE_REQUEST = 0xB00A, ///< FP override request for pressure (mmHg) MSG_ID_FP_PRESSURE_TEMP_OVERRIDE_REQUEST = 0xB00B, ///< FP override request for pressure sensor temperature (deg C) MSG_ID_FP_PRESSURE_READ_COUNT_OVERRIDE_REQUEST = 0xB00C, ///< FP override request for pressure sensor read count MSG_ID_FP_PRESSURE_ERROR_COUNT_OVERRIDE_REQUEST = 0xB00D, ///< FP override request for pressure sensor error count MSG_ID_FP_PRESSURE_PUBLISH_INTERVAL_OVERRIDE_REQUEST = 0xB00E, ///< FP pressures data publish interval override request MSG_ID_FP_LEVEL_PUBLISH_INTERVAL_OVERRIDE_REQUEST = 0xB00F, ///< FP level data publish interval override request MSG_ID_FP_LEVEL_OVERRIDE_REQUEST = 0xB010, ///< FP override request for level sensor. MSG_ID_FP_FLOWS_PUBLISH_INTERVAL_OVERRIDE_REQUEST = 0xB011, ///< FP flows data publish interval override request MSG_ID_FP_FLOW_RATE_OVERRIDE_REQUEST = 0xB012, ///< FP override request for flow rate (mL/min) MSG_ID_FP_FLOW_TEMP_OVERRIDE_REQUEST = 0xB013, ///< FP override request for flow temperature (deg C) MSG_ID_FP_CONDUCTIVITY_PUBLISH_INTERVAL_OVERRIDE_REQUEST = 0xB014, ///< FP conductivity data publish interval override request MSG_ID_FP_CONDUCTIVITY_OVERRIDE_REQUEST = 0xB015, ///< FP conductivity override request MSG_ID_FP_CONDUCTIVITY_TEMP_OVERRIDE_REQUEST = 0xB016, ///< FP conductivity sensor temperature override request MSG_ID_FP_CONDUCTIVITY_READ_COUNT_OVERRIDE_REQUEST = 0xB017, ///< FP conductivity sensor read count override request MSG_ID_FP_CONDUCTIVITY_ERROR_COUNT_OVERRIDE_REQUEST = 0xB018, ///< FP conductivity sensor error count override request MSG_ID_FP_TEMPERATURE_OVERRIDE_REQUEST = 0xB019, ///< FP temperature override request MSG_ID_FP_FILTERED_FLOW_RATE_OVERRIDE_REQUEST = 0xB01A, ///< FP override request for filtered flow rate (mL/min) MSG_ID_FP_FILTERED_FLOW_TEMP_OVERRIDE_REQUEST = 0xB01B, ///< FP override request for filtered flow temperature (deg C) MSG_ID_FP_PRE_GEN_PUBLISH_INTERVAL_OVERRIDE_REQUEST = 0xB01C, ///< FP pre generation data publish interval override request MSG_ID_FP_SET_OPERATION_MODE_REQUEST = 0xB01D, ///< FP set operation mode request MSG_ID_FP_OPERATION_MODE_PUBLISH_INTERVAL_OVERRIDE_REQUEST = 0xB01E, ///< FP operation mode publish interval override MSG_ID_FP_TEMPERATURE_SENSOR_PUBLISH_INTERVAL_OVERRIDE_REQUEST = 0xB01F, ///< FP temperature sensor publish interval override MSG_ID_FP_RO_PUMP_TARGET_PRESSURE_OVERRIDE_REQUEST = 0xB020, ///< FP RO Pump Target Pressure override request MSG_ID_FP_RO_PUMP_TARGET_FLOW_OVERRIDE_REQUEST = 0xB021, ///< FP RO Pump Target Flow override request MSG_ID_FP_RO_PUMP_TARGET_PWM_OVERRIDE_REQUEST = 0xB022, ///< FP RO Pump Target PWM override request MSG_ID_FP_BOOST_PUMP_PUBLISH_INTERVAL_OVERRIDE_REQUEST = 0xB023, ///< FP Boost Pump Target data publish interval override request MSG_ID_FP_BOOST_PUMP_TARGET_PRESSURE_OVERRIDE_REQUEST = 0xB024, ///< FP Boost Pump Target Pressure override request MSG_ID_FP_BOOST_PUMP_TARGET_FLOW_OVERRIDE_REQUEST = 0xB025, ///< FP Boost Pump Target Flow override request MSG_ID_FP_BOOST_PUMP_TARGET_PWM_OVERRIDE_REQUEST = 0xB026, ///< FP RO Pump Target PWM override request MSG_ID_FP_BOOST_PUMP_STOP_REQUEST = 0xB027, ///< FP Boost Pump Stop request MSG_ID_FP_RO_PUMP_STOP_REQUEST = 0xB028, ///< FP RO Pump Stop request MSG_ID_FP_SAFETY_SHUTDOWN_OVERRIDE_REQUEST = 0xB029, ///< FP Safety Shutdown override request MSG_ID_FP_PERMEATE_TANK_PUBLISH_INTERVAL_OVERRIDE_REQUEST = 0xB02A, ///< FP Permeate Tank data publish interval override request MSG_ID_FP_ALARM_STATE_OVERRIDE_REQUEST = 0xB02B, ///< FP Alarm State override request MSG_ID_FP_ALARM_CLEAR_ALL_ALARMS_REQUEST = 0xB02C, ///< FP alarm clear request MSG_ID_FP_SET_TEST_CONFIGURATION = 0xB02D, ///< FP set test configuration MSG_ID_FP_GET_TEST_CONFIGURATION = 0xB02E, ///< FP get test configuration MSG_ID_FP_RESET_ALL_TEST_CONFIGURATIONS = 0xB02F, ///< FP reset all the configurations 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_FP_DEBUG_EVENT = 0xFFF3, ///< FP 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 REQUEST_REJECT_REASON_HEPARIN_STOP_TIME_EXCEEDS_DURATION = 48, ///< The Heparin stop time setting is greater than the treatment duration REQUEST_REJECT_REASON_HEPARIN_STOP_TIME_WITH_NO_DISPENSE = 49, ///< Heparin settings are zero but stop time setting is non-zero REQUEST_REJECT_REASON_HEPARIN_PAUSE_INVALID_IN_THIS_STATE = 50, ///< Heparin cannot be paused if not currently deliverying Heparin REQUEST_REJECT_REASON_HEPARIN_NOT_PAUSED = 51, ///< Heparin cannot be resumed if not paused REQUEST_REJECT_REASON_HEPARIN_VOLUME_EXCEEDS_10_ML = 52, ///< Heparin volume needed for treatment exceeds 10 mL maximum. 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