diff options
author | Simon Kühling <mail@simonkuehling.de> | 2019-12-12 13:33:23 +0100 |
---|---|---|
committer | KevinOConnor <kevin@koconnor.net> | 2019-12-13 10:45:04 -0500 |
commit | 2721211456d6e8613e76681d0e06f15c46f8d113 (patch) | |
tree | 8aecb857c6019f516a64a7f0774bb19fca06e511 /klippy | |
parent | 4cbbe18afdb44b08636d217eb9a63b466502da75 (diff) | |
download | kutter-2721211456d6e8613e76681d0e06f15c46f8d113.tar.gz kutter-2721211456d6e8613e76681d0e06f15c46f8d113.tar.xz kutter-2721211456d6e8613e76681d0e06f15c46f8d113.zip |
heater: Add PrinterHeater get_status() function
Provide a list of available heater and sensor names to
gcode macro templates through the printer.heater.available_heaters
and printer.heater.available_sensors variables
Signed-off-by: Simon Kühling <mail@simonkuehling.de>
Diffstat (limited to 'klippy')
-rw-r--r-- | klippy/heater.py | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/klippy/heater.py b/klippy/heater.py index 5914fbbb..3631db38 100644 --- a/klippy/heater.py +++ b/klippy/heater.py @@ -233,6 +233,8 @@ class PrinterHeaters: self.sensor_factories = {} self.heaters = {} self.gcode_id_to_sensor = {} + self.available_heaters = [] + self.available_sensors = [] self.printer.register_event_handler("gcode:request_restart", self.turn_off_all_heaters) # Register TURN_OFF_HEATERS command @@ -250,6 +252,7 @@ class PrinterHeaters: # Create heater self.heaters[heater_name] = heater = Heater(config, sensor) self.register_sensor(config, heater, gcode_id) + self.available_heaters.append(config.get_name()) return heater def lookup_heater(self, heater_name): if heater_name not in self.heaters: @@ -276,6 +279,7 @@ class PrinterHeaters: raise self.printer.config_error( "G-Code sensor id %s already registered" % (gcode_id,)) self.gcode_id_to_sensor[gcode_id] = psensor + self.available_sensors.append(config.get_name()) def turn_off_all_heaters(self, print_time): for heater in self.heaters.values(): heater.set_temp(print_time, 0.) @@ -283,6 +287,9 @@ class PrinterHeaters: def cmd_TURN_OFF_HEATERS(self, params): print_time = self.printer.lookup_object('toolhead').get_last_move_time() self.turn_off_all_heaters(print_time) + def get_status(self, eventtime): + return {'available_heaters': self.available_heaters, + 'available_sensors': self.available_sensors} def add_printer_objects(config): config.get_printer().add_object('heater', PrinterHeaters(config)) |