Index: firmware/App/Controllers/DrainPump.c =================================================================== diff -u -rf68e01a2daee6cb88bb54816aee56668d662bcd4 -ra5fcb6fc6b04e8940e3c38be453ad8ff9168a616 --- firmware/App/Controllers/DrainPump.c (.../DrainPump.c) (revision f68e01a2daee6cb88bb54816aee56668d662bcd4) +++ firmware/App/Controllers/DrainPump.c (.../DrainPump.c) (revision a5fcb6fc6b04e8940e3c38be453ad8ff9168a616) @@ -442,7 +442,16 @@ *************************************************************************/ static DRAIN_PUMP_STATE_T handleDrainPumpOpenLoopState( void ) { - return DRAIN_PUMP_OPEN_LOOP_STATE; + DRAIN_PUMP_STATE_T state = DRAIN_PUMP_OPEN_LOOP_STATE; + + // Check if the RPM is 0, and if it is turn off the pump + if ( getTargetDrainPumpRPM() == 0 ) + { + state = DRAIN_PUMP_OFF_STATE; + signalDrainPumpHardStop(); + } + + return state; } /*********************************************************************//** @@ -575,11 +584,7 @@ if ( TRUE == isTestingActivated() ) { - // Check for the RPM to be in range - if ( value >= MIN_DRAIN_PUMP_RPM && value <= MAX_DRAIN_PUMP_RPM ) - { - result = setDrainPumpTargetRPM( value ); - } + result = setDrainPumpTargetRPM( value ); } return result; Index: firmware/App/Controllers/Thermistors.c =================================================================== diff -u -r374bab15ea30aba82ee139e8a494764db312f468 -ra5fcb6fc6b04e8940e3c38be453ad8ff9168a616 --- firmware/App/Controllers/Thermistors.c (.../Thermistors.c) (revision 374bab15ea30aba82ee139e8a494764db312f468) +++ firmware/App/Controllers/Thermistors.c (.../Thermistors.c) (revision a5fcb6fc6b04e8940e3c38be453ad8ff9168a616) @@ -102,8 +102,8 @@ thermistorsStatus[ THERMISTOR_POWER_SUPPLY_2 ].betaValue = POWER_SUPPLY_THERMISTOR_BETA_VALUE; // Initialize a persistent alarm for thermistors temeprature out of range - initPersistentAlarm( PERSISTENT_ALARM_THERMISTOR_TEMPERATURE_OUT_OF_RANGE, ALARM_ID_DG_THERMISOTRS_TEMPERATURE_OUT_OF_RANGE, - TRUE, MAX_ALLOWED_TEMP_OUT_OF_RANGE_PERIOD, MAX_ALLOWED_TEMP_OUT_OF_RANGE_PERIOD ); + //initPersistentAlarm( PERSISTENT_ALARM_THERMISTOR_TEMPERATURE_OUT_OF_RANGE, ALARM_ID_DG_THERMISOTRS_TEMPERATURE_OUT_OF_RANGE, + // TRUE, MAX_ALLOWED_TEMP_OUT_OF_RANGE_PERIOD, MAX_ALLOWED_TEMP_OUT_OF_RANGE_PERIOD ); } /*********************************************************************//** @@ -234,7 +234,7 @@ // If the values are out of range, raise an alarm if ( temperature < MIN_ALLOWED_TEMPERATURE || temperature >= MAX_ALLOWED_TEMPERATURE ) { - SET_ALARM_WITH_2_F32_DATA( ALARM_ID_DG_THERMISOTRS_TEMPERATURE_OUT_OF_RANGE, thermistor, temperature ); + //SET_ALARM_WITH_2_F32_DATA( ALARM_ID_DG_THERMISOTRS_TEMPERATURE_OUT_OF_RANGE, thermistor, temperature ); // If any thermistor/sensor is not in range, POST has failed thermistorsSelfTestReslt = SELF_TEST_STATUS_FAILED; }