diff --git a/klippy/extras/controller_fan.py b/klippy/extras/controller_fan.py index 51b15a629..267a28560 100644 --- a/klippy/extras/controller_fan.py +++ b/klippy/extras/controller_fan.py @@ -49,12 +49,11 @@ class ControllerFan: elif self.last_on < self.idle_timeout: speed = self.idle_speed self.last_on += 1 - if speed == self.last_speed: - return - self.last_speed = speed - curtime = self.printer.get_reactor().monotonic() - print_time = self.fan.get_mcu().estimated_print_time(curtime) - self.fan.set_speed(print_time + PIN_MIN_TIME, speed) + if speed != self.last_speed: + self.last_speed = speed + curtime = self.printer.get_reactor().monotonic() + print_time = self.fan.get_mcu().estimated_print_time(curtime) + self.fan.set_speed(print_time + PIN_MIN_TIME, speed) return eventtime + 1. def load_config_prefix(config): diff --git a/klippy/extras/heater_fan.py b/klippy/extras/heater_fan.py index 1294b4d24..43009b062 100644 --- a/klippy/extras/heater_fan.py +++ b/klippy/extras/heater_fan.py @@ -32,12 +32,11 @@ class PrinterHeaterFan: current_temp, target_temp = heater.get_temp(eventtime) if target_temp or current_temp > self.heater_temp: speed = self.fan_speed - if speed == self.last_speed: - return - self.last_speed = speed - curtime = self.printer.get_reactor().monotonic() - print_time = self.fan.get_mcu().estimated_print_time(curtime) - self.fan.set_speed(print_time + PIN_MIN_TIME, speed) + if speed != self.last_speed: + self.last_speed = speed + curtime = self.printer.get_reactor().monotonic() + print_time = self.fan.get_mcu().estimated_print_time(curtime) + self.fan.set_speed(print_time + PIN_MIN_TIME, speed) return eventtime + 1. def load_config_prefix(config):