Index: firmware/App/Modes/ModePostTreat.c =================================================================== diff -u -r7ceb29cfd33a5fb5e29013226d2a180b6fba9938 -rdd50aca0744c3338f5c629b437fe58b269c8f457 --- firmware/App/Modes/ModePostTreat.c (.../ModePostTreat.c) (revision 7ceb29cfd33a5fb5e29013226d2a180b6fba9938) +++ firmware/App/Modes/ModePostTreat.c (.../ModePostTreat.c) (revision dd50aca0744c3338f5c629b437fe58b269c8f457) @@ -187,6 +187,7 @@ POST_TREATMENT_STATE_DATA_T data; data.currentPostTreatmentState = (U32)currentPostTreatmentState; + data.currentPostTxDrainState = (U32)currentDrainReservoirState; broadcastData( MSG_ID_HD_POST_TREATMENT_STATE, COMM_BUFFER_OUT_CAN_HD_BROADCAST, (U08*)&data, sizeof( POST_TREATMENT_STATE_DATA_T ) ); postTreatmentPublishTimerCounter = 0; @@ -551,6 +552,7 @@ static BOOL isReservoirDrainStarted( void ) { DG_CMD_RESPONSE_T dgCmdResp; + BOOL result = FALSE; if ( TRUE == getDGCommandResponse( DG_CMD_START_DRAIN, &dgCmdResp ) ) @@ -586,11 +588,14 @@ if ( TRUE == hasDGCompletedReservoirSwitch() ) { - state = DRAIN_FIRST_RESERVOIR_STATE; rinseConcentrateLines = TRUE; cmdStartDGDrain( DRAIN_RESERVOIR_TO_VOLUME_ML, TRUE, rinseConcentrateLines, TRUE ); } } + else if ( DG_MODE_DRAI == getDGOpMode() ) + { + state = DRAIN_FIRST_RESERVOIR_STATE; + } return state; } @@ -607,7 +612,7 @@ { DRAIN_STATE_T state = DRAIN_FIRST_RESERVOIR_STATE; - if ( TRUE == isReservoirDrainStarted() ) + /*if ( TRUE == isReservoirDrainStarted() ) { isDrainStarted = TRUE; } @@ -618,16 +623,16 @@ isDrainCompleted = TRUE; } - if ( TRUE == isDrainCompleted ) + if ( TRUE == isDrainCompleted )*/ { if ( ( DG_MODE_GENE == getDGOpMode() ) && ( DG_GEN_IDLE_MODE_STATE_FLUSH_WATER == getDGSubMode() ) ) { isDrainStarted = FALSE; isDrainCompleted = FALSE; state = DRAIN_SWITCH_RESERVOIR_STATE; - cmdSetDGActiveReservoir( getDGInactiveReservoir() ); + cmdSetDGActiveReservoir( DG_RESERVOIR_1 /*getDGInactiveReservoir()*/ ); } - } + } return state; } @@ -644,12 +649,15 @@ { DRAIN_STATE_T state = DRAIN_SWITCH_RESERVOIR_STATE; - if ( TRUE == hasDGCompletedReservoirSwitch() ) + if ( ( TRUE == hasDGCompletedReservoirSwitch() ) && ( DG_MODE_GENE == getDGOpMode() ) ) { - state = DRAIN_SECOND_RESERVOIR_STATE; rinseConcentrateLines = FALSE; cmdStartDGDrain( DRAIN_RESERVOIR_TO_VOLUME_ML, TRUE, rinseConcentrateLines, TRUE ); } + else if ( DG_MODE_DRAI == getDGOpMode() ) + { + state = DRAIN_SECOND_RESERVOIR_STATE; + } return state; } @@ -666,7 +674,7 @@ { DRAIN_STATE_T state = DRAIN_SECOND_RESERVOIR_STATE; - if ( TRUE == isReservoirDrainStarted() ) + /*if ( TRUE == isReservoirDrainStarted() ) { isDrainStarted = TRUE; } @@ -677,7 +685,7 @@ isDrainCompleted = TRUE; } - if ( TRUE == isDrainCompleted ) + if ( TRUE == isDrainCompleted )*/ { if ( ( DG_MODE_GENE == getDGOpMode() ) && ( DG_GEN_IDLE_MODE_STATE_FLUSH_WATER == getDGSubMode() ) ) {