diff --git a/pyfan.py b/pyfan.py index 65f565d..e096863 100644 --- a/pyfan.py +++ b/pyfan.py @@ -58,8 +58,8 @@ class ThermalZone: else: write_sysfs(target_fan, int(val)) except OSError as err: - logging.getLogger("pyfan").warning("[%s] Failed to set pwm, trying to reset it. (%s)" % self.name, - err.strerror) + logging.getLogger("pyfan").warning( + "[%s] Failed to set pwm, trying to reset it. (%s)" % (self.name, err.strerror)) self.setup_pwm(1) p, i, d = self.pid.components @@ -78,10 +78,14 @@ class ThermalZone: def setup_pwm(self, value=1): for target_fan in self.fans: - if type(target_fan) is dict: - set_pwm_mode(list(target_fan.keys())[0], value) - else: - set_pwm_mode(target_fan, value) + try: + if type(target_fan) is dict: + set_pwm_mode(list(target_fan.keys())[0], value) + else: + set_pwm_mode(target_fan, value) + except FileNotFoundError as err: + logging.getLogger("pyfan").warning("[%s] pwm not found. Not ready yet or wrong path? (%s)" % self.name, + err.strerror) class PyFan: