Index: firmware/App/Modes/Rinseback.c =================================================================== diff -u -r0a4dcd288d4347b85baaa0b07da568b6add5eac7 -r82b7c4c94b0f8b3f8a3d3d2e41384a7a7d497215 --- firmware/App/Modes/Rinseback.c (.../Rinseback.c) (revision 0a4dcd288d4347b85baaa0b07da568b6add5eac7) +++ firmware/App/Modes/Rinseback.c (.../Rinseback.c) (revision 82b7c4c94b0f8b3f8a3d3d2e41384a7a7d497215) @@ -281,7 +281,7 @@ void execRinseback( void ) { rinsebackTimerCtr++; - + RINSEBACK_STATE_T priorSubState = rinsebackState; switch ( rinsebackState ) { case RINSEBACK_STOP_INIT_STATE: @@ -309,6 +309,10 @@ break; } + if ( priorSubState != rinsebackState ) + { + SEND_EVENT_WITH_2_U32_DATA( HD_EVENT_SUB_STATE_CHANGE, priorSubState, rinsebackState ); + } // Rinseback flags should be handled by now - reset in case not handled by current state resetRinsebackFlags();