handled None return for temp
This commit is contained in:
43
pyfan.py
43
pyfan.py
@@ -35,30 +35,34 @@ class ThermalZone:
|
||||
self.pid.Kd)))
|
||||
|
||||
def eval(self):
|
||||
diff = self.target - self.get_temp()
|
||||
val = self.pid(diff)
|
||||
if self.get_temp():
|
||||
diff = self.target - self.get_temp()
|
||||
val = self.pid(diff)
|
||||
|
||||
try:
|
||||
for target_fan in self.fans:
|
||||
if type(target_fan) is dict:
|
||||
self.write_sysfs(list(target_fan.keys())[0], min(int(val), list(target_fan.values())[0]))
|
||||
else:
|
||||
self.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))
|
||||
self.setup_pwm(1)
|
||||
try:
|
||||
for target_fan in self.fans:
|
||||
if type(target_fan) is dict:
|
||||
self.write_sysfs(list(target_fan.keys())[0], min(int(val), list(target_fan.values())[0]))
|
||||
else:
|
||||
self.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))
|
||||
self.setup_pwm(1)
|
||||
|
||||
p, i, d = self.pid.components
|
||||
p, i, d = self.pid.components
|
||||
|
||||
logging.getLogger("pyfan").debug(
|
||||
"[{name}] {val}% ({diff}C/{temp}C) ({p}|{i}|{d})".format(name=self.name, val=int(val / 255 * 100),
|
||||
diff=diff,
|
||||
temp=self.get_temp(), p=int(p), i=int(i),
|
||||
d=int(d)))
|
||||
logging.getLogger("pyfan").debug(
|
||||
"[{name}] {val}% ({diff}C/{temp}C) ({p}|{i}|{d})".format(name=self.name, val=int(val / 255 * 100),
|
||||
diff=diff,
|
||||
temp=self.get_temp(), p=int(p), i=int(i),
|
||||
d=int(d)))
|
||||
|
||||
def get_temp(self):
|
||||
return float(self.read_sysfs(self.temp_source)) * self.factor
|
||||
if self.read_sysfs(self.temp_source):
|
||||
return float(self.read_sysfs(self.temp_source)) * self.factor
|
||||
else:
|
||||
return None
|
||||
|
||||
def restore(self):
|
||||
self.setup_pwm(2)
|
||||
@@ -94,6 +98,7 @@ class ThermalZone:
|
||||
logging.getLogger("pyfan").warning(
|
||||
"[%s] temp source not found. Not ready yet or wrong path? (%s)" % (self.name,
|
||||
err.strerror))
|
||||
return None
|
||||
|
||||
def set_pwm_mode(self, path, value=1):
|
||||
self.write_sysfs(path + "_enable", value)
|
||||
|
Reference in New Issue
Block a user