added support for multiple temperature sources, highest wins
This commit is contained in:
16
pyfan.py
16
pyfan.py
@@ -73,10 +73,18 @@ class ThermalZone:
|
||||
d=int(d)))
|
||||
|
||||
def get_temp(self):
|
||||
if self.read_sysfs(self.temp_source):
|
||||
return float(self.read_sysfs(self.temp_source)) * self.factor
|
||||
if type(self.temp_source) is list:
|
||||
max_temp = -1.0
|
||||
for fan in self.temp_source:
|
||||
if self.read_sysfs(fan):
|
||||
max_temp = max(float(self.read_sysfs(fan)) * self.factor, max_temp)
|
||||
|
||||
return max_temp
|
||||
else:
|
||||
return None
|
||||
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)
|
||||
@@ -88,7 +96,7 @@ class ThermalZone:
|
||||
self.set_pwm_mode(list(target_fan.keys())[0], value)
|
||||
else:
|
||||
self.set_pwm_mode(target_fan, value)
|
||||
except FileNotFoundError as err:
|
||||
except FileNotFoundError:
|
||||
logging.getLogger("pyfan").warning("[%s] pwm not found."
|
||||
" Try reloading hwmon map..." % self.name)
|
||||
self.hwmap = self.pyfan.hwmap
|
||||
|
Reference in New Issue
Block a user