Index: firmware/App/Modes/ModePreTreat.c =================================================================== diff -u -raebdf67df150ede34d59d58571c2c6c6822da3ea -r1d49abd3736a0e21a9ceb56e213d4337fbb8138c --- firmware/App/Modes/ModePreTreat.c (.../ModePreTreat.c) (revision aebdf67df150ede34d59d58571c2c6c6822da3ea) +++ firmware/App/Modes/ModePreTreat.c (.../ModePreTreat.c) (revision 1d49abd3736a0e21a9ceb56e213d4337fbb8138c) @@ -962,8 +962,9 @@ if ( TRUE == fillReservoirOneStartRequested ) { fillReservoirOneStartRequested = FALSE; - //cmdSetDGActiveReservoir( DG_RESERVOIR_2 ); - state = PRE_TREATMENT_RESERVOIR_MGMT_REQUEST_RESERVOIR_SWITCH_STATE; + cmdSetDGActiveReservoir( DG_RESERVOIR_2 ); + state = PRE_TREATMENT_RESERVOIR_MGMT_DRAIN_CMD_STATE; + //state = PRE_TREATMENT_RESERVOIR_MGMT_REQUEST_RESERVOIR_SWITCH_STATE; } return state; @@ -1049,19 +1050,18 @@ if ( ( DG_MODE_GENE == dgOpMode ) && ( DG_GEN_IDLE_MODE_STATE_FLUSH_WATER == dgSubMode ) ) { - initialReservoirDrain[ inactiveReservoir ] = TRUE; - // if fills not yet enabled, check to see if we want to move on to drain the other reservoir if ( reservoirFlags[ DG_RESERVOIR_1 ].startFlushFill != TRUE ) { - DG_RESERVOIR_ID_T activeReservoir = getDGActiveReservoir(); - - if ( ( initialReservoirDrain[ activeReservoir ] != TRUE ) || ( inactiveReservoir != DG_RESERVOIR_2 ) ) + if ( ( initialReservoirDrain[ inactiveReservoir ] != TRUE ) || + ( inactiveReservoir != DG_RESERVOIR_1 ) ) { + initialReservoirDrain[ inactiveReservoir ] = TRUE; //cmdSetDGActiveReservoir( inactiveReservoir ); state = PRE_TREATMENT_RESERVOIR_MGMT_REQUEST_RESERVOIR_SWITCH_STATE; } } + else { volume = getPreTreatmentFillVolume( inactiveReservoir );