From 0a43774432c149eb07df8437626736345b057521 Mon Sep 17 00:00:00 2001 From: Timofey Titovets Date: Tue, 27 Jan 2026 03:22:16 +0100 Subject: [PATCH] heaters: refactor to mux commands Signed-off-by: Timofey Titovets --- klippy/extras/heaters.py | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/klippy/extras/heaters.py b/klippy/extras/heaters.py index fcec44fcd..ec4792dea 100644 --- a/klippy/extras/heaters.py +++ b/klippy/extras/heaters.py @@ -255,8 +255,6 @@ class PrinterHeaters: gcode.register_command("TURN_OFF_HEATERS", self.cmd_TURN_OFF_HEATERS, desc=self.cmd_TURN_OFF_HEATERS_help) gcode.register_command("M105", self.cmd_M105, when_not_ready=True) - gcode.register_command("TEMPERATURE_WAIT", self.cmd_TEMPERATURE_WAIT, - desc=self.cmd_TEMPERATURE_WAIT_help) def load_config(self, config): self.have_load_sensors = True # Load default temperature sensors @@ -299,7 +297,12 @@ class PrinterHeaters: "Unknown temperature sensor '%s'" % (sensor_type,)) return self.sensor_factories[sensor_type](config) def register_sensor(self, config, psensor, gcode_id=None): - self.available_sensors.append(config.get_name()) + sensor_name = config.get_name() + self.available_sensors.append(sensor_name) + gcode = self.printer.lookup_object('gcode') + gcode.register_mux_command('TEMPERATURE_WAIT', "SENSOR", sensor_name, + self.cmd_TEMPERATURE_WAIT, + desc=self.cmd_TEMPERATURE_WAIT_help) if gcode_id is None: gcode_id = config.get('gcode_id', None) if gcode_id is None: @@ -361,8 +364,6 @@ class PrinterHeaters: cmd_TEMPERATURE_WAIT_help = "Wait for a temperature on a sensor" def cmd_TEMPERATURE_WAIT(self, gcmd): sensor_name = gcmd.get('SENSOR') - if sensor_name not in self.available_sensors: - raise gcmd.error("Unknown sensor '%s'" % (sensor_name,)) min_temp = gcmd.get_float('MINIMUM', float('-inf')) max_temp = gcmd.get_float('MAXIMUM', float('inf'), above=min_temp) if min_temp == float('-inf') and max_temp == float('inf'):