diff options
author | bondus <liquidpontus@yahoo.se> | 2020-08-07 17:39:44 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2020-08-07 11:39:44 -0400 |
commit | c9e7119a933530c2989c94f7333bbea963a47fbd (patch) | |
tree | ac3db34cf96f5e5d43cfa831f1c4db51a87ad765 /klippy/extras | |
parent | 3eefc037c5ffbef5dbb4d40baa89bee6d0f98473 (diff) | |
download | kutter-c9e7119a933530c2989c94f7333bbea963a47fbd.tar.gz kutter-c9e7119a933530c2989c94f7333bbea963a47fbd.tar.xz kutter-c9e7119a933530c2989c94f7333bbea963a47fbd.zip |
fan_generic: Add support for named fans and gcode to control them (#3054)
Signed-off-by: Pontus Borg <liquidpontus@yahoo.se>
Diffstat (limited to 'klippy/extras')
-rw-r--r-- | klippy/extras/fan_generic.py | 28 |
1 files changed, 28 insertions, 0 deletions
diff --git a/klippy/extras/fan_generic.py b/klippy/extras/fan_generic.py new file mode 100644 index 00000000..def9a77e --- /dev/null +++ b/klippy/extras/fan_generic.py @@ -0,0 +1,28 @@ +# Support fans that are controlled by gcode +# +# Copyright (C) 2016-2020 Kevin O'Connor <kevin@koconnor.net> +# +# This file may be distributed under the terms of the GNU GPLv3 license. +from . import fan + +class PrinterFanGeneric: + cmd_SET_FAN_SPEED_help = "Sets the speed of a fan" + def __init__(self, config): + self.printer = config.get_printer() + self.fan = fan.Fan(config, default_shutdown_speed=0.) + self.fan_name = config.get_name().split()[-1] + + gcode = self.printer.lookup_object("gcode") + gcode.register_mux_command("SET_FAN_SPEED", "FAN", + self.fan_name, + self.cmd_SET_FAN_SPEED, + desc=self.cmd_SET_FAN_SPEED_help) + + def get_status(self, eventtime): + return self.fan.get_status(eventtime) + def cmd_SET_FAN_SPEED(self, gcmd): + speed = gcmd.get_float('SPEED', 0.) + self.fan.set_speed_from_command(speed) + +def load_config_prefix(config): + return PrinterFanGeneric(config) |