/************************************************************************** * * Copyright (c) 2020-2023 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) Vinayakam Mani * @date (last) 30-Aug-2023 * * @author (original) Sean * @date (original) 27-Feb-2020 * ***************************************************************************/ #ifndef __MESSAGE_DEFINITIONS_H__ #define __MESSAGE_DEFINITIONS_H__ // ********** public definitions ********** /** * @addtogroup SystemCommMessages * @{ */ /// 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_OFF_BUTTON_PRESS_REQUEST = 0x1, ///< UI to HD off button request MSG_ID_ALARM_STATUS_DATA = 0x2, ///< HD broadcast of system alarm state information MSG_ID_ALARM_TRIGGERED = 0x3, ///< Alarm triggered event MSG_ID_ALARM_CLEARED = 0x4, ///< Alarm cleared event MSG_ID_BLOOD_FLOW_DATA = 0x5, ///< HD broadcast of blood flow/pump data MSG_ID_UI_POST_TX_NEXT_REQUEST = 0x6, ///< UI next screen request in post treatment mode MSG_ID_UI_CHECK_IN = 0x7, ///< UI check-in with HD MSG_ID_DIALYSATE_FLOW_DATA = 0x8, ///< HD broadcast of dialysate inlet flow/pump data MSG_ID_PRESSURE_OCCLUSION_DATA = 0x9, ///< HD broadcast of pressure/occlusion data MSG_ID_RTC_EPOCH_DATA = 0xA, ///< HD broadcast of current date and time from clock MSG_ID_DIALYSATE_OUT_FLOW_DATA = 0xB, ///< HD broadcast of dialysate outlet flow/pump/load cell data MSG_ID_LOAD_CELL_READINGS_DATA = 0xC, ///< DG broadcast of load cell weights MSG_ID_TREATMENT_TIME_DATA = 0xD, ///< HD broadcast of treatment time MSG_ID_POWER_OFF_WARNING = 0xE, ///< HD broadcast power off warning - system power down is imminent MSG_ID_TREATMENT_STATE_DATA = 0xF, ///< HD broadcast of treatment state MSG_ID_USER_UF_PAUSE_RESUME_REQUEST = 0x10, ///< User request to pause or resume ultrafiltration MSG_ID_USER_UF_SETTINGS_CHANGE_REQUEST = 0x11, ///< User request to change ultrafiltration settings MSG_ID_USER_SALINE_BOLUS_REQUEST = 0x12, ///< User request for a saline bolus MSG_ID_USER_UF_SETTINGS_CHANGE_RESPONSE = 0x13, ///< HD response to user request to change ultrafiltration settings MSG_ID_USER_SALINE_BOLUS_RESPONSE = 0x14, ///< HD response to user saline bolus request MSG_ID_USER_CONFIRM_UF_SETTINGS_CHANGE_REQUEST = 0x15, ///< User confirmation of ultrafiltration settings change MSG_ID_USER_TREATMENT_TIME_CHANGE_REQUEST = 0x16, ///< User request to change treatment duration MSG_ID_USER_BLOOD_DIAL_RATE_CHANGE_REQUEST = 0x17, ///< User request to change blood and dialysate rates MSG_ID_USER_BLOOD_DIAL_RATE_CHANGE_RESPONSE = 0x18, ///< HD response to user request to change blood and dialysate rates MSG_ID_SET_DG_DIALYSATE_TEMP_TARGETS = 0x19, ///< HD provides DG with dialysate temperature set points MSG_ID_TREATMENT_PARAM_CHANGE_RANGES_DATA = 0x1A, ///< HD provides several parameter change ranges as they evolve over treatment duration MSG_ID_USER_TREATMENT_TIME_CHANGE_RESPONSE = 0x1B, ///< HD response to user request to change treatment duration MSG_ID_FW_VERSIONS_REQUEST = 0x1C, ///< UI request for f/w versions MSG_ID_HD_VERSION_REPONSE = 0x1D, ///< HD f/w version response MSG_ID_DG_VERSION_REPONSE = 0x1E, ///< DG f/w version response MSG_ID_RO_PUMP_DATA = 0x1F, ///< DG broadcast of RO pump data MSG_ID_DG_PRESSURES_DATA = 0x20, ///< DG broadcast of pressure sensors data MSG_ID_DG_SWITCH_RESERVOIR_CMD_REQUEST = 0x21, ///< HD request to DG to switch reservoirs (A->B or B->A) MSG_ID_DG_FILL_CMD_REQUEST = 0x22, ///< HD request to DG to fill inactive reservoir MSG_ID_DG_DRAIN_CMD_REQUEST = 0x23, ///< HD request to DG to drain inactive reservoir MSG_ID_DRAIN_PUMP_DATA = 0x24, ///< DG broadcast of drain pump data MSG_ID_HD_OP_MODE_DATA = 0x25, ///< HD broadcast current operating mode MSG_ID_STARTING_STOPPING_TREATMENT_CMD_REQUEST = 0x26, ///< HD request to DG to move in/out of standby mode due to treatment start/stop MSG_ID_DG_OP_MODE_DATA = 0x27, ///< DG broadcast current operating mode MSG_ID_DG_RESERVOIRS_DATA = 0x28, ///< DG broadcast reservoirs data MSG_ID_DG_SAMPLE_WATER_CMD_REQUEST = 0x29, ///< HD request to DG to allow user to get a water sample MSG_ID_DG_VALVES_STATES_DATA = 0x2A, ///< DG broadcast valve states MSG_ID_HD_START_STOP_TRIMMER_HEATER_CMD_REQUEST = 0x2B, ///< HD request to DG to start/stop trimmer heater MSG_ID_DG_HEATERS_DATA = 0x2C, ///< DG broadcast of the heaters data MSG_ID_DG_TEMPERATURE_DATA = 0x2D, ///< DG broadcast of the temperature sensors data MSG_ID_USER_UF_SETTINGS_CHANGE_CONFIRMATION_RESPONSE = 0x2E, ///< HD response to user selection of ultrafiltration settings change option selection MSG_ID_SALINE_BOLUS_DATA = 0x2F, ///< HD broadcast of saline bolus data MSG_ID_DG_START_STOP_HEAT_DISINFECT_CMD_REQUEST = 0x30, ///< HD request to start or stop DG heat disinfection MSG_ID_DG_CONDUCTIVITY_DATA = 0x31, ///< DG broadcast of the conductivity sensors data MSG_ID_USER_ALARM_SILENCE_REQUEST = 0x32, ///< UI request alarm silence (or cancel) MSG_ID_HD_ACCELEROMETER_DATA = 0x33, ///< HD broadcast of accelerometer data MSG_ID_DG_ACCELEROMETER_DATA = 0x34, ///< DG broadcast of accelerometer data MSG_ID_UI_NEW_TREATMENT_PARAMS_REQUEST = 0x35, ///< UI request to validate new treatment parameter set MSG_ID_HD_NEW_TREATMENT_PARAMS_RESPONSE = 0x36, ///< HD response to new treatment parameters set MSG_ID_DG_HEAT_DISINFECT_DATA = 0x37, ///< DG heat disinfect publish data MSG_ID_UI_INITIATE_TREATMENT_REQUEST = 0x38, ///< UI user request to initiate a treatment MSG_ID_HD_INITIATE_TREATMENT_RESPONSE = 0x39, ///< HD response to user request to initiate a treatment MSG_ID_HD_VALVES_DATA = 0x3A, ///< HD broadcast of valves data MSG_ID_UI_USER_CONFIRM_TREATMENT_PARAMS_REQUEST = 0x3B, ///< UI user confirmation of treatment parameters MSG_ID_UI_START_PRIME_REQUEST = 0x3C, ///< UI user has requested to start priming MSG_ID_HD_START_PRIME_RESPONSE = 0x3D, ///< HD response to user request to start priming MSG_ID_HD_AIR_TRAP_DATA = 0x3E, ///< HD broadcast of air trap data MSG_ID_ALARM_CONDITION_CLEARED = 0x3F, ///< Alarm condition cleared event MSG_ID_UI_ALARM_USER_ACTION_REQUEST = 0x40, ///< UI user has requested an alarm action MSG_ID_USER_UF_PAUSE_RESUME_RESPONSE = 0x41, ///< HD response to user request to pause or resume ultrafiltration MSG_ID_DG_CONCENTRATE_PUMP_DATA = 0x42, ///< DG broadcast of concentrate pump data MSG_ID_HD_PRIMING_STATUS_DATA = 0x43, ///< HD priming status during cartridge prime MSG_ID_DG_UV_REACTORS_DATA = 0x44, ///< DG broadcast UV reactors data MSG_ID_DG_THERMISTORS_DATA = 0x45, ///< DG broadcast thermistors data MSG_ID_UI_PRESSURE_LIMITS_CHANGE_REQUEST = 0x46, ///< UI request to change pressure limits MSG_ID_HD_PRESSURE_LIMITS_CHANGE_RESPONSE = 0x47, ///< HD response to change pressure limits request MSG_ID_DG_FANS_DATA = 0x48, ///< DG broadcast fans data MSG_ID_HD_TREATMENT_STOP_TIMER_DATA = 0x49, ///< HD broadcast of treatment stop timer (countdown to treatment stop - no rinseback alarm) MSG_ID_UI_PATIENT_DISCONNECTION_CONFIRM_REQUEST = 0x4A, ///< UI patient disconnection confirm MSG_ID_UI_HEPARIN_PAUSE_RESUME_REQUEST = 0x4B, ///< UI request to pause/resume Heparin delivery MSG_ID_HD_HEPARIN_PAUSE_RESUME_RESPONSE = 0x4C, ///< HD response to pause/resume Heparing delivery request MSG_ID_HD_HEPARIN_DATA = 0x4D, ///< HD broadcast of Heparin delivery data MSG_ID_UI_SET_ALARM_AUDIO_VOLUME_LEVEL_CMD_REQUEST = 0x4E, ///< UI command to set alarm audio volume level MSG_ID_UI_SET_UF_VOLUME_PARAMETER_REQUEST = 0x4F, ///< UI request to validate new ultrafiltration volume treatment parameter MSG_ID_HD_SET_UF_VOLUME_PARAMETER_RESPONSE = 0x50, ///< HD response to new treatment parameters set MSG_ID_DG_COMMAND_RESPONSE = 0x51, ///< DG response to command from HD MSG_ID_UI_RINSEBACK_CMD_REQUEST = 0x52, ///< UI rinseback sub-mode user request MSG_ID_HD_RINSEBACK_CMD_RESPONSE = 0x53, ///< HD rinseback sub-mode user request response MSG_ID_UI_RECIRC_CMD_REQUEST = 0x54, ///< UI re-circ sub-mode user request MSG_ID_HD_RECIRC_CMD_RESPONSE = 0x55, ///< HD re-circ sub-mode request response MSG_ID_HD_RINSEBACK_PROGRESS = 0x56, ///< HD broadcast of rinseback progress MSG_ID_UI_TX_END_CMD_REQUEST = 0x57, ///< UI end treatment sub-mode user request MSG_ID_HD_TX_END_CMD_RESPONSE = 0x58, ///< HD end treatment sub-mode user request response MSG_ID_HD_BLOOD_PRIME_PROGRESS_DATA = 0x59, ///< HD broadcast of blood prime progress MSG_ID_HD_RECIRC_PROGRESS_DATA = 0x5A, ///< HD broadcast of treatment re-circulate progress MSG_ID_DG_CHANGE_VALVE_SETTING_CMD_REQUEST = 0x5B, ///< HD request to DG to change valve setting MSG_ID_PRE_TREATMENT_STATE_DATA = 0x5C, ///< HD broadcast of pre-treatment state MSG_ID_UI_SAMPLE_WATER_CMD_REQUEST = 0x5D, ///< UI sample water sub-mode user request MSG_ID_HD_SAMPLE_WATER_CMD_RESPONSE = 0x5E, ///< HD sample water sub-mode request response MSG_ID_UI_SAMPLE_WATER_RESULT = 0x5F, ///< UI sample water result message MSG_ID_DG_FILTER_FLUSH_PROGRESS_DATA = 0x60, ///< DG broadcast of filter flush progress MSG_ID_HD_NO_CART_SELF_TEST_PROGRESS_DATA = 0x61, ///< HD broadcast of no cartridge self-tests progress MSG_ID_UI_INSTALLATION_CONFIRM_REQUEST = 0x62, ///< UI disposable installation user confirmation MSG_ID_HD_DRY_SELF_TEST_PROGRESS_DATA = 0x63, ///< HD broadcast of dry self-tests progress MSG_ID_UI_PATIENT_CONNECTION_BEGIN_REQUEST = 0x64, ///< UI user has requested to begin patient connection MSG_ID_HD_PATIENT_CONNECTION_BEGIN_RESPONSE = 0x65, ///< HD response to user request to begin patient connection MSG_ID_UI_PATIENT_CONNECTION_CONFIRM_REQUEST = 0x66, ///< UI user has confirmed patient connection completed MSG_ID_HD_PATIENT_CONNECTION_CONFIRM_RESPONSE = 0x67, ///< HD response to user confirmation of patient connection MSG_ID_UI_CONSUMABLE_INSTALL_CONFIRM_REQUEST = 0x68, ///< UI user has confirmed consumable install MSG_ID_HD_SYRINGE_PUMP_DATA = 0x69, ///< HD broadcast of syringe pump data MSG_ID_HD_FLUID_LEAK_STATE_DATA = 0x6A, ///< HD broadcast of fluid leak state MSG_ID_DG_FLUID_LEAK_STATE_DATA = 0x6B, ///< DG broadcast of fluid leak state MSG_ID_HD_BLOOD_LEAK_DATA = 0x6C, ///< HD broadcast of blood leak data MSG_ID_UI_HD_SET_RTC_REQUEST = 0x6D, ///< UI requests HD to set RTC MSG_ID_HD_UI_SET_RTC_RESPONSE = 0x6E, ///< HD response for RTC set request MSG_ID_UI_DG_SET_RTC_REQUEST = 0x6F, ///< UI requests DG to set RTC MSG_ID_DG_UI_SET_RTC_RESPONSE = 0x70, ///< DG response for RTC set request MSG_ID_UI_START_TREATMENT_REQUEST = 0x71, ///< UI user has requested to start treatment MSG_ID_HD_START_TREATMENT_RESPONSE = 0x72, ///< HD response to user request to start treatment MSG_ID_UI_DISPOSABLE_REMOVAL_CONFIRM_REQUEST = 0x73, ///< UI user has confirmed disposable removal MSG_ID_HD_DISPOSABLE_REMOVAL_CONFIRM_RESPONSE = 0x74, ///< HD response to user confirmation of disposable removal MSG_ID_UI_TREATMENT_LOG_DATA_REQUEST = 0x75, ///< UI request treatment log data message MSG_ID_HD_TREATMENT_LOG_DATA_RESPONSE = 0x76, ///< HD response to UI treatment log data request MSG_ID_HD_POST_TREATMENT_STATE_DATA = 0x77, ///< HD broadcast of post-treatment state MSG_ID_DG_START_STOP_CHEM_DISINFECT = 0x78, ///< DG start/stop chemical disinfection MSG_ID_DG_START_STOP_FLUSH_CMD_REQUEST = 0x79, ///< DG start/stop flush mode MSG_ID_DG_FLUSH_DATA = 0x7A, ///< DG flush data publish MSG_ID_HD_VOLTAGES_DATA = 0x7B, ///< HD voltages data publish MSG_ID_HD_ALARM_AUDIO_VOLUME_SET_RESPONSE = 0x7C, ///< HD response to UI set alarm audio volume request MSG_ID_HD_ALARM_INFORMATION_DATA = 0x7D, ///< HD alarm information broadcast message MSG_ID_HD_POST_TX_NEXT_CMD_RESPONSE = 0x7E, ///< HD next screen request in post treatment mode response MSG_ID_UI_DISINFECT_REQUEST = 0x7F, ///< UI disinfection selection MSG_ID_HD_DISINFECT_RESPONSE = 0x80, ///< HD response to disinfection selection MSG_ID_DG_SEND_SERVICE_SCHEDULE_DATA_TO_HD = 0x81, ///< DG send service schedule data to HD MSG_ID_HD_REQUEST_SERVICE_RECORD_FROM_HD = 0x82, ///< HD request service schedule data from HD MSG_ID_DG_PARK_CONCENTRATE_PUMPS_CMD_REQUEST = 0x83, ///< HD request DG to park concentrate pumps MSG_ID_DG_HEAT_DISINFECT_TIME_DATA = 0x84, ///< DG broadcast of heat disinfection mode time data MSG_ID_DG_CHEM_DISINFECT_TIME_DATA = 0x85, ///< DG broadcast of chemical disinfection mode time data MSG_ID_DG_VOLTAGES_DATA = 0x86, ///< DG voltages data publish MSG_ID_DG_CHEM_DISINFECT_DATA = 0x87, ///< DG chemical disinfect data publish MSG_ID_DG_SERIAL_NUMBER_RESPONSE = 0x88, ///< DG serial number MSG_ID_UI_SERVICE_INFO_REQUEST = 0x89, ///< UI request for service schedule information MSG_ID_HD_SERVICE_SCHEDULE_DATA = 0x8A, ///< HD service schedule data MSG_ID_HD_USAGE_DATA = 0x8B, ///< HD usage data MSG_ID_DG_SERVICE_SCHEDULE_DATA_TO_UI = 0x8C, ///< DG service schedule data to UI MSG_ID_DG_USAGE_DATA = 0x8D, ///< DG usage data MSG_ID_HD_POST_SINGLE_TEST_RESULT = 0x8E, ///< HD POST single test result MSG_ID_HD_POST_FINAL_TEST_RESULT = 0x8F, ///< HD POST final test result MSG_ID_DG_POST_SINGLE_TEST_RESULT = 0x90, ///< DG POST single test result MSG_ID_DG_POST_FINAL_TEST_RESULT = 0x91, ///< DG POST final test result MSG_ID_UI_POST_FINAL_TEST_RESULT = 0x92, ///< UI POST final test result MSG_ID_HD_BUBBLES_DATA = 0x93, ///< HD broadcast of air bubble detectors data MSG_ID_HD_TREATMENT_LOG_PERIODIC_DATA = 0x94, ///< HD broadcast of treatment log period data MSG_ID_HD_TREATMENT_LOG_ALARM_EVENT = 0x95, ///< HD treatment log alarm event MSG_ID_HD_TREATMENT_LOG_EVENT = 0x96, ///< HD treatment log event MSG_ID_UI_ACTIVE_ALARMS_LIST_REQUEST = 0x97, ///< UI active alarms list request MSG_ID_HD_ACTIVE_ALARMS_LIST_REQUEST_RESPONSE = 0x98, ///< HD active alarms list request response MSG_ID_HD_SERIAL_NUMBER_RESPONSE = 0x99, ///< HD serial number MSG_ID_HD_SET_STANDBY_DISINFECT_SUB_MODE_REQUEST = 0x9A, ///< HD set standby disinfect submode request MSG_ID_HD_SET_STANDBY_DISINFECT_SUB_MODE_RESPONSE = 0x9B, ///< HD set standby disinfect submode response MSG_ID_HD_DG_POST_RESULT_REQUEST = 0x9C, ///< HD request for DG POST final result (reported back on msg 0x91) MSG_ID_HD_TEMPERATURES_DATA = 0x9D, ///< HD temperatures data MSG_ID_HD_UI_VERSION_INFO_REQUEST = 0x9E, ///< HD request for UI version information MSG_ID_UI_VERSION_INFO_RESPONSE = 0x9F, ///< UI response to HD request for version information MSG_ID_HD_USAGE_INFO_REQUEST = 0xA0, ///< HD request usage information MSG_ID_DG_SWITCHES_DATA = 0xA1, ///< DG switches data publish MSG_ID_HD_SWITCHES_DATA = 0xA2, ///< HD switches data publish MSG_ID_HD_FANS_DATA = 0xA3, ///< HD fans data publish MSG_ID_HD_EVENT = 0xA4, ///< HD general event MSG_ID_DG_EVENT = 0xA5, ///< DG general event MSG_ID_HD_SET_SERVICE_TIME_REQUEST = 0xA6, ///< HD set service time MSG_ID_DG_ALARM_INFO_DATA = 0xA7, ///< DG alarm information data publish MSG_ID_HD_RESERVOIRS_DATA = 0xA8, ///< HD reservoirs data publish MSG_ID_HD_DG_CONCENTRATE_MIXING_RATIOS_REQUEST = 0xA9, ///< HD request DG concentrate ratios MSG_ID_DG_CONCENTRATE_MIXING_RATIOS_DATA = 0xAA, ///< DG concentrate mixing ratios data MSG_ID_DG_SCHEDULED_RUNS_DATA = 0xAB, ///< DG scheduled runs data MSG_ID_DG_SET_SERVICE_TIME_REQUEST = 0xAC, ///< DG set service time MSG_ID_UI_INSTALLATION_CONFIRM_RESPONSE = 0xAD, ///< HD Confirm installation response MSG_ID_DG_FILL_MODE_DATA = 0xAE, ///< DG broadcast of fill mode data such as used acid & bicarb volume MSG_ID_DG_GEN_IDLE_DATA = 0xAF, ///< DG broadcast of Gen idle mode sub-state MSG_ID_UI_SERVICE_MODE_REQUEST = 0xB0, ///< UI request to HD to go to service mode MSG_ID_HD_RESPONSE_SERVICE_MODE_REQUEST = 0xB1, ///< HD response to UI request to go to service mode MSG_ID_HD_REQUEST_UI_FINAL_POST_RESULT = 0xB2, ///< HD request to UI for final POST result MSG_ID_DG_FLOW_SENSORS_DATA = 0xB3, ///< DG flow sensors data publish MSG_ID_DG_RESPONSE_SERVICE_MODE_REQUEST = 0xB4, ///< DG response to HD request to go to service mode MSG_ID_HD_DG_ALARMS_REQUEST = 0xB5, ///< HD request for DG to re-send trigger messages for each active alarm MSG_ID_HD_DG_SERVICE_MODE_REQUEST = 0xB6, ///< HD request for DG to to go to service mode MSG_ID_DG_RTC_EPOCH_DATA = 0xB7, ///< DG RTC epoch broadcast message MSG_ID_HD_DG_USAGE_INFO_REQUEST = 0xB8, ///< HD request DG usage info MSG_ID_MSG_AVAILABLE_9 = 0xB9, ///< Message ID available MSG_ID_HD_UI_CONFIRMATION_REQUEST = 0xBA, ///< HD request UI confirmation MSG_ID_UI_CONFIRMATION_RESULT_RESPONSE = 0xBB, ///< UI confirmation result response MSG_ID_UI_SET_DG_RO_MODE = 0xBC, ///< UI set DG RO mode MSG_ID_DG_CPLD_STATUS_DATA = 0xBD, ///< DG CPLD Status MSG_ID_HD_BATTERY_MANAGEMENT_DATA = 0xBE, ///< HD battery management logging data MSG_ID_HD_BATTERY_STATUS_DATA = 0xBF, ///< HD battery status logging data MSG_ID_DG_CHEM_DISINFECT_FLUSH_DATA = 0xC0, ///< DG chemical disinfect flush logging data MSG_ID_DG_CHEM_DISINFECT_FLUSH_TIME_DATA = 0xC1, ///< DG broadcast of chemical disinfect flush mode time data MSG_ID_DG_START_STOP_CHEM_DISINFECT_FLUSH = 0xC2, ///< DG start/stop chemical disinfect flush MSG_ID_DG_RO_ONLY_MODE_STATUS_REQUEST = 0xC3, ///< DG RO only mode status request MSG_ID_DG_RO_ONLY_MODE_STATUS_RESPONSE = 0xC4, ///< DG RO only mode status response MSG_ID_DG_HEAT_DISINFECT_ACTIVE_COOL_DATA = 0xC5, ///< DG heat disinfect active cool data broadcast MSG_ID_DG_START_STOP_HEAT_DISINFECT_ACTIVE_COOL = 0xC6, ///< DG heat disinfect active cool start/stop command MSG_ID_HD_AIR_PUMP_DATA = 0xC7, ///< HD air pump data publish MSG_ID_HD_SEND_CHEM_FLUSH_SAMPLE_PASS_FAIL_TO_DG = 0xC8, ///< HD send chemical disinfect flush sample pass/fail to DG MSG_ID_DG_START_STOP_RO_PERMEATE_SAMPLE_MODE_CMD_REQUEST = 0xC9, ///< DG start/stop RO permeate sample mode command request MSG_ID_DG_RO_PERMEATE_SAMPLE_DATA = 0xCA, ///< DG RO permeate sample mode data broadcast MSG_ID_HD_SEND_RO_PERMEATE_SAMPLE_DISPENSE_REQUEST_TO_DG = 0xCB, ///< HD send RO permeate sample dispense request to DG MSG_ID_DG_SEND_RO_PERMEATE_SAMPLE_DISPENSE_READY_TO_HD = 0xCD, ///< DG send RO permeate sample dispense ready to HD MSG_ID_DG_DRAIN_MODE_DATA = 0xCE, ///< DG drain mode data broadcast message #ifdef EMC_TEST_BUILD MSG_ID_CAN_ERROR_COUNT = 0x999, // test code in support of EMC testing #endif // service/test CAN messages MSG_ID_FIRST_TESTER_MESSAGE = 0x8000, ///< First HD test message ID MSG_ID_TESTER_LOGIN_REQUEST = MSG_ID_FIRST_TESTER_MESSAGE, ///< HD tester log-in MSG_ID_DIAL_OUT_FLOW_SET_PT_OVERRIDE = 0x8001, ///< Dialysate outlet flow set point override request MSG_ID_OFF_BUTTON_STATE_OVERRIDE = 0x8002, ///< Off button override request MSG_ID_STOP_BUTTON_STATE_OVERRIDE = 0x8003, ///< Stop button override request MSG_ID_ALARM_LAMP_PATTERN_OVERRIDE = 0x8004, ///< Alarm lamp pattern override request MSG_ID_WATCHDOG_TASK_CHECKIN_OVERRIDE = 0x8005, ///< Watchdog task check-in override request MSG_ID_ALARM_STATE_OVERRIDE = 0x8006, ///< Alarm state override request MSG_ID_ALARM_TIME_OVERRIDE = 0x8007, ///< Alarm time override request MSG_ID_BLOOD_FLOW_SET_PT_OVERRIDE = 0x8008, ///< Blood flow set point override request MSG_ID_BLOOD_FLOW_MEAS_OVERRIDE = 0x8009, ///< Blood flow measured override request MSG_ID_BLOOD_PUMP_MC_MEAS_SPEED_OVERRIDE = 0x800A, ///< Blood pump motor controller speed override request MSG_ID_BLOOD_PUMP_MC_MEAS_CURR_OVERRIDE = 0x800B, ///< Blood pump motor controller current override request MSG_ID_BLOOD_FLOW_SEND_INTERVAL_OVERRIDE = 0x800C, ///< Blood flow broadcast interval override request MSG_ID_TREATMENT_TIME_REMAINING_OVERRIDE = 0x800D, ///< Treatment time remaining override request MSG_ID_BLOOD_PUMP_MEAS_SPEED_OVERRIDE = 0x800E, ///< Blood pump measured motor speed override request MSG_ID_BLOOD_PUMP_MEAS_ROTOR_SPEED_OVERRIDE = 0x800F, ///< Blood pump measured rotor speed override request MSG_ID_DIAL_IN_FLOW_SET_PT_OVERRIDE = 0x8010, ///< Dialysate inlet flow set point override request MSG_ID_DIAL_IN_FLOW_MEAS_OVERRIDE = 0x8011, ///< Dialysate inlet flow measured override request MSG_ID_DIAL_IN_PUMP_MC_MEAS_SPEED_OVERRIDE = 0x8012, ///< Dialysate inlet pump motor controller speed override request MSG_ID_DIAL_IN_PUMP_MC_MEAS_CURR_OVERRIDE = 0x8013, ///< Dialysate inlet pump motor controller current override request MSG_ID_DIAL_IN_FLOW_SEND_INTERVAL_OVERRIDE = 0x8014, ///< Dialysate inlet flow broadcast interval override request MSG_ID_DIAL_IN_PUMP_MEAS_SPEED_OVERRIDE = 0x8015, ///< Dialysate inlet pump measured motor speed override request MSG_ID_DIAL_IN_PUMP_MEAS_ROTOR_SPEED_OVERRIDE = 0x8016, ///< Dialysate inlet pump measured rotor speed override request MSG_ID_PRESSURE_ARTERIAL_OVERRIDE = 0x8017, ///< Arterial pressure measured override request MSG_ID_PRESSURE_VENOUS_OVERRIDE = 0x8018, ///< Venous pressure measured override request MSG_ID_OCCLUSION_BLOOD_PUMP_OVERRIDE = 0x8019, ///< Blood pump occlusion pressure measured override request MSG_ID_BLOOD_ROTOR_COUNT_OVERRIDE = 0x801A, ///< Blood pump rotor count override request MSG_ID_HD_AIR_PUMP_SET_STATE = 0x801B, ///< HD set air pump state. MSG_ID_PRES_OCCL_SEND_INTERVAL_OVERRIDE = 0x801C, ///< Pressure and occlusion broadcast interval override request MSG_ID_SET_RTC_DATE_TIME = 0x801D, ///< RTC set date/time request MSG_ID_DIAL_OUT_FLOW_SEND_INTERVAL_OVERRIDE = 0x801E, ///< Dialysate outlet flow broadcast interval override request MSG_ID_DIAL_OUT_UF_REF_VOLUME_OVERRIDE = 0x801F, ///< Dialysate outlet - ultrafiltration reference volume override request MSG_ID_DIAL_OUT_UF_MEAS_VOLUME_OVERRIDE = 0x8020, ///< Dialysate outlet - ultrafiltration measured volume override request MSG_ID_DIAL_OUT_PUMP_MC_MEAS_SPEED_OVERRIDE = 0x8021, ///< Dialysate outlet pump motor controller speed override request MSG_ID_DIAL_OUT_PUMP_MC_MEAS_CURR_OVERRIDE = 0x8022, ///< Dialysate outlet pump motor controller current override request MSG_ID_DIAL_OUT_PUMP_MEAS_SPEED_OVERRIDE = 0x8023, ///< Dialysate outlet pump measured motor speed override request MSG_ID_DIAL_OUT_PUMP_MEAS_ROTOR_SPEED_OVERRIDE = 0x8024, ///< Dialysate outlet pump measured rotor speed override request MSG_ID_DIAL_OUT_LOAD_CELL_WEIGHT_OVERRIDE = 0x8025, ///< Load cell measured weight override request MSG_ID_HD_SAFETY_SHUTDOWN_OVERRIDE = 0x8026, ///< HD safety shutdown override request MSG_ID_HD_ACCEL_OVERRIDE = 0x8027, ///< HD accelerometer sensor override request MSG_ID_HD_ACCEL_MAX_OVERRIDE = 0x8028, ///< HD accelerometer sensor max. override request MSG_ID_HD_ACCEL_SEND_INTERVAL_OVERRIDE = 0x8029, ///< HD accelerometer data broadcast interval override request MSG_ID_HD_SYRINGE_PUMP_SEND_INTERVAL_OVERRIDE = 0x802A, ///< HD syringe pump data broadcast interval override request MSG_ID_HD_SYRINGE_PUMP_OPERATION_REQUEST = 0x802B, ///< HD syringe pump operation request MSG_ID_HD_SYRINGE_PUMP_MEASURED_RATE_OVERRIDE = 0x802C, ///< HD syringe pump measured rate override request MSG_ID_HD_SET_PARAMETER_TREATMENT_PARAMETER = 0x802D, ///< Set a treatment parameter (will change actual setting, not an override) MSG_ID_HD_VALVES_HOME = 0x802E, ///< Home an HD Valve MSG_ID_HD_VALVES_POSITION_OVERRIDE = 0x802F, ///< Set an HD valve to a position in counts MSG_ID_HD_VALVES_SET_AIR_TRAP_VALVE = 0x8030, ///< Set the HD air trap valve status MSG_ID_HD_VALVES_SET_PWM_OVERRIDE = 0x8031, ///< Set an HD valve PWM MSG_ID_HD_AIR_TRAP_SEND_INTERVAL_OVERRIDE = 0x8032, ///< HD air trap data broadcast interval override request MSG_ID_HD_AIR_TRAP_LEVEL_SENSOR_OVERRIDE = 0x8033, ///< HD air trap level sensor override request MSG_ID_HD_SOFTWARE_RESET_REQUEST = 0x8034, ///< HD reset request MSG_ID_HD_GET_SW_CONFIG_RECORD = 0x8035, ///< HD get software configuration record. MSG_ID_HD_SET_SW_CONFIG_RECORD = 0x8036, ///< HD set software configuration record. MSG_ID_BLOOD_PUMP_HOME_CMD = 0x8037, ///< Blood pump home command MSG_ID_DIAL_IN_PUMP_HOME_CMD = 0x8038, ///< Dialysate inlet pump home command MSG_ID_DIAL_OUT_PUMP_HOME_CMD = 0x8039, ///< Dialysate outlet pump home command MSG_ID_SUPER_CLEAR_ALARMS_CMD = 0x803A, ///< Clears all alarms (even if non-recoverable or fault) MSG_ID_HD_SYRINGE_PUMP_MEASURED_FORCE_OVERRIDE = 0x803B, ///< HD syringe pump measured force override request MSG_ID_HD_SYRINGE_PUMP_SYRINGE_DETECT_OVERRIDE = 0x803C, ///< HD syringe pump measured syringe detection override request MSG_ID_HD_SET_CALIBRATION_RECORD = 0x803D, ///< HD set calibration record that is received from Dialin MSG_ID_HD_GET_CALIBRATION_RECORD = 0x803E, ///< HD get calibration record that is requested from Dialin MSG_ID_HD_SEND_CALIBRATION_RECORD = 0x803F, ///< HD send calibration record to CAN bus to be received in Dialin (equivalent to publish) MSG_ID_HD_SET_SYSTEM_RECORD = 0x8040, ///< HD set system record that is received from Dialin MSG_ID_HD_GET_SYSTEM_RECORD = 0x8041, ///< HD get system record that is requested from Dialin MSG_ID_HD_SEND_SYSTEM_RECORD = 0x8042, ///< HD send system record to CAN bus to be received in Dialin (equivalent to publish) MSG_ID_HD_GET_SERVICE_RECORD = 0x8043, ///< HD get service record that is requested from Dialin MSG_ID_HD_SET_SERVICE_RECORD = 0x8044, ///< HD set service record that is received from Dialin MSG_ID_HD_SEND_SERVICE_RECORD = 0x8045, ///< HD send service record to CAN bus to be received in Dialin (equivalent to publish) MSG_ID_HD_SET_OP_MODE_REQUEST = 0x8046, ///< HD set operation mode request MSG_ID_HD_FLUID_LEAK_SEND_INTERVAL_OVERRIDE = 0x8047, ///< HD fluid leak state broadcast interval override request MSG_ID_HD_FLUID_LEAK_STATE_OVERRIDE = 0x8048, ///< HD fluid leak state override request MSG_ID_HD_SYRINGE_PUMP_MEASURED_HOME_OVERRIDE = 0x8049, ///< HD syringe pump measured home override request MSG_ID_HD_SYRINGE_PUMP_MEASURED_POSITION_OVERRIDE = 0x804A, ///< HD syringe pump measured position override request MSG_ID_HD_SYRINGE_PUMP_MEASURED_VOLUME_OVERRIDE = 0x804B, ///< HD syringe pump measured volume delivered override request MSG_ID_HD_BLOOD_LEAK_DATA_SEND_INTERVAL_OVERRIDE = 0x804C, ///< HD blood leak detector data broadcast interval override request MSG_ID_HD_BLOOD_LEAK_STATUS_OVERRIDE = 0x804D, ///< HD blood leak detector status override request MSG_ID_HD_BLOOD_LEAK_ZERO_REQUEST = 0x804E, ///< HD blood leak detector zero request MSG_ID_HD_MONITORED_VOLTAGES_SEND_INTERVAL_OVERRIDE = 0x8050, ///< HD monitored voltages publish interval override request MSG_ID_HD_MONITORED_VOLTAGES_OVERRIDE = 0x8051, ///< HD monitored voltage override request MSG_ID_HD_ALARM_INFO_SEND_INTERVAL_OVERRIDE = 0x8052, ///< HD alarm information broadcast interval override request MSG_ID_HD_ALARM_AUDIO_VOLUME_LEVEL_OVERRIDE = 0x8053, ///< HD alarm audio volume level override request MSG_ID_HD_ALARM_AUDIO_CURRENT_HG_OVERRIDE = 0x8054, ///< HD primary alarm audio (high gain) current override request MSG_ID_HD_ALARM_AUDIO_CURRENT_LG_OVERRIDE = 0x8055, ///< HD primary alarm audio (low gain) current override request MSG_ID_HD_ALARM_BACKUP_AUDIO_CURRENT_OVERRIDE = 0x8056, ///< HD backup alarm audio current override request MSG_ID_HD_VALVES_CURRENT_OVERRIDE = 0x8057, ///< HD valves current override request MSG_ID_HD_VALVES_POSITION_COUNT_OVERRIDE = 0x8058, ///< HD valves position counts override request MSG_ID_HD_SYRINGE_PUMP_STATUS_OVERRIDE = 0x8059, ///< HD syringe pump status override request MSG_ID_HD_SYRINGE_PUMP_ENCODER_STATUS_OVERRIDE = 0x805A, ///< HD syringe pump encoder status override request MSG_ID_HD_SYRINGE_PUMP_ADC_DAC_STATUS_OVERRIDE = 0x805B, ///< HD syringe pump ADC and DAC status override request MSG_ID_HD_SYRINGE_PUMP_ADC_READ_COUNTER_OVERRIDE = 0x805C, ///< HD syringe pump ADC read counter override request MSG_ID_HD_BUBBLES_DATA_SEND_INTERVAL_OVERRIDE = 0x805D, ///< HD air bubble detectors data broadcast interval override request MSG_ID_HD_BUBBLE_STATUS_OVERRIDE = 0x805E, ///< HD air bubble detector status override request MSG_ID_HD_BLOOD_PRIME_VOLUME_OVERRIDE = 0x805F, ///< HD blood prime volume override request MSG_ID_HD_BUBBLE_SELF_TEST_REQUEST = 0x8060, ///< HD air bubble detector self-test request MSG_ID_HD_AIR_PUMP_PUBLISH_INTERVAL_OVERRIDE = 0x8061, ///< HD air pump publish interval override MSG_ID_HD_SWITCHES_STATUS_OVERRIDE = 0x8062, ///< HD switches status override request MSG_ID_HD_SWITCHES_PUBLISH_INTERVAL_OVERRIDE = 0x8063, ///< HD switches data publish override request MSG_ID_HD_BATTERY_REMAINING_CAP_MWH_OVERRIDE = 0x8064, ///< HD battery remaining capacity (in mWh) override request MSG_ID_HD_TEMPERATURES_VALUE_OVERRIDE = 0x8065, ///< HD temperatures value override request MSG_ID_HD_TEMPERATURES_PUBLISH_INTERVAL_OVERRIDE = 0x8066, ///< HD temperatures data publish override request MSG_ID_HD_FANS_PUBLISH_INTERVAL_OVERRIDE = 0x8067, ///< HD fans data publish override request MSG_ID_HD_FANS_RPM_OVERRIDE = 0x8068, ///< HD fans RPM override request MSG_ID_HD_RINSEBACK_VOLUME_OVERRIDE = 0x8069, ///< HD rinseback volume override request MSG_ID_HD_SEND_SW_CONFIG_RECORD = 0x806A, ///< HD send software configuration record. MSG_ID_HD_ALARM_STATUS_PUBLISH_INTERVAL_OVERRIDE = 0x806B, ///< HD alarm status publish interval override request MSG_ID_HD_TREATMENT_TIME_DATA_PUBLISH_INTERVAL_OVERRIDE = 0x806C, ///< HD treatment time data publish interval override request MSG_ID_HD_TREATMENT_RANGES_PUBLISH_INTERVAL_OVERRIDE = 0x806D, ///< HD treatment param adjustment ranges publish interval override request MSG_ID_HD_TREATMENT_STOP_DATA_PUBLISH_INTERVAL_OVERRIDE = 0x806E, ///< HD treatment stop sub-mode data publish interval override request MSG_ID_HD_BLOOD_PRIME_DATA_PUBLISH_INTERVAL_OVERRIDE = 0x806F, ///< HD treatment blood prime sub-mode data publish interval override request MSG_ID_HD_RINSEBACK_DATA_PUBLISH_INTERVAL_OVERRIDE = 0x8070, ///< HD treatment rinseback sub-mode data publish interval override request MSG_ID_HD_STANDBY_DATA_PUBLISH_INTERVAL_OVERRIDE = 0x8071, ///< HD standby mode data publish interval override request MSG_ID_HD_OP_MODE_DATA_PUBLISH_INTERVAL_OVERRIDE = 0x8072, ///< HD operation mode data publish interval override request MSG_ID_HD_PRE_TREATMENT_DATA_PUBLISH_INTERVAL_OVERRIDE = 0x8073, ///< HD pre-treatment mode data publish interval override request MSG_ID_HD_TREATMENT_DATA_PUBLISH_INTERVAL_OVERRIDE = 0x8074, ///< HD treatment mode data publish interval override request MSG_ID_HD_POST_TREATMENT_DATA_PUBLISH_INTERVAL_OVERRIDE = 0x8075, ///< HD post treatment mode data publish interval override request MSG_ID_HD_BLOCK_MESSAGE_TRANSMISSION = 0x8076, ///< HD prevent transmission of given message(s) MSG_ID_HD_SYRINGE_PUMP_FORCE_SENSOR_DAC_CALIBRATE = 0x8077, ///< HD set syringe pump force sensor DAC calibration MSG_ID_HD_STOP_RTC_CLOCK = 0x8078, ///< HD stop RTC clock MSG_ID_HD_FANS_DUTY_CYCLE_OVERRIDE = 0x8079, ///< HD fans duty cycle override request MSG_ID_HD_SYRINGE_PUMP_HEPRIN_BOLUS_TARGET_RATE_OVERRIDE = 0x807A, ///< HD heprin bolus target rate override request MSG_ID_HD_REQ_CURRENT_TREATMENT_PARAMETERS = 0x807B, ///< HD request current treatment parameters MSG_ID_HD_RES_CURRENT_TREATMENT_PARAMETERS = 0x807C, ///< HD current treatment paramaters response MSG_ID_HD_SET_FANS_RPM_ALARM_START_TIME_OFFSET = 0x807D, ///< HD set fans RPM alarm start time offset MSG_ID_HD_GET_USAGE_INFO_RECORD = 0x807E, ///< HD get usage information record MSG_ID_HD_SET_USAGE_INFO_RECORD = 0x807F, ///< HD set usage information record MSG_ID_HD_SEND_USAGE_INFO_RECORD = 0x8080, ///< HD send usage information record MSG_ID_HD_SET_BLOOD_LEAK_2_EMB_MODE = 0x8081, ///< HD set blood leak sensor to embedded mode MSG_ID_HD_SET_BLOOD_LEAK_EMB_MODE_COMMAND = 0x8082, ///< HD set blood leak embedded mode command MSG_ID_HD_SEND_BLOOD_LEAK_EMB_MODE_RESPONSE = 0x8083, ///< HD send blood leak embedded mode response MSG_ID_HD_SEND_ALARMS_COMMAND = 0x8084, ///< HD re-send trigger messages for all active alarms request MSG_ID_HD_BLOOD_PUMP_SET_PWM = 0x8085, ///< HD set blood pump to specific PWM duty cycle request MSG_ID_HD_DIAL_IN_SET_PWM = 0x8086, ///< HD set dialysate inlet pump to specific PWM duty cycle request MSG_ID_HD_DIAL_OUT_SET_PWM = 0x8087, ///< HD set dialysate outlet pump to specific PWM duty cycle request MSG_ID_HD_DIALYSATE_INLET_PUMP_ROTOR_COUNT_OVERRIDE = 0x8088, ///< HD dialysate inlet pump rotor count override request MSG_ID_HD_NV_RECORD_CRC_OVERRIDE = 0x8089, ///< HD non-volatile record CRC override MSD_ID_HD_RTC_CTL_REG1_STATUS_OVERRIDE = 0x808A, ///< HD RTC control register 1 status override MSD_ID_HD_RTC_CTL_REG3_STATUS_OVERRIDE = 0x808B, ///< HD RTC control register 3 status override MSG_ID_HD_BATTERY_STATUS_OVERRIDE = 0x808C, ///< HD Battery status override MSG_ID_HD_BATTERY_CHARGER_STATUS_OVERRIDE = 0x808D, ///< HD Battery charger status override MSG_ID_HD_BATTERY_COMM_STATUS_OVERRIDE = 0x808E, ///< HD Battery comm status override MSG_ID_HD_DIAL_IN_PUMP_HARD_STOP = 0x808F, ///< HD dialysate inlet pump hard stop command MSG_ID_HD_DIAL_OUT_PUMP_HARD_STOP = 0x8090, ///< HD dialysate outlet pump hard stop command MSG_ID_HD_BLOOD_PUMP_HARD_STOP = 0x8091, ///< HD blood pump hard stop command MSG_ID_HD_DIALIN_CHECK_IN = 0x8092, ///< HD dialin check in MSG_ID_HD_ENABLE_VENOUS_BUBBLE_ALARM_DETECTION = 0x8093, ///< HD enable venous bubble alarm detection MSG_ID_HD_GET_TEST_CONFIGURATION = 0x8094, ///< HD get test configuration MSG_ID_HD_SEND_TEST_CONFIGURATION = 0x8095, ///< HD send test configuration MSG_ID_HD_RESET_ALL_TEST_CONFIGURATIONS = 0x8096, ///< HD reset all the configurations MSG_ID_HD_SET_TEST_CONFIGURATION = 0x8097, ///< HD set test configuration MSG_ID_HD_SIGNAL_RECOVER_FROM_FAULT_MODE = 0x8098, ///< HD signal recover from fault mode MSG_ID_HD_RAM_STATUS_OVERRIDE = 0x8099, ///< HD RAM status bit override MSG_ID_HD_VALVES_STATES_PUBLISH_INTERVAL_OVERRIDE = 0x809A, ///< HD Valve data broadcast interval override request MSG_ID_HD_CAN_RECEIVE_ACK_MESSAGE_OVERRIDE = 0x809B, ///< HD CAN message acknowledgment override request MSG_ID_FIRST_DG_TESTER_MESSAGE = 0xA000, ///< First DG test message ID MSG_ID_DG_TESTER_LOGIN_REQUEST = MSG_ID_FIRST_DG_TESTER_MESSAGE, ///< DG tester log-in MSG_ID_DG_ALARM_STATE_OVERRIDE = 0xA001, ///< DG alarm state override message ID MSG_ID_DG_WATCHDOG_TASK_CHECKIN_OVERRIDE = 0xA002, ///< Watchdog check-in override request MSG_ID_DG_SET_RTC_DATE_TIME = 0xA004, ///< DG RTC set date/time MSG_ID_LOAD_CELL_OVERRIDE = 0xA005, ///< Load cell sensor override request MSG_ID_PRESSURE_OVERRIDE = 0xA006, ///< Pressure sensor override request MSG_ID_PRESSURE_SEND_INTERVAL_OVERRIDE = 0xA007, ///< Pressure data broadcast interval override request MSG_ID_DG_HD_COMMUNICATION_STATUS_OVERRIDE = 0xA008, ///< DG HD Communication Status override MSG_ID_DG_SET_PRIMARY_AND_TRIMMER_HEATERS_TARGET_TEMP = 0xA009, ///< DG set primary and trimmer heater target temperature MSG_ID_RO_PUMP_SEND_INTERVAL_OVERRIDE = 0xA00A, ///< RO pump data broadcast interval override request MSG_ID_DRAIN_PUMP_SET_RPM = 0xA00B, ///< Drain pump set RPM override request MSG_ID_DRAIN_PUMP_SEND_INTERVAL_OVERRIDE = 0xA00C, ///< Drain pump data broadcast interval override request MSG_ID_LOAD_CELLL_SEND_INTERVAL_OVERRIDE = 0xA00D, ///< Load cell data broadcast interval override request MSG_ID_VALVE_STATE_OVERRIDE = 0xA00E, ///< Valve state override request MSG_ID_DG_VALVES_STATES_PUBLISH_INTERVAL_OVERRIDE = 0xA00F, ///< DG Valve data broadcast interval override request MSG_ID_TEMPERATURE_SENSORS_VALUE_OVERRIDE = 0xA010, ///< Temperature sensor override request MSG_ID_START_STOP_PRIMARY_HEATER = 0xA011, ///< Start/stop primary heaters MSG_ID_TEMPERATURE_SENSORS_PUBLISH_INTERVAL_OVERRIDE = 0xA012, ///< Temperature sensors data publish override MSG_ID_HEATERS_PUBLISH_INTERVAL_ORVERRIDE = 0xA013, ///< Heaters data publish override MSG_ID_DG_SAFETY_SHUTDOWN_OVERRIDE = 0xA014, ///< DG safety shutdown override request MSG_ID_CONDUCTIVITY_OVERRIDE = 0xA015, ///< Conductivity sensor override request MSG_ID_CONDUCTIVITY_PUBLISH_INTERVAL_OVERRIDE = 0xA016, ///< Conductivity sensors data publish override MSG_ID_DG_ACCEL_OVERRIDE = 0xA017, ///< DG accelerometer sensor override request MSG_ID_DG_ACCEL_MAX_OVERRIDE = 0xA018, ///< DG accelerometer sensor max. override request MSG_ID_DG_ACCEL_SEND_INTERVAL_OVERRIDE = 0xA019, ///< DG accelerometer data broadcast interval override request MSG_ID_DG_MONITORED_VOLTAGES_SEND_INTERVAL_OVERRIDE = 0xA01A, ///< DG monitored voltages publish interval override request MSG_ID_DG_MONITORED_VOLTAGES_OVERRIDE = 0xA01B, ///< DG monitored voltage override request MSG_ID_DRAIN_PUMP_TARGET_OUTLET_FLOW = 0xA01C, ///< Drain pump target outlet flow. MSG_ID_DG_SWITCHES_STATUS_OVERRIDE = 0xA01D, ///< DG switches status override MSG_ID_DG_SWITCHES_PUBLISH_INTERVAL_OVERRIDE = 0xA01E, ///< DG switches data publish interval override MSG_ID_DG_OP_MODE_PUBLISH_INTERVAL_OVERRIDE = 0xA01F, ///< DG operation mode publish interval override MSG_ID_DG_BLOCK_MESSAGE_TRANSMISSION = 0xA020, ///< HD prevent transmission of given message(s) MSG_ID_MEASURED_FLOW_SENSORS_OVERRIDE = 0xA021, ///< DG measured flow rate override request MSG_ID_DG_SOFTWARE_RESET_REQUEST = 0xA022, ///< DG reset request MSG_ID_DG_CONCENTRATE_PUMP_MEASURED_SPEED_OVERRIDE = 0xA023, ///< DG concentrate pump measured speed override request MSG_ID_CONCENTRATE_PUMP_TARGET_SPEED_OVERRIDE = 0xA024, ///< Concentrate pumps' target speed override request MSG_ID_UV_REACTORS_DATA_PUBLISH_INTERVAL_OVERRIDE = 0xA025, ///< UV reactors data publish interval override MSG_ID_CONCENTRATE_PUMP_STATE_CHANGE_REQUEST = 0xA026, ///< Concentrate pumps' state change request (on / off) MSG_ID_CONCENTRATE_PUMP_PUBLISH_INTERVAL_OVERRIDE = 0xA027, ///< Concentrate pumps' data publish interval override request MSG_ID_DG_START_STOP_UV_REACTORS = 0xA028, ///< DG start/stop UV reactors MSG_ID_DG_REQUEST_CALIBRATION_DATA = 0xA029, ///< Requests calibration data from DG MSG_ID_DG_FANS_DATA_PUBLISH_INTERVAL_OVERRIDE = 0xA02A, ///< DG fans data publish interval override request MSG_ID_DG_UV_REACTORS_HEALTH_OVERRIDE = 0xA02C, ///< DG UV reactors health override request MSG_ID_DG_THERMISTORS_DATA_PUBLISH_INTERVAL_OVERRIDE = 0xA02D, ///< DG thermistors data publish interval override MSG_ID_DG_THERMISTORS_VALUE_OVERRIDE = 0xA02E, ///< DG thermistors value override MSG_ID_DG_RO_PUMP_DUTY_CYCLE_OVERRIDE = 0xA02F, ///< DG RO pump duty cycle override MSG_ID_DG_VALVES_SENSED_STATE_OVERRIDE = 0xA030, ///< DG valves sensed state override MSG_ID_DG_SET_RO_PUMP_TARGET_FLOW = 0xA031, ///< DG set RO pump target flow rate MSG_ID_DG_RO_PUMP_TARGET_PRESSURE_OVERRIDE = 0xA032, ///< DG RO pump target pressure override MSG_ID_DG_SET_CALIBRATION_RECORD = 0xA033, ///< DG set calibration record that is received from Dialin MSG_ID_DG_GET_CALIBRATION_RECORD = 0xA034, ///< DG get calibration record that is requested from Dialin MSG_ID_DG_SEND_CALIBRATION_RECORD = 0xA035, ///< DG send calibration record to CAN bus to be received in Dialin (equivalent to publish) MSG_ID_DG_SET_SYSTEM_RECORD = 0xA036, ///< DG set system record that is received from Dialin MSG_ID_DG_GET_SYSTEM_RECORD = 0xA037, ///< DG get system record that is requested from Dialin MSG_ID_DG_SEND_SYSTEM_RECORD = 0xA038, ///< DG send system record to CAN bus to be received in Dialin (equivalent to publish) MSG_ID_DG_GET_SERVICE_RECORD = 0xA039, ///< DG get service record that is requested from Dialin MSG_ID_DG_SET_SERVICE_RECORD = 0xA03A, ///< DG set service record that is received from Dialin MSG_ID_DG_SEND_SERVICE_RECORD = 0xA03B, ///< DG send service record to CAN bus to be received in Dialin (equivalent to publish) MSG_ID_DG_GET_SCHEDULED_RUNS_RECORD = 0xA03C, ///< DG get scheduled runs that is requested from Dialin MSG_ID_DG_SET_SCHEDULED_RUNS_RECORD = 0xA03D, ///< DG set scheduled runs that is received from Dialin MSG_ID_DG_SEND_SCHEDULED_RUNS_RECORD = 0xA03E, ///< DG send scheduled runs to CAN bus to be received in Dialin (equivalent to publish) MSG_ID_DG_FLUID_LEAK_SEND_INTERVAL_OVERRIDE = 0xA03F, ///< DG fluid leak state broadcast interval override request MSG_ID_DG_FLUID_LEAK_STATE_DETECTOR_OVERRIDE = 0xA040, ///< DG fluid leak state detector override request MSG_ID_MSG_AVAILABLE_11 = 0xA041, ///< DG message ID available MSG_ID_FILTER_FLUSH_TIME_PERIOD_OVERRIDE = 0xA042, ///< DG filter flush time period override MSG_ID_DG_FANS_RPM_OVERRIDE = 0xA043, ///< DG fans RPM override MSG_ID_FLOW_DATA_PUBLISH_INTERVAL_OVERRIDE = 0xA044, ///< Flow data broadcast interval override request MSG_ID_DG_STOP_RTC_CLOCK = 0xA045, ///< DG stop RTC clock MSG_ID_DG_DRAIN_PUMP_MEASURED_RPM_OVERRIDE = 0xA046, ///< DG drain pump measured RPM override MSG_ID_DG_SUPER_CLEAR_ALARMS_CMD = 0xA047, ///< Clears all DG alarms (even if non-recoverable or fault) MSG_ID_DG_ALARM_INFO_SEND_INTERVAL_OVERRIDE = 0xA048, ///< DG alarm information broadcast interval override request MSG_ID_DG_START_STOP_TRIMMER_HEATER_CMD = 0xA049, ///< DG start/stop trimmer heater command MSG_ID_DG_GET_SW_CONFIG_RECORD = 0xA04A, ///< DG get software configuration record request MSG_ID_DG_SET_SW_CONFIG_RECORD = 0xA04B, ///< DG set software configuration record MSG_ID_DG_SEND_SW_CONFIG_RECORD = 0xA04C, ///< DG send software configuration record MSG_ID_DG_FANS_DUTY_CYCLE_OVERRIDE = 0xA04D, ///< DG fans duty cycle override request MSG_ID_DG_USED_ACID_VOLUME_ML_OVERRIDE = 0xA04E, ///< DG used acid volume override in mL MSG_ID_DG_SET_FANS_RPM_ALARM_START_TIME_OFFSET = 0xA04F, ///< DG set fans RPM alarm start time offset MSG_ID_DG_USED_BICARB_VOLUME_ML_OVERRIDE = 0xA050, ///< DG used bicarb volume override in mL MSG_ID_FILL_MODE_DATA_PUBLISH_INTERVAL_OVERRIDE = 0xA051, ///< DG used fill publish interval override request MSG_ID_DG_GEN_IDLE_PUBLISH_INTERVAL_OVERRIDE = 0xA052, ///< DG gen idle sub-states publish interval override request MSG_ID_DG_GET_USAGE_INFO_RECORD = 0xA053, ///< DG get usage information record MSG_ID_DG_SET_USAGE_INFO_RECORD = 0xA054, ///< DG set usage information record MSG_ID_DG_SEND_USAGE_INFO_RECORD = 0xA055, ///< DG send usage information record MSG_ID_DG_SET_OP_MODE_REQUEST = 0xA056, ///< DG set operation mode request MSG_ID_DG_RESERVOIR_TARE_REQUEST = 0xA057, ///< DG reservoir tare request MSG_ID_MSG_AVAILABLE_10 = 0xA058, ///< DG message ID available MSG_ID_DG_DRAIN_PUMP_CURRENT_OVERRIDE = 0xA059, ///< DG drain pump current override request MSG_ID_DG_DRAIN_PUMP_DIRECTION_OVERRIDE = 0xA05A, ///< DG drain pump direction override request MSG_ID_DG_RO_FEEDBACK_VOLTAGE_OVERRIDE = 0xA05B, ///< DG RO feedback voltage override MSG_ID_DG_DIALYSATE_FILL_INTEGRATED_VOLUME_OVERRIDE = 0xA05C, ///< DG dialysate fill integrated volume override MSG_ID_DG_NV_RECORD_CRC_OVERRIDE = 0xA05D, ///< DG non-volatile record CRC override MSG_ID_DG_CONC_PUMP_PARK_STATUS_OVERRIDE = 0xA05E, ///< DG concentrate pump parked status override MSG_ID_DG_CONC_PUMP_PARK_FAULT_STATUS_OVERRIDE = 0xA05F, ///< DG concentrate pump park fault status override MSG_ID_DG_CONC_PUMP_PARK_COMMAND = 0xA060, ///< DG concentrate pump park command MSG_ID_DG_HEATERS_DUTY_CYCLE_OVERRIDE = 0xA061, ///< DG heaters duty cycle override request MSD_ID_DG_RTC_CTL_REG1_STATUS_OVERRIDE = 0xA062, ///< DG RTC control register 1 status override MSD_ID_DG_RTC_CTL_REG3_STATUS_OVERRIDE = 0xA063, ///< DG RTC control register 3 status override MSG_ID_DG_NELSON_DISINFECT_SUPPORT = 0xA064, ///< DG Nelson labs disinfect support message MSG_ID_DG_SET_DIALYSATE_MIXING_RATIOS = 0xA065, ///< DG set dialysate mixing ratios MSG_ID_DG_SET_TEST_CONFIGURATION = 0xA066, ///< DG set test configuration MSG_ID_DG_GET_TEST_CONFIGURATION = 0xA067, ///< DG get test configuration MSG_ID_DG_SEND_TEST_CONFIGURATION = 0xA068, ///< DG send test configuration MSG_ID_DG_RESET_ALL_TEST_CONFIGURATIONS = 0xA069, ///< DG reset all the configurations MSG_ID_DG_DIALIN_CHECK_IN = 0xA06A, ///< DG Dialin check in MSG_ID_DG_GET_LOAD_CELLS_TARE_VALUES = 0xA06B, ///< DG get load cells tare values MSG_ID_DG_SET_LOAD_CELLS_TARE_VALUES = 0xA06C, ///< DG set load cells tare values MSG_ID_DG_SEND_LOAD_CELLS_TARE_VALUES = 0xA06D, ///< DG send load cells tare values to dialin MSG_ID_DG_SET_COND_SENSOR_CAL_TABLE = 0xA06E, ///< DG set conductivity sensor's calibration table MSG_ID_DG_SIGNAL_RECOVER_FROM_FAULT_MODE = 0xA06F, ///< DG signal recover from fault mode MSG_ID_DG_DRAIN_MODE_BROADCAST_INTERVAL_OVERRIDE = 0xA070, ///< DG drain mode broadcast interval override MSG_ID_DG_DIALIN_RO_ONLY_MODE_STATUS_REQUEST = 0xA071, ///< DG dialin ro only mode status request MSG_ID_DG_RAM_STATUS_OVERRIDE = 0xA072, ///< DG RAM status bit override MSG_ID_DG_CAN_RECEIVE_ACK_MESSAGE_OVERRIDE = 0xA073, ///< DG CAN message acknowledgment override request MSG_ID_DG_RESERVOIR_BROADCAST_INTERVAL_OVERRIDE = 0xA074, ///< DG reservoir broadcast interval override MSG_ID_DG_STATE_TIMER_77C_OVERRIDE = 0xA075, ///< DG heat disinfection state timer at 77C override MSG_ID_DG_STATE_TIMER_82C_OVERRIDE = 0xA076, ///< DG heat disinfection state timer at 82C override MSG_ID_HD_DEBUG_EVENT = 0xFFF1, ///< HD debug event text to be logged in event log MSG_ID_DG_DEBUG_EVENT = 0xFFF2, ///< DG 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_HEPARIN_PRESTOP_EXCEEDS_DURATION = 18, ///< The Heparin pre-stop setting is greater than the treatment duration REQUEST_REJECT_REASON_AVAILABLE_1 = 19, ///< Not used 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 herparin volume 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 HD to DG command request rejection reason codes enum Cmd_Request_Reject_Reasons { DG_CMD_REQUEST_REJECT_REASON_NONE = 0, ///< Used when there is no rejection DG_CMD_REQUEST_REJECT_REASON_INVALID_MODE = 1, ///< Command is not allowed in the current operating mode DG_CMD_REQUEST_REJECT_REASON_INVALID_PARAMETER = 2, ///< Command parameter is not valid NUM_OF_DG_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