Index: firmware/App/Controllers/DrainPump.c =================================================================== diff -u -r24e8fcb5744724be72ea26bebd95ec594c2c26fe -r752defbb739ea0756a8bf060f00bc6b9429c2764 --- firmware/App/Controllers/DrainPump.c (.../DrainPump.c) (revision 24e8fcb5744724be72ea26bebd95ec594c2c26fe) +++ firmware/App/Controllers/DrainPump.c (.../DrainPump.c) (revision 752defbb739ea0756a8bf060f00bc6b9429c2764) @@ -550,7 +550,7 @@ *************************************************************************/ static DRAIN_PUMP_STATE_T handleDrainPumpControlToTargetState( void ) { - DRAIN_PUMP_STATE_T result = DRAIN_PUMP_CONTROL_TO_TARGET_STATE; + DRAIN_PUMP_STATE_T state = DRAIN_PUMP_CONTROL_TO_TARGET_STATE; // control at set interval if ( ++drainControlTimerCounter >= DRP_CONTROL_INTERVAL ) @@ -565,7 +565,14 @@ drainControlTimerCounter = 0; } - return result; + // Check if the RPM is 0, and if it is turn off the pump + if ( 0 == getTargetDrainPumpRPM() ) + { + state = DRAIN_PUMP_OFF_STATE; + signalDrainPumpHardStop(); + } + + return state; } /*********************************************************************//**