Ich versuche, die Lüftergeschwindigkeit meines MSI GS60-2PC-Laptops unter Ubuntu 16.04 zu steuern.
Aber pwmconfig
meldet das
There are no pwm-capable sensors modules installed
Ich bin mir ziemlich sicher, dass diese Lüfter gesteuert werden können, da einige Dienstprogramme unter Windows sie steuern können.
Was ich getan habe
-
Ich habe
sensors-detect
ausgeführt (als root) so:yes | sensors-detect
Es scheint nur "Coretemp" zu erkennen. Hier ist das vollständige Ergebnis.
-
Dann
pwmconfig
(als root):pwmconfig
Und ich erhalte die berühmte Meldung There are no pwm-capable sensors modules installed
.
- Ich habe die folgenden Dinge ausprobiert, die nicht funktioniert haben:
- Grub hinzufügen (und dann neu starten):
acpi_osi=Linux
- Grub hinzufügen (und dann neu starten):
acpi_osi=!Windows 2012
- Grub hinzufügen (und dann neu starten):
acpi_enforce_resources=lax
- Grub hinzufügen (und dann neu starten):
Was ich bekomme, wenn ich die sensors
ausführe Befehl
acpitz-virtual-0
Adapter: Virtual device
temp1: +27.8°C (crit = +105.0°C)
temp2: +29.8°C (crit = +105.0°C)
temp3: +50.0°C (crit = +100.0°C)
coretemp-isa-0000
Adapter: ISA adapter
Physical id 0: +48.0°C (high = +84.0°C, crit = +100.0°C)
Core 0: +48.0°C (high = +84.0°C, crit = +100.0°C)
Core 1: +44.0°C (high = +84.0°C, crit = +100.0°C)
Core 2: +46.0°C (high = +84.0°C, crit = +100.0°C)
Core 3: +44.0°C (high = +84.0°C, crit = +100.0°C)
EDIT:Hier ist das Ergebnis von lspci.
Akzeptierte Antwort:
Ich habe es geschafft, den Lüfter in Windows mit den „Fan Control Tools“ von Pherein zu kontrollieren, indem ich das mitgelieferte GS660-Profil für meinen MSI GS60 6QC-Laptop verwendet habe. Also habe ich ein kleines Python-Skript erstellt, das das Linux-Äquivalent von Phereins „Fan Profile Applier.exe“ ist:
#!/usr/bin/env python
import os
import sys
EC_IO_FILE="/sys/kernel/debug/ec/ec0/io"
if not os.path.exists(EC_IO_FILE):
os.system("modprobe ec_sys write_support=1")
def ec_write(addr,value):
with open(EC_IO_FILE,"rb") as f:
f.seek(addr)
old_value=ord(f.read(1))
if (value != old_value):
print(" %3d => %3d" % (old_value, value))
with open(EC_IO_FILE,"wb") as f:
f.seek(addr)
f.write(bytearray([value]))
else:
print(" = %3d" % value)
for line in open(sys.argv[1]).readlines():
print(line.strip())
if line.startswith(">WEC "):
addr,value=line.split()[1:3]
ec_write(int(addr,0), int(value,0))
Hier ist die Eingabedatei, die ich derzeit als Argument verwende, es ist die Quiet.rw-Datei, die mit Phereins Tool generiert wurde:
-Profile Name: Quiet
[Temperatures_1]
>WEC 0x6A 0x2f
>WEC 0x6B 0x35
>WEC 0x6C 0x43
>WEC 0x6D 0x50
>WEC 0x6E 0x5A
>WEC 0x6F 0x5F
>WEC 0x70 0x64
----
[FanSpeeds_1]
>WEC 0x72 0x00
>WEC 0x73 0x10
>WEC 0x74 0x3E
>WEC 0x75 0x45
>WEC 0x76 0x4C
>WEC 0x77 0x54
>WEC 0x78 0x5B
----
[Temperatures_2]
>WEC 0x82 0x37
>WEC 0x83 0x41
>WEC 0x84 0x4B
>WEC 0x85 0x55
>WEC 0x86 0x5A
>WEC 0x87 0x5D
>WEC 0x88 0x66
----
[FanSpeeds_2]
>WEC 0x8A 0x0
>WEC 0x8B 0x3B
>WEC 0x8C 0x46
>WEC 0x8D 0x54
>WEC 0x8E 0x5B
>WEC 0x8F 0x5B
>WEC 0x90 0x5B
----
>RwExit
Mit der neusten EC-Firmware gibt es eigentlich keinen Wert zwischen 0 U/min und 3000 U/min für die Lüftergeschwindigkeit.
Verwandte:Wie starte ich X Window Server von der Befehlszeile in Ubuntu neu?