Index: firmware/App/Modes/ModeRecirculate.c =================================================================== diff -u -r3f7d30b23906496854054949d4491f3bae6ef3c4 -rf656b17f3d8d93b4fca49c9725e096e7eb55acc7 --- firmware/App/Modes/ModeRecirculate.c (.../ModeRecirculate.c) (revision 3f7d30b23906496854054949d4491f3bae6ef3c4) +++ firmware/App/Modes/ModeRecirculate.c (.../ModeRecirculate.c) (revision f656b17f3d8d93b4fca49c9725e096e7eb55acc7) @@ -93,21 +93,25 @@ setValveState( VRC, VALVE_STATE_DRAIN_C_TO_NO ); setValveState( VDR, VALVE_STATE_DRAIN_C_TO_NO ); setValveState( VPO, VALVE_STATE_NOFILL_C_TO_NO ); - setROPumpTargetFlowRate( TARGET_RO_FLOW_RATE_L, TARGET_RO_PRESSURE_PSI ); signalDrainPumpHardStop(); requestConcentratePumpsOff( CONCENTRATEPUMPS_CP1_ACID ); requestConcentratePumpsOff( CONCENTRATEPUMPS_CP2_BICARB ); - // UV on + // UV reactors on turnOnUVReactor( INLET_UV_REACTOR ); turnOnUVReactor( OUTLET_UV_REACTOR ); // TODO remove setPrimaryHeaterTargetTemperature( 39.0 ); - startPrimaryHeater(); // TODO remove + // NOTE: The target flow rate should be set prior to setting the start primary heater + // because the initial guess in the heaters driver needs the target flow to calculate + // the new PWMs for the main and small primary heaters + setROPumpTargetFlowRate( TARGET_RO_FLOW_RATE_L, TARGET_RO_PRESSURE_PSI ); + startPrimaryHeater(); + #ifndef _VECTORCAST_ { // TODO - test code to start the fan since we're turning the heater on F32 fanPWM = 0.25;