Index: firmware/App/Modes/FPModes/ModePreGenPermeate.c =================================================================== diff -u -r2475e55c224cbd841d61b76f1618451efe6be1f5 -rf470abe73ad49acbdf4b6d821270374a9d528286 --- firmware/App/Modes/FPModes/ModePreGenPermeate.c (.../ModePreGenPermeate.c) (revision 2475e55c224cbd841d61b76f1618451efe6be1f5) +++ firmware/App/Modes/FPModes/ModePreGenPermeate.c (.../ModePreGenPermeate.c) (revision f470abe73ad49acbdf4b6d821270374a9d528286) @@ -203,6 +203,7 @@ { setBoostPumpTargetPressure( VERIFY_WATER_BOOST_PUMP_TGT_PSI ); } + //TODO change target flow to 750 + rinse pump rate setROPumpTargetFlowRateMLPM( VERIFY_WATER_RO_PUMP_TGT_FLOW_ML, TRUE ); verifyWaterTimer = getMSTimerCount(); break; @@ -232,20 +233,13 @@ // state = FP_PRE_GENP_PAUSED; // } - if ( FALSE == isBoostPumpInstalled() ) + execInletPressureCheck(); + + if ( TRUE == isInletPressureCheckCompleted() ) { signalStartFilterFlush(); state = FP_PRE_GENP_FILTER_FLUSH; } - else - { - execInletPressureCheck(); - if ( TRUE == isInletPressureCheckCompleted() ) - { - signalStartFilterFlush(); - state = FP_PRE_GENP_FILTER_FLUSH; - } - } return state; } @@ -344,16 +338,35 @@ FP_PRE_GENP_MODE_STATE_T state = FP_PRE_GENP_VERIFY_WATER; F32 roCurrentDutyCycle = getCurrentROPumpDutyCyclePCT(); + checkROInletPressure(); + //Stay in this state for 25 seconds to stablize flow control if ( TRUE == didTimeout( verifyWaterTimer, FLOW_CONTROL_STABLIZED_TIMEOUT_MS ) ) { // check next 5 seconds for water quality // check permeate high flow rate is within range checkPermeateHighFlow(); + // check low flow rate is within range checkPermeateLowFlow(); - // check conductivity is within range + + // check inlet conductivity is within range + checkInletConductivity(); + + // check permeate conductivity is within range checkOutletConductivity(); + + // check RO duty cycle in range + checkRODutyCycle(); + + // check p21 is set to 15 PSI + checkPressureRelief(); + + // check RO rejection ratio + checkRORejectionRatio(); + + // check RO pressure (p13) + checkROPressures(); } // if ( TRUE == 1 ))// TODO Alarm and Stop State Rework