Index: TDDefs.h =================================================================== diff -u -rbf926947342bad2327352d878c681401a6b2d994 -r099ccd3d956cd529b4282350d0bff998ea10ec38 --- TDDefs.h (.../TDDefs.h) (revision bf926947342bad2327352d878c681401a6b2d994) +++ TDDefs.h (.../TDDefs.h) (revision 099ccd3d956cd529b4282350d0bff998ea10ec38) @@ -7,8 +7,8 @@ * * @file TDDefs.h * -* @author (last) Raghu Kallala -* @date (last) 28-Apr-2026 +* @author (last) Dara Navaei +* @date (last) 27-May-2026 * * @author (original) Sean Nash * @date (original) 01-Aug-2024 @@ -35,6 +35,7 @@ MODE_PRET, ///< Pre-Treatment mode MODE_TREA, ///< Treatment mode MODE_POST, ///< Post-Treatment mode + MODE_UPDT, ///< Update mode MODE_NLEG, ///< Not legal - an illegal mode transition occurred NUM_OF_MODES ///< Number of TD operation modes }; @@ -66,6 +67,7 @@ POST_STATE_STUCK_BUTTON, ///< Run stuck button test state POST_STATE_UI_POST, ///< Check whether UI passed its POST tests POST_STATE_FW_COMPATIBILITY, ///< Run firmware compatibility test state + POST_STATE_EJECTOR_HOMING, ///< Run ejector homing POST state POST_STATE_FPGA, ///< Run FPGA test state POST_STATE_COMPLETED, ///< POST self-tests completed state POST_STATE_FAILED, ///< POST self-tests failed state @@ -112,6 +114,22 @@ /**@}*/ /** + * @addtogroup TDUpdateMode + * @{ + */ + +/// Sub-mode states while in update mode +enum TD_Update_States +{ + TD_UPDATE_INIT_STATE = 0, ///< Start update state. + TD_UPDATE_RESET_MCU_STATE, ///< Reset MCU state. + NUM_OF_TD_UPDATE_STATES ///< Number of update states (sub-modes). +}; +typedef enum TD_Update_States TD_UPDATE_STATE_T; ///< Type for TD update states enumeration + +/**@}*/ + +/** * @addtogroup TDPreTreatmentMode * @{ */ @@ -122,7 +140,7 @@ TD_PRE_TREATMENT_WATER_SAMPLE_STATE = 0, ///< Water sample state TD_PRE_TREATMENT_SELF_TEST_CONSUMABLE_STATE, ///< Consumable self-tests state TD_PRE_TREATMENT_SELF_TEST_NO_CART_STATE, ///< No cartridge self-tests state - TD_PRE_TREATMENT_CART_INSTALL_STATE, ///< Consumable and cartridge installation state + TD_PRE_TREATMENT_TUBING_SET_INSTALL_STATE, ///< Tube set install state TD_PRE_TREATMENT_SELF_TEST_DRY_STATE, ///< Self-tests when the cartridge is dry state TD_PRE_TREATMENT_PRIME_STATE, ///< Prime blood and dialysate circuits and run wet self-tests state TD_PRE_TREATMENT_RECIRCULATE_STATE, ///< Re-circulate blood and dialysate circuits state @@ -206,24 +224,26 @@ /// Enumeration of dry self-tests sub-mode states. enum TD_Pre_Treatment_Dry_Self_Tests_States { - DRY_SELF_TESTS_START_STATE = 0, ///< Dry self-tests starting state - DRY_SELF_TESTS_WAIT_FOR_DOOR_CLOSE_STATE, ///< Wait for door to close before executing self-tests - DRY_SELF_TESTS_USED_CARTRIDGE_CHECK_STATE, ///< Used cartridge check dry self-test state - DRY_SELF_TESTS_CARTRIDGE_LOADED_CHECK_STATE, ///< Cartridge loaded check dry self-test state - DRY_SELF_TESTS_SYRINGE_PUMP_SEEK_STATE, ///< Seek syringe pumps state - DRY_SELF_TESTS_PRESSURE_SENSORS_NORMAL_SETUP_STATE, ///< Pressure sensor setup state - DRY_SELF_TESTS_PRESSURE_SENSORS_VENOUS_SETUP_STATE, ///< Venous pressure sensor dry self-test setup valves and pump state - DRY_SELF_TESTS_PRESSURE_SENSORS_VENOUS, ///< Venous pressure sensor dry self-test - DRY_SELF_TESTS_PRESSURE_SENSORS_ARTERIAL_SETUP_STATE, ///< Arterial pressure sensor dry self-test setup valves and pump state - DRY_SELF_TESTS_PRESSURE_SENSORS_ARTERIAL, ///< Arterial pressure sensor dry self-test - DRY_SELF_TESTS_PRESSURE_SENSORS_DECAY_STATE, ///< Pressure sensors verify pressure loss state - DRY_SELF_TESTS_PRESSURE_SENSORS_STABILITY_STATE, ///< Pressure sensors verify pressure stability state - DRY_SELF_TESTS_PRESSURE_SENSORS_NORMAL_STATE, ///< Pressure sensors verify normal pressure readings state - DRY_SELF_TESTS_SYRINGE_PUMP_PRIME_STATE, ///< Prime syringe pump state - DRY_SELF_TESTS_SYRINGE_PUMP_OCCLUSION_DETECTION_STATE, ///< Occlusion detection state - DRY_SELF_TESTS_STOPPED_STATE, ///< Dry self-test stopped state - DRY_SELF_TESTS_COMPLETE_STATE, ///< Dry self-test complete state - NUM_OF_DRY_SELF_TESTS_STATES ///< Number of dry self-tests states + DRY_SELF_TESTS_START_STATE = 0, ///< Dry self-tests start state + DRY_SELF_TESTS_WAIT_FOR_DOOR_CLOSE_STATE, ///< Wait for door close state + DRY_SELF_TESTS_USED_TUBE_SET_CHECK_STATE, ///< Used tube set check state + DRY_SELF_TESTS_TUBE_SET_LOADED_CHECK_STATE, ///< Tube set loaded check state + DRY_SELF_TESTS_TUBE_SET_AUTHENTICATION_STATE, ///< Tube set authentication state + DRY_SELF_TESTS_SYRINGE_PUMP_SEEK_STATE, ///< Syringe pump seek state + DRY_SELF_TESTS_PRESSURE_SENSOR_NORMAL_SETUP_STATE, ///< Pressure sensor normal setup state + DRY_SELF_TESTS_PRESSURE_VENOUS_SETUP_STATE, ///< Pressure venous setup state + DRY_SELF_TESTS_VENOUS_PRESSURE_STABILIZATION_STATE, ///< Venous pressure stabilization state + DRY_SELF_TESTS_VENOUS_PRESSURE_LEAK_CHECK_STATE, ///< Venous pressure leak check state + DRY_SELF_TESTS_VENOUS_PRESSURE_RELIEF_STATE, ///< Venous pressure relief state + DRY_SELF_TESTS_PRESSURE_ARTERIAL_SETUP_STATE, ///< Pressure arterial setup state + DRY_SELF_TESTS_ARTERIAL_PRESSURE_STABILIZATION_STATE, ///< Arterial pressure stabilization state + DRY_SELF_TESTS_ARTERIAL_PRESSURE_LEAK_CHECK_STATE, ///< Arterial pressure leak check state + DRY_SELF_TESTS_ARTERIAL_PRESSURE_RELIEF_STATE, ///< Arterial pressure relief state + DRY_SELF_TESTS_SYRINGE_PUMP_PRIME_STATE, ///< Syringe prime state + DRY_SELF_TESTS_SYRINGE_PUMP_OCCLUSION_CHECK_STATE, ///< Syringe pump occlusion check state + DRY_SELF_TESTS_COMPLETE_STATE, ///< Complete state + DRY_SELF_TESTS_STOPPED_STATE, ///< Stopped state + NUM_OF_DRY_SELF_TESTS_STATES ///< Number of dry self-tests states }; /// Type for dry self-tests enumeration. typedef enum TD_Pre_Treatment_Dry_Self_Tests_States DRY_SELF_TESTS_STATE_T; @@ -347,8 +367,8 @@ /// Enumeration of post-treatment mode states. enum TD_Post_Treatment_Mode_States { - TD_POST_TREATMENT_DRAIN_RESERVOIRS_STATE = 0, ///< Drain reservoirs state - TD_POST_TREATMENT_PATIENT_DISCONNECTION_STATE, ///< Patient disconnection state + TD_POST_TREATMENT_PATIENT_DISCONNECTION_STATE = 0, ///< Patient disconnection state + TD_POST_TREATMENT_AUTO_EJECT_STATE, ///< Auto eject state TD_POST_TREATMENT_DISPOSABLE_REMOVAL_STATE, ///< Disposable removal state TD_POST_TREATMENT_VERIFY_STATE, ///< Verify cartridge removed, syringe removed, and reservoirs drained state NUM_OF_TD_POST_TREATMENT_STATES ///< Number of post-treatment mode states @@ -638,6 +658,23 @@ }; typedef enum Treatment_Params TREATMENT_PARAM_T; ///< Type for treatment parameters enumeration +/// Enumeration of treatment set point parameter indices. +enum Treatment_Setpoint_Params +{ + TREATMENT_SETPOINT_BLOOD_FLOW = 0, ///< Blood flow rate (in mL/min) + TREATMENT_SETPOINT_DIALYSATE_FLOW, ///< Dialysate flow rate (in mL/min) + TREATMENT_SETPOINT_DIALYSATE_TEMPERATURE, ///< Dialysate temperature (in degC) + TREATMENT_SETPOINT_ACID_CONCENTRATE, ///< Acid concentrate type (enum) + TREATMENT_SETPOINT_ACID_CONVERSION_FACTOR, ///< Acid concentrate conversion factor + TREATMENT_SETPOINT_BICARB_CONCENTRATE, ///< Bicarbonate concentrate type (enum) + TREATMENT_SETPOINT_TREATMENT_MODALITY, ///< Treatment modality type (enum) + TREATMENT_SETPOINT_HEPATITIS_STATUS, ///< Hepatitis B status (enum) + TREATMENT_SETPOINT_SODIUM, ///< Sodium concentration (mEq/L) + TREATMENT_SETPOINT_BICARBONATE, ///< Bicarbonate concentration (mEq/L) + NUM_OF_TREATMENT_SETPOINT_PARAMS ///< Total number of treatment set point parameters +}; +typedef enum Treatment_Setpoint_Params TREATMENT_SETPOINT_PARAM_T; ///< Type for treatment set point parameter indices enumeration + /// Enumeration of system configured treatment parameters. enum System_Config_Treatment_Params { @@ -764,7 +801,9 @@ TD_EVENT_STARTUP = 0, ///< TD startup event TD_EVENT_OP_MODE_CHANGE, ///< TD Op mode change event TD_EVENT_SUB_MODE_CHANGE, ///< TD Op sub-mode change event - TD_EVENT_DRY_SELF_TEST_CARTRIDGE_RESULT, ///< TD dry self test cartridge result + TD_EVENT_DRY_SELF_TEST_TUBESET_RESULT, ///< TD dry self test cartridge result + TD_EVENT_TUBING_SET_BARCODE_SCAN_REQUEST, ///< TD tubing set barcode scan request + TD_EVENT_TUBING_SET_BARCODE_SCAN_AUTHENTICATED, ///< TD tubing set barcode scan authenticated TD_EVENT_DRY_SELF_TEST_PRESSURE_RESULT, ///< TD dry self test pressure result TD_EVENT_WET_SELF_TEST_DISPLACEMENT_RESULT, ///< TD wet self test displacement result TD_EVENT_CPU_RAM_ERROR_STATUS, ///< TD CPU RAM error status @@ -781,10 +820,10 @@ TD_EVENT_AIR_TRAP_FILL, ///< TD started/stopped an air trap fill operation. TD_EVENT_AIR_TRAP_LOWER, ///< TD started/stopped an air trap lower level operation. TD_EVENT_AIR_PUMP_ON_OFF, ///< TD turned air pump on/off. - TD_EVENT_DRY_SELF_TEST_PRESSURE_DECAY_WAIT_PERIOD, ///< TD dry self test pressure decay waiting period. TD_EVENT_INSTIT_RECORD_UPDATE, ///< TD new institutional record has been updated. TD_EVENT_VALVE_POS_CHANGE, ///< TD pinch valve position change TD_EVENT_VALVE_HOMED_POS_SETTING, ///< TD pinch valve homed encoder positions for A/B/C. + TD_EVENT_SYRINGE_PUMP_STATE, ///< TD syringe pump state change event NUM_OF_TD_EVENT_IDS ///< Total number of TD events }; typedef enum TD_Event_List TD_EVENT_ID_T; ///< Type for TD event list enumeration