Index: firmware/App/Modes/ModeGenPermeate.c =================================================================== diff -u -ra87112233634fca4d9950c3ed05d2c55fa5f9c65 -rc0c217faf415f9acd61dcc9a13932fbc7088339e --- firmware/App/Modes/ModeGenPermeate.c (.../ModeGenPermeate.c) (revision a87112233634fca4d9950c3ed05d2c55fa5f9c65) +++ firmware/App/Modes/ModeGenPermeate.c (.../ModeGenPermeate.c) (revision c0c217faf415f9acd61dcc9a13932fbc7088339e) @@ -97,7 +97,6 @@ isFullAvgValid = FALSE; timeInState = 0; stateTransitioned = FALSE; - } /*********************************************************************//** @@ -215,6 +214,7 @@ { FP_GENP_MODE_STATE_T state = FP_GENP_TANK_FILL_STATE; PERMEATE_TANK_STATE_T permemeateTankState = getPermeateTankState(); + if ( TRUE == didTimeout( timeInState, PUMP_REST_TIMEOUT_MS ) && stateTransitioned == TRUE ) { stateTransitioned = FALSE; @@ -243,6 +243,7 @@ static FP_GENP_MODE_STATE_T handleGenPTankFullState( void ) { FP_GENP_MODE_STATE_T state = FP_GENP_TANK_FULL_STATE; + if ( TRUE == didTimeout( timeInState, PUMP_REST_TIMEOUT_MS ) && stateTransitioned == TRUE ) { stateTransitioned = FALSE; @@ -270,6 +271,7 @@ static void updateDutyCycleAvg( FP_GENP_MODE_STATE_T state ) { F32 duty = getCurrentROPumpDutyCyclePCT(); + if ( state == FP_GENP_TANK_FILL_STATE ) { fillDutySum += duty; @@ -280,7 +282,6 @@ fullDutySum += duty; fullDutyCount++; } - } /*********************************************************************//** @@ -308,7 +309,6 @@ fullDutySum = 0.0F; fullDutyCount = 0; } - } /*********************************************************************//**