Index: firmware/App/Controllers/DGInterface.h =================================================================== diff -u -rec0ae6f3e8dd68564f9ae0d73dc996f58c86d115 -r8acad167bcf7ad07043192007e59d253a5216e3a --- firmware/App/Controllers/DGInterface.h (.../DGInterface.h) (revision ec0ae6f3e8dd68564f9ae0d73dc996f58c86d115) +++ firmware/App/Controllers/DGInterface.h (.../DGInterface.h) (revision 8acad167bcf7ad07043192007e59d253a5216e3a) @@ -32,12 +32,10 @@ // ********** public definitions ********** -#define DRAIN_RESERVOIR_TO_VOLUME_ML 0 ///< Drain reservoir to this volume (in mL) during treatment. -#ifndef V1_5_SYSTEM -#define FILL_RESERVOIR_TO_VOLUME_ML 1700 ///< Fill reservoir to this volume (in mL) during treatment. -#else -#define FILL_RESERVOIR_TO_VOLUME_ML 1300 ///< Fill reservoir to this volume (in mL) during treatment. -#endif +#define DRAIN_RESERVOIR_TO_VOLUME_ML 0 ///< Drain reservoir to this volume (in mL) during treatment. +#define FILL_RESERVOIR_TO_VOLUME_ML 1700 ///< Fill reservoir to this volume (in mL) during treatment. +#define FILL_RESERVOIR_TO_VOLUME_LOW_FLOW_ML 1300 ///< Fill reservoir to this volume (in mL) during treatment if dialysate flow is slow. +#define SLOW_DIALYSATE_FLOW_ML_MIN 250 ///< Threshold for slow dialysate flow designation. /// Enumeration of DG pressure sensors. typedef enum DG_PressureSensors @@ -108,7 +106,7 @@ U32 trimmerColdjuncRaw; ///< Trimmer heater cold junction raw ADC value S32 cond1Raw; ///< Conductivity sensor 1 raw temperature ADC value S32 cond2Raw; ///< Conductivity sensor 2 raw temperature ADC value -} DG_TEMPERATURES_T; +} TEMPERATURE_SENSORS_DATA_T; /// Payload record structure for a drain reservoir command message. typedef struct @@ -125,6 +123,14 @@ U32 rejectCode; ///< Reason code for rejecting the command } DG_CMD_RESPONSE_T; +/// DG heat/chemical disinfects and flush state for UI structure. +typedef struct DG_Disinfects +{ + U32 chemDisinfectUIState; ///< DG chemical disinfect UI state + U32 heatDisinfectUIState; ///< DG heat disinfect UI state + U32 flushUIState; ///< DG flush UI state +} DG_DISINFECT_UI_STATES_T; + // ********** public function prototypes ********** void initDGInterface( void ); @@ -145,7 +151,10 @@ F32 getDGROPumpFlowRateMlMin( void ); U32 getDGDrainPumpRPMSetPt( void ); F32 getLoadCellWeight( LOAD_CELL_ID_T loadCellID ); +F32 getReservoirWeight( DG_RESERVOIR_ID_T resID ); F32 getReservoirWeightLargeFilter( DG_RESERVOIR_ID_T resID ); +DG_DISINFECT_UI_STATES_T getDGDisinfectsStates( void ); +F32 getDialysateTemperature( void ); void setDGOpMode( U32 opMode, U32 subMode ); void setDialysateTemperatureReadings( F32 temp1, F32 temp2 ); @@ -155,6 +164,7 @@ void setDGROPumpData( U32 presSetPt, F32 flowRate ); void setDGDrainPumpData( U32 rpmSetPt ); void setNewLoadCellReadings( F32 res1Primary, F32 res1Backup, F32 res2Primary, F32 res2Backup ); +void setDGDisinfectsStates( DG_DISINFECT_UI_STATES_T states ); void cmdSetDGDialysateTargetTemps( F32 primaryHtrTemp, F32 trimmerHtrTemp ); void cmdStartDG( void ); @@ -167,6 +177,12 @@ void cmdStartDGTrimmerHeater( void ); void cmdStopDGTrimmerHeater( void ); void cmdDGSampleWater( SAMPLE_WATER_CMD_T cmd ); +void cmdStartDGFlush( void ); +void cmdStopDGFlush( void ); +void cmdStartDGHeatDisinfect( void ); +void cmdStopDGHeatDisinfect( void ); +void cmdStartDGChemicalDisinfect( void ); +void cmdStopDGChemicalDisinfect( void ); void handleDGCommandResponse( DG_CMD_RESPONSE_T *dgCmdRespPtr ); BOOL getDGCommandResponse( U32 commandID, DG_CMD_RESPONSE_T *cmdRespPtr );