Index: firmware/App/Modes/ModeHeatDisinfect.c =================================================================== diff -u -rab304e2ca6e3e40ed8cb12650e9855ae0b9649d8 -re30951f62cdc9c52f20e9218df947d3860b3c7a7 --- firmware/App/Modes/ModeHeatDisinfect.c (.../ModeHeatDisinfect.c) (revision ab304e2ca6e3e40ed8cb12650e9855ae0b9649d8) +++ firmware/App/Modes/ModeHeatDisinfect.c (.../ModeHeatDisinfect.c) (revision e30951f62cdc9c52f20e9218df947d3860b3c7a7) @@ -51,22 +51,22 @@ #define HEAT_DISINFECT_R1_TO_R2_TIME_MINS 1U ///< Reservoir 1 to reservoir 2 heat disinfection duration in minutes #define HEAT_DISINFECT_R2_TO_R1_TIME_MINS 1U ///< Reservoir 2 to reservoir 1 heat disinfection duration in minutes -#define MINUTES_TO_MS_CONVERSION 60000U ///< Minutes to milliseconds conversion +#define MINUTE_TO_MS_CONVERSION 60000U ///< Minutes to milliseconds conversion #define HEAT_DISINFECT_EVAC_RECIRC_PATH_TIME_MS 4000U ///< Evacuate recirculation path time in ms //TODO do we need this? Change this to the amount of time the composite pumps will run -#define HEAT_DISINFECT_RECIRC_PATH_TIME_MS ( HEAT_DISINFECT_RECIRC_PATH_TIME_MINS * MINUTES_TO_MS_CONVERSION ) ///< Recirculation path heat disinfection duration in ms -#define HEAT_DISINFECT_R1_TO_R2_TIME_MS ( HEAT_DISINFECT_R1_TO_R2_TIME_MINS * MINUTES_TO_MS_CONVERSION ) ///< Reservoir 1 to reservoir 2 heat disinfection duration in ms -#define HEAT_DISINFECT_R2_TO_R1_TIME_MS ( HEAT_DISINFECT_R2_TO_R1_TIME_MINS * MINUTES_TO_MS_CONVERSION ) ///< Reservoir 2 to reservoir 1 heat disinfection duration in ms +#define HEAT_DISINFECT_RECIRC_PATH_TIME_MS ( HEAT_DISINFECT_RECIRC_PATH_TIME_MINS * MINUTE_TO_MS_CONVERSION ) ///< Recirculation path heat disinfection duration in ms +#define HEAT_DISINFECT_R1_TO_R2_TIME_MS ( HEAT_DISINFECT_R1_TO_R2_TIME_MINS * MINUTE_TO_MS_CONVERSION ) ///< Reservoir 1 to reservoir 2 heat disinfection duration in ms +#define HEAT_DISINFECT_R2_TO_R1_TIME_MS ( HEAT_DISINFECT_R2_TO_R1_TIME_MINS * MINUTE_TO_MS_CONVERSION ) ///< Reservoir 2 to reservoir 1 heat disinfection duration in ms #define HEAT_DISINFECT_TARGET_CYCLES 5U ///< No of cycles to run heat disinfection //TODO change this value to the actual value -#define HEAT_DISINFECT_DATA_PUB_INTERVAL ( MS_PER_SECOND / TASK_GENERAL_INTERVAL ) ///< Heat disinfection data publication time interval +#define HEAT_DISINFECT_DATA_PUB_INTERVAL ( MS_PER_SECOND / (2*TASK_GENERAL_INTERVAL) ) ///< Heat disinfection data publication time interval #define DRAIN_PUMP_TARGET_DELTA_PRESSURE 0U ///< Drain pump target delta pressure #define DRAIN_PUMP_EVACUATE_FLUID_TARGET_RPM 2800U ///< Drain pump target RPM during evacuating the fluid path #define DRAIN_PUMP_DISINFECT_DRAIN_PATH_TARGET_RPM 1500U ///< Drain pump target RPM during heat disinfection #define RO_PUMP_TARGET_FLOW_RATE_LPM 0.9 ///< RO pump target flow rate -#define FULL_RESERVOIRS_WEIGHT_GRAMS 500U ///< The weight of a full reservoir //TODO Change this value to full value +#define FULL_RESERVOIRS_WEIGHT_GRAMS 2000U ///< The weight of a full reservoir //TODO Change this value to full value #define EMPTY_RESERVOIRS_WEIGHT_GRAMS 300U ///< The weight of an empty reservoir //TODO Change this value to full value // ********** private data ********** @@ -77,8 +77,8 @@ INTERNAL_HEAT_DISINFECT_STATE_OFF = 0, ///< Internal heat disinfect state off INTERNAL_HEAT_DISINFECT_STATE_FILL_WITH_WATER, ///< Internal heat disinfect fill with water INTERNAL_HEAT_DISINFECT_STATE_EVACUATE_RECIRC_PATH, ///< Internal heat disinfect evacuate recirculation path - INTERNAL_HEAT_DISINFECT_STATE_EVACUATE_RESERVOIR_1, ///< Internal heat disinfect evacuate reservoir 1 - INTERNAL_HEAT_DISINFECT_STATE_EVACUATE_RESERVOIR_2, ///< Internal heat disinfect evacuate reservoir 2 + INTERNAL_HEAT_DISINFECT_STATE_EVACUATE_R1, ///< Internal heat disinfect evacuate reservoir 1 + INTERNAL_HEAT_DISINFECT_STATE_EVACUATE_R2, ///< Internal heat disinfect evacuate reservoir 2 INTERNAL_HEAT_DISINFECT_STATE_COMPLETE, ///< Internal heat disinfect complete NUM_OF_INTERNAL_STATES ///< Number of internal heat disinfect states } INTERNAL_HEAT_DISINFECT_STATE_T; @@ -116,8 +116,8 @@ static INTERNAL_HEAT_DISINFECT_STATE_T handleHeatDisinfectOffState( void ); static INTERNAL_HEAT_DISINFECT_STATE_T handleHeatDisinfectFillWithWaterState( void ); static INTERNAL_HEAT_DISINFECT_STATE_T handleHeatDisinfectEvacRecircPathState( void ); -static INTERNAL_HEAT_DISINFECT_STATE_T handleHeatDisifnectEvacReservoir1State( void ); -static INTERNAL_HEAT_DISINFECT_STATE_T handleHeatDisinfectEvacReservoir2State( void ); +static INTERNAL_HEAT_DISINFECT_STATE_T handleHeatDisinfectEvacR1State( void ); +static INTERNAL_HEAT_DISINFECT_STATE_T handleHeatDisinfectEvacR2State( void ); static DG_HEAT_DISINFECT_STATE_T handleHeatDisinfectStart( void ); static DG_HEAT_DISINFECT_STATE_T handleHeatDisinfectEvacuateDialysateFillWithWater( void ); @@ -205,11 +205,11 @@ heatDisinfectState = handleHeatDisinfectRecirculationPath(); break; - case DG_HEAT_DISINFECT_STATE_DISINFECT_RESERVOIR_1_TO_2: + case DG_HEAT_DISINFECT_STATE_DISINFECT_R1_TO_R2: heatDisinfectState = handleHeatDisinfectR1ToR2(); break; - case DG_HEAT_DISINFECT_STATE_DISINFECT_RESERVOIR_2_TO_1: + case DG_HEAT_DISINFECT_STATE_DISINFECT_R2_TO_R1: heatDisinfectState = handleHeatDisinfectR2ToR1(); break; @@ -277,6 +277,9 @@ void stopDGHeatDisinfect( void ) { stopActuators(); + heatDisinfectState = DG_HEAT_DISINFECT_STATE_COMPLETE; + heatDisinfectInternalState = INTERNAL_HEAT_DISINFECT_STATE_OFF; + requestNewOperationMode( DG_MODE_STAN ); } @@ -326,20 +329,20 @@ // Drain pump is stopped to exit the open loop mode signalDrainPumpHardStop(); - setValveState ( VPI, VALVE_STATE_OPEN ); - setValveState ( VBF, VALVE_STATE_OPEN ); - setValveState ( VSP, VALVE_STATE_CLOSED ); - setValveState ( VPD, VALVE_STATE_OPEN_C_TO_NO ); - setValveState ( VPO, VALVE_STATE_FILL_C_TO_NC ); - setValveState ( VDR, VALVE_STATE_RECIRC_C_TO_NC ); - setValveState ( VRC, VALVE_STATE_RECIRC_C_TO_NC ); - setValveState ( VRO, VALVE_STATE_R2_C_TO_NC ); - setValveState ( VRD, VALVE_STATE_R2_C_TO_NC ); - setValveState ( VRI, VALVE_STATE_R1_C_TO_NO ); - setValveState ( VRF, VALVE_STATE_R2_C_TO_NO ); + setValveState( VPI, VALVE_STATE_OPEN ); + setValveState( VBF, VALVE_STATE_OPEN ); + setValveState( VSP, VALVE_STATE_CLOSED ); + setValveState( VPD, VALVE_STATE_OPEN_C_TO_NO ); + setValveState( VPO, VALVE_STATE_FILL_C_TO_NC ); + setValveState( VDR, VALVE_STATE_RECIRC_C_TO_NC ); + setValveState( VRC, VALVE_STATE_RECIRC_C_TO_NC ); + setValveState( VRO, VALVE_STATE_R2_C_TO_NC ); + setValveState( VRD, VALVE_STATE_R2_C_TO_NC ); + setValveState( VRI, VALVE_STATE_R1_C_TO_NO ); + setValveState( VRF, VALVE_STATE_R2_C_TO_NO ); setROPumpTargetFlowRate( RO_PUMP_TARGET_FLOW_RATE_LPM ); - setDrainPumpTargetDeltaPressure( DRAIN_PUMP_TARGET_DELTA_PRESSURE ); + setDrainPumpTargetDeltaPressure( 0.05 ); //DRAIN_PUMP_TARGET_DELTA_PRESSURE setPrimaryHeaterTargetTemperature( HEAT_DISINFECT_TARGET_TEMPERATURE ); startPrimaryHeater(); @@ -369,17 +372,17 @@ fabs(TDi - HEAT_DISINFECT_TARGET_TEMPERATURE) <= MAX_TEMPERATURE_DEVIATION_FROM_TARGET ) { // Set the states to disinfect recirculation path - setValveState ( VPI, VALVE_STATE_OPEN ); - setValveState ( VBF, VALVE_STATE_OPEN ); - setValveState ( VSP, VALVE_STATE_CLOSED ); - setValveState ( VPD, VALVE_STATE_OPEN_C_TO_NO ); - setValveState ( VPO, VALVE_STATE_NOFILL_C_TO_NO ); - setValveState ( VDR, VALVE_STATE_RECIRC_C_TO_NC ); - setValveState ( VRC, VALVE_STATE_RECIRC_C_TO_NC ); - setValveState ( VRO, VALVE_STATE_R2_C_TO_NO ); - setValveState ( VRD, VALVE_STATE_R1_C_TO_NO ); - setValveState ( VRI, VALVE_STATE_R1_C_TO_NO ); - setValveState ( VRF, VALVE_STATE_R2_C_TO_NO ); + setValveState( VPI, VALVE_STATE_OPEN ); + setValveState( VBF, VALVE_STATE_OPEN ); + setValveState( VSP, VALVE_STATE_CLOSED ); + setValveState( VPD, VALVE_STATE_OPEN_C_TO_NO ); + setValveState( VPO, VALVE_STATE_NOFILL_C_TO_NO ); + setValveState( VDR, VALVE_STATE_RECIRC_C_TO_NC ); + setValveState( VRC, VALVE_STATE_RECIRC_C_TO_NC ); + setValveState( VRO, VALVE_STATE_R2_C_TO_NO ); + setValveState( VRD, VALVE_STATE_R1_C_TO_NO ); + setValveState( VRI, VALVE_STATE_R1_C_TO_NO ); + setValveState( VRF, VALVE_STATE_R2_C_TO_NO ); stateTimer = getMSTimerCount(); state = DG_HEAT_DISINFECT_STATE_DISINFECT_RECIRC_PATH; } @@ -408,23 +411,23 @@ else if ( didTimeout( stateTimer, getRecirculationDuration() ) ) { // Set the state for reservoir 1 to reservoir 2 - setValveState ( VPI, VALVE_STATE_OPEN ); - setValveState ( VBF, VALVE_STATE_OPEN ); - setValveState ( VSP, VALVE_STATE_CLOSED ); - setValveState ( VPD, VALVE_STATE_OPEN_C_TO_NO ); - setValveState ( VPO, VALVE_STATE_FILL_C_TO_NC ); - setValveState ( VDR, VALVE_STATE_RECIRC_C_TO_NC ); - setValveState ( VRC, VALVE_STATE_RECIRC_C_TO_NC ); - setValveState ( VRO, VALVE_STATE_R2_C_TO_NO ); - setValveState ( VRD, VALVE_STATE_R1_C_TO_NO ); - setValveState ( VRI, VALVE_STATE_R2_C_TO_NC ); - setValveState ( VRF, VALVE_STATE_R1_C_TO_NC ); + setValveState( VPI, VALVE_STATE_OPEN ); + setValveState( VBF, VALVE_STATE_OPEN ); + setValveState( VSP, VALVE_STATE_CLOSED ); + setValveState( VPD, VALVE_STATE_OPEN_C_TO_NO ); + setValveState( VPO, VALVE_STATE_FILL_C_TO_NC ); + setValveState( VDR, VALVE_STATE_RECIRC_C_TO_NC ); + setValveState( VRC, VALVE_STATE_RECIRC_C_TO_NC ); + setValveState( VRO, VALVE_STATE_R2_C_TO_NO ); + setValveState( VRD, VALVE_STATE_R1_C_TO_NO ); + setValveState( VRI, VALVE_STATE_R2_C_TO_NC ); + setValveState( VRF, VALVE_STATE_R1_C_TO_NC ); setDrainPumpTargetDeltaPressure( DRAIN_PUMP_TARGET_DELTA_PRESSURE ); setROPumpTargetFlowRate( RO_PUMP_TARGET_FLOW_RATE_LPM ); stateTimer = getMSTimerCount(); - state = DG_HEAT_DISINFECT_STATE_DISINFECT_RESERVOIR_1_TO_2; + state = DG_HEAT_DISINFECT_STATE_DISINFECT_R1_TO_R2; } return state; @@ -441,7 +444,7 @@ *************************************************************************/ static DG_HEAT_DISINFECT_STATE_T handleHeatDisinfectR1ToR2( void ) { - DG_HEAT_DISINFECT_STATE_T state = DG_HEAT_DISINFECT_STATE_DISINFECT_RESERVOIR_1_TO_2; + DG_HEAT_DISINFECT_STATE_T state = DG_HEAT_DISINFECT_STATE_DISINFECT_R1_TO_R2; // If the temperature is out of tolerance, go back to heat water if ( ! isTemperatureInRange() ) @@ -451,23 +454,23 @@ else if ( didTimeout( stateTimer, getR1ToR2Duration() ) ) { // Set the state for reservoir 1 to reservoir 2 - setValveState ( VPI, VALVE_STATE_OPEN ); - setValveState ( VBF, VALVE_STATE_OPEN ); - setValveState ( VSP, VALVE_STATE_CLOSED ); - setValveState ( VPD, VALVE_STATE_OPEN_C_TO_NO ); - setValveState ( VPO, VALVE_STATE_FILL_C_TO_NC ); - setValveState ( VDR, VALVE_STATE_RECIRC_C_TO_NC ); - setValveState ( VRC, VALVE_STATE_RECIRC_C_TO_NC ); - setValveState ( VRO, VALVE_STATE_R2_C_TO_NO ); - setValveState ( VRD, VALVE_STATE_R1_C_TO_NO ); - setValveState ( VRI, VALVE_STATE_R2_C_TO_NC ); - setValveState ( VRF, VALVE_STATE_R1_C_TO_NC ); + setValveState( VPI, VALVE_STATE_OPEN ); + setValveState( VBF, VALVE_STATE_OPEN ); + setValveState( VSP, VALVE_STATE_CLOSED ); + setValveState( VPD, VALVE_STATE_OPEN_C_TO_NO ); + setValveState( VPO, VALVE_STATE_FILL_C_TO_NC ); + setValveState( VDR, VALVE_STATE_RECIRC_C_TO_NC ); + setValveState( VRC, VALVE_STATE_RECIRC_C_TO_NC ); + setValveState( VRO, VALVE_STATE_R2_C_TO_NO ); + setValveState( VRD, VALVE_STATE_R1_C_TO_NO ); + setValveState( VRI, VALVE_STATE_R2_C_TO_NC ); + setValveState( VRF, VALVE_STATE_R1_C_TO_NC ); setDrainPumpTargetDeltaPressure( DRAIN_PUMP_TARGET_DELTA_PRESSURE ); setROPumpTargetFlowRate( RO_PUMP_TARGET_FLOW_RATE_LPM ); stateTimer = getMSTimerCount(); - state = DG_HEAT_DISINFECT_STATE_DISINFECT_RESERVOIR_2_TO_1; + state = DG_HEAT_DISINFECT_STATE_DISINFECT_R2_TO_R1; } return state; @@ -486,7 +489,7 @@ *************************************************************************/ static DG_HEAT_DISINFECT_STATE_T handleHeatDisinfectR2ToR1( void ) { - DG_HEAT_DISINFECT_STATE_T state = DG_HEAT_DISINFECT_STATE_DISINFECT_RESERVOIR_2_TO_1; + DG_HEAT_DISINFECT_STATE_T state = DG_HEAT_DISINFECT_STATE_DISINFECT_R2_TO_R1; // If the temperature is out of tolerance, go back to heat water if ( ! isTemperatureInRange() ) @@ -496,17 +499,17 @@ else if ( didTimeout( stateTimer, getR2ToR1Duration() ) ) { // Set the state for reservoir 1 to reservoir 2 - setValveState ( VPI, VALVE_STATE_OPEN ); - setValveState ( VBF, VALVE_STATE_OPEN ); - setValveState ( VSP, VALVE_STATE_CLOSED ); - setValveState ( VPD, VALVE_STATE_OPEN_C_TO_NO ); - setValveState ( VPO, VALVE_STATE_FILL_C_TO_NC ); - setValveState ( VDR, VALVE_STATE_RECIRC_C_TO_NC ); - setValveState ( VRC, VALVE_STATE_RECIRC_C_TO_NC ); - setValveState ( VRO, VALVE_STATE_R2_C_TO_NO ); - setValveState ( VRD, VALVE_STATE_R1_C_TO_NO ); - setValveState ( VRI, VALVE_STATE_R2_C_TO_NC ); - setValveState ( VRF, VALVE_STATE_R1_C_TO_NC ); + setValveState( VPI, VALVE_STATE_OPEN ); + setValveState( VBF, VALVE_STATE_OPEN ); + setValveState( VSP, VALVE_STATE_CLOSED ); + setValveState( VPD, VALVE_STATE_OPEN_C_TO_NO ); + setValveState( VPO, VALVE_STATE_FILL_C_TO_NC ); + setValveState( VDR, VALVE_STATE_RECIRC_C_TO_NC ); + setValveState( VRC, VALVE_STATE_RECIRC_C_TO_NC ); + setValveState( VRO, VALVE_STATE_R2_C_TO_NO ); + setValveState( VRD, VALVE_STATE_R1_C_TO_NO ); + setValveState( VRI, VALVE_STATE_R2_C_TO_NC ); + setValveState( VRF, VALVE_STATE_R1_C_TO_NC ); setDrainPumpTargetDeltaPressure( DRAIN_PUMP_TARGET_DELTA_PRESSURE ); setROPumpTargetFlowRate( RO_PUMP_TARGET_FLOW_RATE_LPM ); @@ -519,19 +522,20 @@ } else { - setValveState ( VPI, VALVE_STATE_OPEN ); - setValveState ( VBF, VALVE_STATE_OPEN ); - setValveState ( VSP, VALVE_STATE_CLOSED ); - setValveState ( VPD, VALVE_STATE_OPEN_C_TO_NO ); - setValveState ( VPO, VALVE_STATE_NOFILL_C_TO_NO ); - setValveState ( VDR, VALVE_STATE_RECIRC_C_TO_NC ); - setValveState ( VRC, VALVE_STATE_RECIRC_C_TO_NC ); - setValveState ( VRO, VALVE_STATE_R2_C_TO_NO ); - setValveState ( VRD, VALVE_STATE_R1_C_TO_NO ); - setValveState ( VRI, VALVE_STATE_R1_C_TO_NO ); - setValveState ( VRF, VALVE_STATE_R2_C_TO_NO ); + setValveState( VPI, VALVE_STATE_OPEN ); + setValveState( VBF, VALVE_STATE_OPEN ); + setValveState( VSP, VALVE_STATE_CLOSED ); + setValveState( VPD, VALVE_STATE_OPEN_C_TO_NO ); + setValveState( VPO, VALVE_STATE_NOFILL_C_TO_NO ); + setValveState( VDR, VALVE_STATE_RECIRC_C_TO_NC ); + setValveState( VRC, VALVE_STATE_RECIRC_C_TO_NC ); + setValveState( VRO, VALVE_STATE_R2_C_TO_NO ); + setValveState( VRD, VALVE_STATE_R1_C_TO_NO ); + setValveState( VRI, VALVE_STATE_R1_C_TO_NO ); + setValveState( VRF, VALVE_STATE_R2_C_TO_NO ); setROPumpTargetFlowRate( RO_PUMP_TARGET_FLOW_RATE_LPM ); stateTimer = getMSTimerCount(); + heatDisinfectInternalState = INTERNAL_HEAT_DISINFECT_STATE_OFF; state = DG_HEAT_DISINFECT_STATE_DISINFECT_RECIRC_PATH; } } @@ -556,6 +560,8 @@ if ( heatDisinfectInternalState == INTERNAL_HEAT_DISINFECT_STATE_COMPLETE ) { + stopPrimaryHeater(); + stopTrimmerHeater(); drainPumpTargetRPM = DRAIN_PUMP_EVACUATE_FLUID_TARGET_RPM; heatDisinfectInternalState = INTERNAL_HEAT_DISINFECT_STATE_OFF; state = DG_HEAT_DISINFECT_STATE_FILL_WITH_WATER_DEPRIME_RESERVOIRS; @@ -613,12 +619,12 @@ heatDisinfectInternalState = handleHeatDisinfectEvacRecircPathState(); break; - case INTERNAL_HEAT_DISINFECT_STATE_EVACUATE_RESERVOIR_1: - heatDisinfectInternalState = handleHeatDisifnectEvacReservoir1State(); + case INTERNAL_HEAT_DISINFECT_STATE_EVACUATE_R1: + heatDisinfectInternalState = handleHeatDisinfectEvacR1State(); break; - case INTERNAL_HEAT_DISINFECT_STATE_EVACUATE_RESERVOIR_2: - heatDisinfectInternalState = handleHeatDisinfectEvacReservoir2State(); + case INTERNAL_HEAT_DISINFECT_STATE_EVACUATE_R2: + heatDisinfectInternalState = handleHeatDisinfectEvacR2State(); break; case INTERNAL_HEAT_DISINFECT_STATE_COMPLETE: @@ -654,8 +660,8 @@ setValveState( VSP, VALVE_STATE_CLOSED ); setValveState( VPD, VALVE_STATE_OPEN_C_TO_NO ); setValveState( VPO, VALVE_STATE_NOFILL_C_TO_NO ); - setValveState( VDR, VALVE_STATE_DRAIN_C_TO_NO ); - setValveState( VRC, VALVE_STATE_DRAIN_C_TO_NO ); + setValveState( VDR, VALVE_STATE_DRAIN_C_TO_NO ); // C to NC + setValveState( VRC, VALVE_STATE_DRAIN_C_TO_NO ); // C to NC setValveState( VRO, VALVE_STATE_R2_C_TO_NO ); setValveState( VRD, VALVE_STATE_R1_C_TO_NO ); setValveState( VRI, VALVE_STATE_R1_C_TO_NO ); @@ -696,7 +702,7 @@ setValveState( VRF, VALVE_STATE_R2_C_TO_NO ); setDrainPumpTargetSpeed( drainPumpTargetRPM ); - state = INTERNAL_HEAT_DISINFECT_STATE_EVACUATE_RESERVOIR_1; + state = INTERNAL_HEAT_DISINFECT_STATE_EVACUATE_R1; } return state; @@ -778,9 +784,9 @@ setValveState( VRD, VALVE_STATE_R1_C_TO_NC ); setValveState( VRI, VALVE_STATE_R1_C_TO_NO ); setValveState( VRF, VALVE_STATE_R2_C_TO_NO ); - setDrainPumpTargetSpeed( drainPumpTargetRPM ); + setDrainPumpTargetSpeed( drainPumpTargetRPM ); //TODO commented for testing - state = INTERNAL_HEAT_DISINFECT_STATE_EVACUATE_RESERVOIR_1; + state = INTERNAL_HEAT_DISINFECT_STATE_EVACUATE_R1; } return state; @@ -795,9 +801,9 @@ * Outputs: none * @return next state *************************************************************************/ -static INTERNAL_HEAT_DISINFECT_STATE_T handleHeatDisifnectEvacReservoir1State( void ) +static INTERNAL_HEAT_DISINFECT_STATE_T handleHeatDisinfectEvacR1State( void ) { - INTERNAL_HEAT_DISINFECT_STATE_T state = INTERNAL_HEAT_DISINFECT_STATE_EVACUATE_RESERVOIR_1; + INTERNAL_HEAT_DISINFECT_STATE_T state = INTERNAL_HEAT_DISINFECT_STATE_EVACUATE_R1; F32 reservoir1Weight = getLoadCellFilteredWeight( LOAD_CELL_A1 ); @@ -817,7 +823,7 @@ setValveState( VRF, VALVE_STATE_R2_C_TO_NO ); setDrainPumpTargetSpeed( drainPumpTargetRPM ); //probably it is not needed TODO test this - state = INTERNAL_HEAT_DISINFECT_STATE_EVACUATE_RESERVOIR_2; + state = INTERNAL_HEAT_DISINFECT_STATE_EVACUATE_R2; } return state; @@ -832,9 +838,9 @@ * Outputs: none * @return next state *************************************************************************/ -static INTERNAL_HEAT_DISINFECT_STATE_T handleHeatDisinfectEvacReservoir2State( void ) +static INTERNAL_HEAT_DISINFECT_STATE_T handleHeatDisinfectEvacR2State( void ) { - INTERNAL_HEAT_DISINFECT_STATE_T state = INTERNAL_HEAT_DISINFECT_STATE_EVACUATE_RESERVOIR_2; + INTERNAL_HEAT_DISINFECT_STATE_T state = INTERNAL_HEAT_DISINFECT_STATE_EVACUATE_R2; F32 reservoir2Weight = getLoadCellFilteredWeight ( LOAD_CELL_B1 ); @@ -930,11 +936,12 @@ setValveState( VPO, VALVE_STATE_FILL_C_TO_NC ); setValveState( VDR, VALVE_STATE_DRAIN_C_TO_NO ); setValveState( VRC, VALVE_STATE_DRAIN_C_TO_NO ); - setValveState( VRO, VALVE_STATE_R2_C_TO_NO ); + setValveState( VRO, VALVE_STATE_R1_C_TO_NO ); setValveState( VRD, VALVE_STATE_R2_C_TO_NO ); setValveState( VRI, VALVE_STATE_R2_C_TO_NC ); setValveState( VRF, VALVE_STATE_R1_C_TO_NC ); setROPumpTargetFlowRate( RO_PUMP_TARGET_FLOW_RATE_LPM ); + signalDrainPumpHardStop(); //TODO is this needed here? } /*********************************************************************//** @@ -971,7 +978,7 @@ { if ( ++heatDisinfectPublishCounter >= getPublishHeatDisinfectDataInterval() ) { - F32 elapsedtime = calcTimeSince( heatDisinfectStartTime ) / MINUTES_TO_MS_CONVERSION; + F32 elapsedtime = calcTimeSince( heatDisinfectStartTime ) / MINUTE_TO_MS_CONVERSION; broadcastHeatDisinfectData( (U32)heatDisinfectInternalState, elapsedtime, heatDisinfectCurrentCycle ); heatDisinfectPublishCounter = 0; } @@ -1043,7 +1050,7 @@ if ( TRUE == isTestingActivated() ) { heatDisinfectRecircDuration.ovInitData = heatDisinfectRecircDuration.data; - heatDisinfectRecircDuration.ovData = recircMins * MINUTES_TO_MS_CONVERSION; + heatDisinfectRecircDuration.ovData = recircMins * MINUTE_TO_MS_CONVERSION; heatDisinfectRecircDuration.override = OVERRIDE_KEY; } @@ -1091,7 +1098,7 @@ { result = TRUE; heatDisinfectR1ToR2Duration.ovInitData = heatDisinfectR1ToR2Duration.data; - heatDisinfectR1ToR2Duration.ovData = R1ToR2Mins * MINUTES_TO_MS_CONVERSION; + heatDisinfectR1ToR2Duration.ovData = R1ToR2Mins * MINUTE_TO_MS_CONVERSION; heatDisinfectR1ToR2Duration.override = OVERRIDE_KEY; } @@ -1138,7 +1145,7 @@ { result = TRUE; heatDisinfectR2ToR1Duration.ovInitData = heatDisinfectR2ToR1Duration.data; - heatDisinfectR2ToR1Duration.ovData = R2ToR1Mins * MINUTES_TO_MS_CONVERSION; + heatDisinfectR2ToR1Duration.ovData = R2ToR1Mins * MINUTE_TO_MS_CONVERSION; heatDisinfectR2ToR1Duration.override = OVERRIDE_KEY; }