Index: firmware/App/Controllers/ROPump.c =================================================================== diff -u -rb8f298547eb578000b3ff3cf55732fda7a689ce0 -r184ee0c5527af35d34c29bd4f80cf8b1959ffd35 --- firmware/App/Controllers/ROPump.c (.../ROPump.c) (revision b8f298547eb578000b3ff3cf55732fda7a689ce0) +++ firmware/App/Controllers/ROPump.c (.../ROPump.c) (revision 184ee0c5527af35d34c29bd4f80cf8b1959ffd35) @@ -404,7 +404,11 @@ // To monitor the flow, the control mode must be in closed loop mode and the pump should be control to flow state // If the pump is controlled to the maximum pressure, the flow might be different from the target flow for more than 10% // but the pump is not able to achieve the flow. - if ( ( PUMP_CONTROL_MODE_CLOSED_LOOP == roPumpControlMode ) && ( RO_PUMP_CONTROL_TO_TARGET_FLOW_STATE == roPumpState ) ) + // Do not check the flow target in heat disinfect active cool since the flow during cooling might be very different from the target flow + // since the RO pump membrane is hot and the target flow is low so the RO pump's duty cycle is mostly 0% but the flow is still high and + // above the target + if ( ( PUMP_CONTROL_MODE_CLOSED_LOOP == roPumpControlMode ) && ( RO_PUMP_CONTROL_TO_TARGET_FLOW_STATE == roPumpState ) && + ( getCurrentOperationMode() != DG_MODE_HCOL ) ) { F32 currentFlow = getMeasuredFlowRateLPM( RO_FLOW_SENSOR ); F32 targetFlow = getTargetROPumpFlowRateLPM();