Index: DGDefs.h =================================================================== diff -u -rb9965ff34817dcd69c73c588c634e6d8abd3a4c3 -rfc0036c2130f8254023e625e97a6e44034f88b4c --- DGDefs.h (.../DGDefs.h) (revision b9965ff34817dcd69c73c588c634e6d8abd3a4c3) +++ DGDefs.h (.../DGDefs.h) (revision fc0036c2130f8254023e625e97a6e44034f88b4c) @@ -142,12 +142,25 @@ enum DG_Generation_Idle_Mode_States { DG_GEN_IDLE_MODE_STATE_START = 0, ///< Start generation idle mode state - DG_GEN_IDLE_MODE_STATE_FLUSH_LINES, ///< Flush lines state - DG_GEN_IDLE_MODE_STATE_FLUSH_WATER, ///< Flush water state - NUM_OF_DG_GEN_IDLE_MODE_STATES ///< Number of fill mode states + DG_GEN_IDLE_MODE_STATE_FLUSH_WATER, /// Handle normal fill state (idle 0.0) + DG_GEN_IDLE_MODE_STATE_HANDLE_BAD_FILL, ///< Handle bad fill state (idle 1.0) + NUM_OF_DG_GEN_IDLE_MODE_STATES ///< Number of idle mode states }; typedef enum DG_Generation_Idle_Mode_States DG_GEN_IDLE_MODE_STATE_T; ///< Type for DG generation idle mode states enumeration +/// Enumeration of generation idle mode states. +enum DG_Generation_Idle_Mode_Bad_Fill_Substates +{ + DG_HANDLE_BAD_FILL_STATE_START = 0, ///< Bad fill start state + DG_HANDLE_BAD_FILL_STATE_FIRST_DRAIN, ///< First drain the dialysate (idle 1.0) + DG_HANDLE_BAD_FILL_STATE_FLUSH_FILL, ///< Flush then fill the dialysate (idle 1.1) + DG_HANDLE_BAD_FILL_STATE_SECOND_DRAIN, ///< Second drain the dialysate (idle 1.2) + DG_HANDLE_BAD_FILL_STATE_REFILL, ///< Refill the dialysate (idle 1.3) + DG_HANDLE_BAD_FILL_STATE_CLEAR_ALARM, ///< Clear wait for dialysate alarm to allow resume (idle 1.4) + NUM_OF_DG_HANDLE_BAD_FILL_STATES ///< Number of bad fill states +}; +typedef enum DG_Generation_Idle_Mode_Bad_Fill_Substates DG_GEN_IDLE_MODE_BAD_FILL_STATE_T; ///< Type for DG generation idle mode bad fill sub-states enumeration + /**@}*/ /** @@ -159,11 +172,13 @@ enum DG_Fill_Mode_States { DG_FILL_MODE_STATE_START = 0, ///< Start fill mode state - DG_FILL_MODE_STATE_CHECK_INLET_WATER, ///< Check inlet water quality state - DG_FILL_MODE_STATE_BICARB_PUMP_CHECK, ///< Run bicarb concentrate pump and check conductivity range - DG_FILL_MODE_STATE_ACID_PUMP_CHECK, ///< Run acid concentrate pump and check conductivity range - DG_FILL_MODE_STATE_DIALYSATE_PRODUCTION, ///< Dialysate production state - DG_FILL_MODE_STATE_DELIVER_DIALYSATE, ///< Deliver dialysate state + DG_FILL_MODE_STATE_TEST_INLET_WATER, ///< Test inlet water quality state + DG_FILL_MODE_STATE_PRIME_CONCENTRATE_LINES, ///< Prime the acid and bicarb concentrate lines + DG_FILL_MODE_STATE_FLUSH_BUBBLES, ///< Flush the bubbles in the lines state + DG_FILL_MODE_STATE_TEST_BICARB_CONDUCTIVITY, ///< Test the conductivity range of the bicarb concentrate state + DG_FILL_MODE_STATE_TEST_ACID_CONDUCTIVITY, ///< Test the conductivity range of the acid concentrate state + DG_FILL_MODE_STATE_PRODUCE_DIALYSATE, ///< Dialysate production state + DG_FILL_MODE_STATE_DELIVER_DIALYSATE, ///< Dialysate deliver state DG_FILL_MODE_STATE_PAUSED, ///< Dialysate generation pause state NUM_OF_DG_FILL_MODE_STATES ///< Number of fill mode states }; Index: MsgDefs.h =================================================================== diff -u -raa5056a58c26398a2bacc3639ac3a5538c978701 -rfc0036c2130f8254023e625e97a6e44034f88b4c --- MsgDefs.h (.../MsgDefs.h) (revision aa5056a58c26398a2bacc3639ac3a5538c978701) +++ MsgDefs.h (.../MsgDefs.h) (revision fc0036c2130f8254023e625e97a6e44034f88b4c) @@ -8,27 +8,27 @@ * * @file MsgDefs.h * -* @author (last) Sean Nash -* @date (last) 15-Mar-2022 +* @author (last) Michael Garthwaite +* @date (last) 10-Mar-2022 * * @author (original) Sean * @date (original) 27-Feb-2020 * ***************************************************************************/ - -#ifndef __MESSAGE_DEFINITIONS_H__ -#define __MESSAGE_DEFINITIONS_H__ - + +#ifndef __MESSAGE_DEFINITIONS_H__ +#define __MESSAGE_DEFINITIONS_H__ + // ********** public definitions ********** /** * @addtogroup SystemCommMessages * @{ - */ - + */ + /// Enumeration of system message IDs -enum Msg_IDs -{ // normal CAN messages +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 @@ -55,7 +55,7 @@ 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_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 @@ -73,16 +73,16 @@ 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_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 = 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_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_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 disinfect publish data MSG_ID_UI_INITIATE_TREATMENT_REQUEST = 0x38, ///< UI user request to initiate a treatment @@ -203,15 +203,17 @@ MSG_ID_DG_SCHEDULED_RUNS_DATA = 0xAB, ///< DG scheduled runs data MSG_ID_DG_SCHEDULED_RUNS_INFO = 0xAC, ///< DG scheduled runs info to be sent to the UI and Dialin 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_BAD_FILL_SUB_STATE = 0xAF, ///< DG broadcast of idle mode bad fill sub-state -#ifdef EMC_TEST_BUILD - MSG_ID_CAN_ERROR_COUNT = 0x999, // test code in support of EMC testing -#endif - - // service/test CAN messages +#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_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 @@ -248,12 +250,12 @@ 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_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 @@ -335,7 +337,7 @@ 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_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 @@ -353,15 +355,15 @@ 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_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_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_PRESSURE = 0xA01C, ///< Drain pump target outlet pressure. @@ -413,21 +415,24 @@ 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___AVAILABLE_1 = 0xA04E, ///< Message ID is available for use + 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 concentrate publish interval override request + MSG_ID_BAD_FILL_STATES_PUBLISH_INTERVAL_OVERRIDE = 0xA052, ///< DG bad fill sub-states publish interval override request + 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 -{ +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 @@ -489,5 +494,5 @@ typedef enum Cmd_Request_Reject_Reasons CMD_REQUEST_REJECT_REASON_CODE_T; ///< Type for command request rejection reason codes enumeration /**@}*/ - -#endif + +#endif