mirror of
				https://github.com/Klipper3d/klipper.git
				synced 2025-10-31 10:25:57 +01:00 
			
		
		
		
	
		
			
	
	
		
			29 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
		
		
			
		
	
	
			29 lines
		
	
	
		
			1.0 KiB
		
	
	
	
		
			Python
		
	
	
	
	
	
|  | # 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) |