Index: MsgDefs.h =================================================================== diff -u -r03cc72d18faff84b320ab9675efd6fa5e9a36ce0 -r70b03310f630755509ceac5fc71c65686b99ae8b --- MsgDefs.h (.../MsgDefs.h) (revision 03cc72d18faff84b320ab9675efd6fa5e9a36ce0) +++ MsgDefs.h (.../MsgDefs.h) (revision 70b03310f630755509ceac5fc71c65686b99ae8b) @@ -1,166 +1,231 @@ -/**********************************************************************//** - * - * Copyright (c) 2019-2020 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 - * - * @date 27-Feb-2020 - * @author S. Nash - * - * @brief header file for Message Definitions module. - * - **************************************************************************/ +/************************************************************************** +* +* Copyright (c) 2019-2020 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 Nash +* @date (last) 05-Aug-2020 +* +* @author (original) Sean +* @date (original) 27-Feb-2020 +* +***************************************************************************/ #ifndef __MESSAGE_DEFINITIONS_H__ #define __MESSAGE_DEFINITIONS_H__ -// ********** public definitions ********** +// ********** public definitions ********** + +/** + * @addtogroup SystemMessageIDs + * @{ + */ -/// Enumeration of system message IDs. +/// Enumeration of system message IDs enum Msg_IDs { // normal CAN messages - MSG_ID_UNUSED = 0, ///< Zero is an undefined (un-used) message ID). - MSG_ID_OFF_BUTTON_PRESS = 1, ///< HD/UI off button interactions. - MSG_ID_ALARM_STATUS = 2, ///< HD broadcast of system alarm state information. - MSG_ID_ALARM_TRIGGERED = 3, ///< HD broadcast of a triggered alarm. - MSG_ID_ALARM_CLEARED = 4, ///< HD broadcast of a cleared alarm. - MSG_ID_BLOOD_FLOW_DATA = 5, ///< HD broadcast of blood flow/pump data. - MSG_ID_DG_CHECK_IN = 6, ///< DG check-in with HD. - MSG_ID_UI_CHECK_IN = 7, ///< UI check-in with HD. - MSG_ID_DIALYSATE_FLOW_DATA = 8, ///< HD broadcast of dialysate inlet flow/pump data. - MSG_ID_PRESSURE_OCCLUSION_DATA = 9, ///< HD broadcast of pressure/occlusion data. - MSG_ID_RTC_EPOCH = 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 = 0xC, ///< DG broadcast of load cell weights. - MSG_ID_TREATMENT_TIME = 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 = 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 = 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_UNUSED = 0, ///< Zero is an undefined (un-used) message ID) + MSG_ID_OFF_BUTTON_PRESS = 1, ///< HD/UI off button interactions + MSG_ID_ALARM_STATUS = 2, ///< HD broadcast of system alarm state information + MSG_ID_ALARM_TRIGGERED = 3, ///< HD broadcast of a triggered alarm + MSG_ID_ALARM_CLEARED = 4, ///< HD broadcast of a cleared alarm + MSG_ID_BLOOD_FLOW_DATA = 5, ///< HD broadcast of blood flow/pump data + MSG_ID_DG_CHECK_IN = 6, ///< DG check-in with HD + MSG_ID_UI_CHECK_IN = 7, ///< UI check-in with HD + MSG_ID_DIALYSATE_FLOW_DATA = 8, ///< HD broadcast of dialysate inlet flow/pump data + MSG_ID_PRESSURE_OCCLUSION_DATA = 9, ///< HD broadcast of pressure/occlusion data + MSG_ID_RTC_EPOCH = 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 = 0xC, ///< DG broadcast of load cell weights + MSG_ID_TREATMENT_TIME = 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 = 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 = 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 = 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_REQUEST_FW_VERSIONS = 0x1C, ///< UI request for f/w versions. - MSG_ID_HD_VERSION = 0x1D, ///< HD f/w version. - MSG_ID_DG_VERSION = 0x1E, ///< DG f/w version. - 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 = 0x21, ///< HD request to DG to switch reservoirs (A->B or B->A). - MSG_ID_DG_FILL_CMD = 0x22, ///< HD request to DG to fill inactive reservoir. - MSG_ID_DG_DRAIN_CMD = 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 = 0x25, ///< HD broadcast current operating mode. - MSG_ID_STARTING_STOPPING_TREATMENT_CMD = 0x26, ///< HD request to DG to move in/out of standby mode due to treatment start/stop. - MSG_ID_DG_OP_MODE = 0x27, ///< DG broadcast current operating mode. - MSG_ID_DG_RESERVOIR_DATA = 0x28, ///< DG broadcast reservoir data. - MSG_ID_DG_SAMPLE_WATER_CMD = 0x29, ///< HD request to DG to allow user to get a water sample. - MSG_ID_DG_VALVES_STATES = 0x2A, ///< DG broadcast valve states. - MSG_ID_DG_START_STOP_TRIMMER_HEATER_CMD = 0x2B, ///< HD request to DG to start/stop trimmer heater. + MSG_ID_USER_TREATMENT_TIME_CHANGE_RESPONSE = 0x1B, ///< HD response to user request to change treatment duration + MSG_ID_REQUEST_FW_VERSIONS = 0x1C, ///< UI request for f/w versions + MSG_ID_HD_VERSION = 0x1D, ///< HD f/w version + MSG_ID_DG_VERSION = 0x1E, ///< DG f/w version + 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 = 0x21, ///< HD request to DG to switch reservoirs (A->B or B->A) + MSG_ID_DG_FILL_CMD = 0x22, ///< HD request to DG to fill inactive reservoir + MSG_ID_DG_DRAIN_CMD = 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 = 0x25, ///< HD broadcast current operating mode + MSG_ID_STARTING_STOPPING_TREATMENT_CMD = 0x26, ///< HD request to DG to move in/out of standby mode due to treatment start/stop + MSG_ID_DG_OP_MODE = 0x27, ///< DG broadcast current operating mode + MSG_ID_DG_RESERVOIR_DATA = 0x28, ///< DG broadcast reservoir data + MSG_ID_DG_SAMPLE_WATER_CMD = 0x29, ///< HD request to DG to allow user to get a water sample + MSG_ID_DG_VALVES_STATES = 0x2A, ///< DG broadcast valve states + MSG_ID_DG_START_STOP_TRIMMER_HEATER_CMD = 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_USER_UF_SETTINGS_CHANGE_CONFIRMATION_RESPONSE = 0x2E, ///< HD response to user selection of ultrafiltration settings change option selection + MSG_ID_DG_START_STOP_HEAT_DISINFECT = 0x2F, ///< HD request to start or stop DG heat disinfection + MSG_ID_SALINE_BOLUS_DATA = 0x30, ///< HD broadcast of saline bolus data + MSG_ID_DG_CONDUCTIVITY_DATA = 0x31, ///< DG broadcast of the conductivity sensors data + MSG_ID_USER_REQUEST_ALARM_SILENCE = 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 = 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 disinfection publish data + MSG_ID_UI_START_TREATMENT = 0x38, ///< UI user request to initiate a treatment + MSG_ID_HD_START_TREATMENT_RESPONSE = 0x39, ///< HD response to user request to initiate a treatment + MSG_ID_HD_VALVES_DATA = 0x3A, ///< HD broadcast of valves + MSG_ID_UI_USER_CONFIRM_TREATMENT_PARAMS = 0x3B, ///< UI user confirmation of treatment parameters + MSG_ID_UI_TREATMENT_END_REQUEST = 0x3C, ///< UI user treatment end request + MSG_ID_HD_TREATMENT_END_RESPONSE = 0x3D, ///< HD response to user request to end treatment + + MSG_ID_TEMP_FAST_HD_VALVES_REMOVE_LATER = 0x6D, ///< TODO REMOVE FOR FAST TESING ONLY +#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_HD_MESSAGE = 0x8001, ///< HD message. TODO - needed? - 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_ALARM_STATUS_SEND_INTERVAL_OVERRIDE = 0x800D, ///< Alarm status broadcast interval 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_OCCLUSION_DIAL_IN_PUMP_OVERRIDE = 0x801A, ///< Dialysate inlet pump occlusion pressure measured override request. - MSG_ID_OCCLUSION_DIAL_OUT_PUMP_OVERRIDE = 0x801B, ///< Dialysate outlet pump occlusion pressure measured override request. - 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_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_HD_MESSAGE = 0x8001, ///< Obsolete - TODO - remove when all references to this ID are deleted + 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_ALARM_STATUS_SEND_INTERVAL_OVERRIDE = 0x800D, ///< Alarm status broadcast interval 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_OCCLUSION_DIAL_IN_PUMP_OVERRIDE = 0x801A, ///< Dialysate inlet pump occlusion pressure measured override request + MSG_ID_OCCLUSION_DIAL_OUT_PUMP_OVERRIDE = 0x801B, ///< Dialysate outlet pump occlusion pressure measured override request + 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_ACCEL_SET_CALIBRATION = 0x802A, ///< HD accelerometer set calibration factors request + MSG_ID_HD_BLOOD_FLOW_SET_CALIBRATION = 0x802B, ///< Blood flow set calibration factors request + MSG_ID_HD_DIALYSATE_FLOW_SET_CALIBRATION = 0x802C, ///< Dialysate flow set calibration factors 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_BLOOD_TRAP_VALVE = 0x8030, ///< Set the HD blood trap valve status - 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_RO_PUMP_SET_PT_OVERRIDE = 0xA008, ///< RO pump set pt. override request. - MSG_ID_RO_MEASURED_FLOW_OVERRIDE = 0xA009, ///< RO measured flow rate override request. - MSG_ID_RO_PUMP_SEND_INTERVAL_OVERRIDE = 0xA00A, ///< RO pump data broadcast interval override request. - MSG_ID_DRAIN_PUMP_SET_PT_OVERRIDE = 0xA00B, ///< Drain pump set pt. 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_VALVES_STATES_PUBLISH_INTERVAL_OVERRIDE = 0xA00F, ///< Valve data broadcast interval override request. - MSG_ID_TEMPERATURE_SENSORS_VALUE_OVERRIDE = 0xA010, ///< Temperature sensor 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_RO_PUMP_SET_PT_OVERRIDE = 0xA008, ///< RO pump set pt. override request + MSG_ID_RO_MEASURED_FLOW_OVERRIDE = 0xA009, ///< RO measured flow rate override request + MSG_ID_RO_PUMP_SEND_INTERVAL_OVERRIDE = 0xA00A, ///< RO pump data broadcast interval override request + MSG_ID_DRAIN_PUMP_SET_RPM_OVERRIDE = 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_VALVES_STATES_PUBLISH_INTERVAL_OVERRIDE = 0xA00F, ///< 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. - END_OF_MSG_IDS ///< # of system message IDs. -}; -/// Type for message IDs enumeration. -typedef enum Msg_IDs MSG_ID_T; + 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_ACCEL_SET_CALIBRATION = 0xA01A, ///< DG accelerometer set calibration factors request + MSG_ID_RO_PUMP_SET_PWM = 0xA01B, ///< RO pump set PWM for open loop + MSG_ID_DRAIN_PUMP_SET_DELTA_PRESSURE_OVERRIDE = 0xA01C, ///< Drain pump set delta pressure override + MSG_ID_HEAT_DISINFECT_RECIRC_PATH_DURATION_MINS = 0xA01D, ///< Heat disinfection recirculation path duration in minutes + MSG_ID_HEAT_DISINFECT_R1_TO_R2_DURATION_MINS = 0xA01E, ///< Heat disinfection reservoir 1 to reservoir 2 duration in minutes + MSG_ID_HEAT_DISINFECT_R2_TO_R1_DURATION_MINS = 0xA01F, ///< Heat disinfection reservoir 2 to reservoir 1 duration in minutes + MSG_ID_HEAT_DISINFECT_NO_OF_CYCLES_TO_RUN = 0xA020, ///< Heat disinfection number of cycles to run + MSG_ID_HEAT_DISINFECT_PUBLISH_INTERVAL_OVERRIDE = 0xA021, ///< Heat disinfection data publish interval override request -/// Enumeration of settings change rejection reason codes. + 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 + + END_OF_MSG_IDS ///< End of system message IDs +}; +typedef enum Msg_IDs MSG_ID_T; ///< Type for message IDs enumeration + +/**@}*/ + +/** + * @addtogroup RequestRejectReasonsID + * @{ + */ + +/// 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, ///< Request is not allowed in the current operating mode. - REQUEST_REJECT_REASON_TIMEOUT_WAITING_FOR_USER_CONFIRM, ///< Validated request was not confirmed by user in reasonable time. - REQUEST_REJECT_REASON_NOT_IN_TREATMENT_MODE, ///< Request is not allowed if not in treatment mode. - REQUEST_REJECT_REASON_INVALID_TREATMENT_STATE, ///< Request is not allowed in current treatment state. - REQUEST_REJECT_REASON_TREATMENT_TOO_CLOSE_TO_FINISHED, ///< Request is not allowed so near end of treatment. - REQUEST_REJECT_REASON_TREATMENT_TIME_OUT_OF_RANGE, ///< Treatment duration is out of range. - REQUEST_REJECT_REASON_TREATMENT_TIME_LESS_THAN_CURRENT, ///< Treatment time change is less than currently elapsed treatment time. - REQUEST_REJECT_REASON_BLOOD_FLOW_OUT_OF_RANGE, ///< Blood flow is out of range. - REQUEST_REJECT_REASON_DIAL_FLOW_OUT_OF_RANGE, ///< Dialysate flow is out of range. - REQUEST_REJECT_REASON_DIAL_VOLUME_OUT_OF_RANGE, ///< Dialysate flow rate or treatment duration causes dialysate volume to exceed limit. - REQUEST_REJECT_REASON_UF_VOLUME_OUT_OF_RANGE, ///< Ultrafiltration volume is out of range. - REQUEST_REJECT_REASON_UF_RATE_OUT_OF_RANGE, ///< Ultrafiltration rate is out of range. - REQUEST_REJECT_REASON_TREATMENT_TIME_LESS_THAN_MINIMUM, ///< Treatment time change is less than minimum treatment time. - REQUEST_REJECT_REASON_UF_NOT_IN_PROGESS, ///< Ultrafiltration is not currently in progress. - REQUEST_REJECT_REASON_UF_NOT_PAUSED, ///< Ultrafiltration is not currently paused. - REQUEST_REJECT_REASON_SALINE_BOLUS_IN_PROGRESS, ///< A saline bolus is in progress. - NUM_OF_REQUEST_REJECT_REASONS ///< Number of settings change reject codes. -}; -/// Type for settings change rejection reason codes enumeration. -typedef enum Request_Reject_Reasons REQUEST_REJECT_REASON_CODE_T; + REQUEST_REJECT_REASON_NONE = 0, ///< Used when there is no rejection + REQUEST_REJECT_REASON_NOT_ALLOWED_IN_CURRENT_MODE, ///< Request is not allowed in the current operating mode + REQUEST_REJECT_REASON_TIMEOUT_WAITING_FOR_USER_CONFIRM, ///< Validated request was not confirmed by user in reasonable time + REQUEST_REJECT_REASON_NOT_IN_TREATMENT_MODE, ///< Request is not allowed if not in treatment mode + REQUEST_REJECT_REASON_INVALID_TREATMENT_STATE, ///< Request is not allowed in current treatment state + REQUEST_REJECT_REASON_TREATMENT_TOO_CLOSE_TO_FINISHED, ///< Request is not allowed so near end of treatment + REQUEST_REJECT_REASON_TREATMENT_TIME_OUT_OF_RANGE, ///< Treatment duration is out of range + REQUEST_REJECT_REASON_TREATMENT_TIME_LESS_THAN_CURRENT, ///< Treatment time change is less than currently elapsed treatment time + REQUEST_REJECT_REASON_BLOOD_FLOW_OUT_OF_RANGE, ///< Blood flow is out of range + REQUEST_REJECT_REASON_DIAL_FLOW_OUT_OF_RANGE, ///< Dialysate flow is out of range + REQUEST_REJECT_REASON_DIAL_VOLUME_OUT_OF_RANGE, ///< Dialysate flow rate or treatment duration causes dialysate volume to exceed limit + REQUEST_REJECT_REASON_UF_VOLUME_OUT_OF_RANGE, ///< Ultrafiltration volume is out of range + REQUEST_REJECT_REASON_UF_RATE_OUT_OF_RANGE, ///< Ultrafiltration rate is out of range + REQUEST_REJECT_REASON_TREATMENT_TIME_LESS_THAN_MINIMUM, ///< Treatment time change is less than minimum treatment time + REQUEST_REJECT_REASON_UF_NOT_IN_PROGESS, ///< Ultrafiltration is not currently in progress + REQUEST_REJECT_REASON_UF_NOT_PAUSED, ///< Ultrafiltration is not currently paused + REQUEST_REJECT_REASON_SALINE_BOLUS_IN_PROGRESS, ///< A saline bolus is in progress + REQUEST_REJECT_REASON_PARAM_OUT_OF_RANGE, ///< A treatment parameter is out of range + REQUEST_REJECT_REASON_HEPARIN_PRESTOP_EXCEEDS_DURATION, ///< The Heparin pre-stop setting is greater than the treatment duration + REQUEST_REJECT_REASON_ARTERIAL_PRESSURE_LOW_VS_HIGH, ///< Arterial pressure low and high alarm limits are not inconsistent + REQUEST_REJECT_REASON_VENOUS_PRESSURE_LOW_VS_HIGH, ///< Venous pressure low and high alarm limits are inconsistent + 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 + +/**@}*/ #endif