Index: firmware/App/Modes/ModeRecirculate.c =================================================================== diff -u -rc20d71064bad67c2db392c6383bb410e8a7dfa2a -r9ce06772b2f651c57144327e6cbf886e2bc22dee --- firmware/App/Modes/ModeRecirculate.c (.../ModeRecirculate.c) (revision c20d71064bad67c2db392c6383bb410e8a7dfa2a) +++ firmware/App/Modes/ModeRecirculate.c (.../ModeRecirculate.c) (revision 9ce06772b2f651c57144327e6cbf886e2bc22dee) @@ -39,10 +39,12 @@ // ********** private definitions ********** -#define TARGET_RO_PRESSURE_PSI 130 ///< Target pressure for RO pump. -#define TARGET_RO_FLOW_RATE_L 0.8 ///< Target flow rate for RO pump. -#define FLUSH_LINES_VOLUME_L 1.0 ///< Water volume (in Liters) to flush when starting re-circulate mode. +#define TARGET_RO_PRESSURE_PSI 130 ///< Target pressure for RO pump. +#define TARGET_RO_FLOW_RATE_L 0.3 ///< Target flow rate for RO pump. +#define TARGET_FLUSH_LINES_RO_FLOW_RATE_L 0.6 ///< Target flow rate for RO pump. +#define FLUSH_LINES_VOLUME_L 0.1 ///< Water volume (in Liters) to flush when starting re-circulate mode. + // ********** private data ********** static DG_RECIRCULATE_MODE_STATE_T recircState; ///< Currently active re-circulation state. @@ -86,6 +88,7 @@ setValveState( VDR, VALVE_STATE_DRAIN_C_TO_NO ); setValveState( VPO, VALVE_STATE_NOFILL_C_TO_NO ); setROPumpTargetFlowRate( TARGET_RO_FLOW_RATE_L, 50 /*TARGET_RO_PRESSURE_PSI*/ ); + signalDrainPumpHardStop(); startPrimaryHeater(); requestConcentratePumpsOff( CONCENTRATEPUMPS_CP1 ); @@ -165,6 +168,7 @@ if ( flushLinesVolumeL >= FLUSH_LINES_VOLUME_L ) { setValveState( VDR, VALVE_STATE_RECIRC_C_TO_NC ); + setROPumpTargetFlowRate( TARGET_RO_FLOW_RATE_L, TARGET_RO_PRESSURE_PSI ); result = DG_RECIRCULATE_MODE_STATE_RECIRC_WATER; }