diff --git a/panels/temperature.py b/panels/temperature.py index 9f6224db..5d9e2349 100644 --- a/panels/temperature.py +++ b/panels/temperature.py @@ -39,11 +39,15 @@ class TemperaturePanel(ScreenPanel): state = self._printer.get_state() logging.info(state) selection = [] - if "extruder" in self._printer.get_tools(): - selection.append("extruder") if state not in ["printing", "paused"]: + for extruder in self._printer.get_tools(): + selection.append(extruder) self.show_preheat = True selection.extend(self._printer.get_heaters()) + else: + current_extruder = self._screen.printer.get_stat("toolhead", "extruder") + if current_extruder: + selection.append(current_extruder) # Select heaters for h in selection: @@ -277,6 +281,7 @@ class TemperaturePanel(ScreenPanel): elif target > max_temp: self._screen.show_popup_message(_("Can't set above the maximum:") + f' {max_temp}') return False + logging.debug(f"Invalid {heater} Target:{target}/{max_temp}") return False def preheat_gcode(self, setting):