Index: firmware/App/Modes/FlushPermeate.c =================================================================== diff -u -r8d272582cbd2cb5fc0c6af0fead2867ce02658b0 -r921198ed4c337cd5bcebbeedd7d724da4b1e23be --- firmware/App/Modes/FlushPermeate.c (.../FlushPermeate.c) (revision 8d272582cbd2cb5fc0c6af0fead2867ce02658b0) +++ firmware/App/Modes/FlushPermeate.c (.../FlushPermeate.c) (revision 921198ed4c337cd5bcebbeedd7d724da4b1e23be) @@ -106,6 +106,8 @@ *************************************************************************/ void execPermeateFlush( void ) { + FP_PERM_FLUSH_STATE_T prevState = permeateFlushState; + switch ( permeateFlushState ) { case PERM_FLUSH_IN_PROGRESS: @@ -122,6 +124,10 @@ break; } + if ( prevState != permeateFlushState ) + { + setPermeateFlushTransition( permeateFlushState ); + } // publish Permeate flush data on interval publishPermeateFlushData(); } @@ -139,7 +145,6 @@ if ( TRUE == doesAlarmStatusIndicateStop() ) { - setPermeateFlushTransition( PERM_FLUSH_PAUSED ); state = PERM_FLUSH_PAUSED; } @@ -149,7 +154,6 @@ if( PERMEATE_FLUSH_CONDUCTIVITY_THRESHOLD > p18conductivity ) { isFlushComplete = TRUE; - setPermeateFlushTransition( PERM_FLUSH_PAUSED ); state = PERM_FLUSH_PAUSED; } @@ -159,7 +163,6 @@ if( TRUE == didTimeout( permeateFlushAlarmTimer, getPermeateFlushAlarmTimeout() ) ) { SET_ALARM_WITH_2_U32_DATA( ALARM_ID_FP_PERMEATE_FLUSH_CONDUCTIVITY_TIMEOUT, PERMEATE_FLUSH_CONDUCTIVITY_THRESHOLD, p18conductivity) - setPermeateFlushTransition( PERM_FLUSH_PAUSED ); state = PERM_FLUSH_PAUSED; } } @@ -182,7 +185,6 @@ if ( TRUE == pendingStartPermeateFlushRequest ) { isFlushComplete = FALSE; - setPermeateFlushTransition( PERM_FLUSH_IN_PROGRESS ); state = PERM_FLUSH_IN_PROGRESS; } return state;