MSIラップトップのファン制御:pwm対応センサーなし?


8

Ubuntu 16.04でMSI GS60-2PCラップトップのファン速度を制御しようとしています。

しかしpwmconfig

There are no pwm-capable sensors modules installed

Windowsの一部のユーティリティがファンを制御できるため、これらのファンを制御できると確信しています。

私がやったこと

  1. 私はsensors-detectこのように(rootとして)実行しました:

    yes | sensors-detect
    

「coretemp」のみを検出するようです。これが完全な結果です。

  1. 次にpwmconfig(ルートとして):

    pwmconfig
    

そして、有名なメッセージを受け取ります There are no pwm-capable sensors modules installed

  1. 私は次のことを試しましたが、うまくいきませんでした:
    • GRUBへの追加(および再起動): acpi_osi=Linux
    • GRUBへの追加(および再起動): acpi_osi=!Windows 2012
    • GRUBへの追加(および再起動): acpi_enforce_resources=lax

sensorsコマンドを実行したときに得られるもの

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)

編集:これはlspciの結果です。

回答:


5

MSI GS60 6QCラップトップ用に含まれているGS660プロファイルを使用して、Phereinの「ファン制御ツール」でWindowsのファンをある程度制御できました。そこで、Phereinの "Fan Profile Applier.exe"に相当するLinux版の小さなpythonスクリプトを作成しました。

#!/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))

これが私が現在引数として使用している入力ファイルです。これは、フェレーンのツールで生成されたQuiet.rwファイルです。

-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

最新のECファームウェアでは、実際にはファン速度は0 RPMと3000 RPMの間にありません。


うわー !試してみましたが、以前ほど静かではありませんが、ファンの速度が変わりました。私は非常に興味があります:-)いくつかの質問:PCの再起動時に変更がリセットされますね。すべてのセンサーを考慮するのですか、それともCPUだけですか?
ElectronWill

私はちょうど見つけたここにあなたが提供GX660のプロフィールより良い動作しているようですGS60のプロファイルを!少なくとも私のマシンでは。GX660のプロファイルをより適切に機能させる別のファームウェアバージョンをお持ちですか?私が理解している限り、違いはオフセットです。私が見つけたプロファイルは0x6Aではなく0x69から始まります。
ElectronWill

0

このラップトップはIntel HM87チップセットを使用しています。このチップセットのモバイルバージョンにはPWMハードウェアが含まれていないため、オペレーティングシステムでファンを制御できません。ファン制御が可能な場合は、BIOSを介して行われます。

MSI G60のオーナーズマニュアルには、このラップトップの一部のモデルには、ファンの速度を制御する「クーラーブースト」ボタンが付いていると記載されています。また、Fn + F5を押すと、ラップトップがさまざまな電源管理モードに切り替わります。


奇妙なこと:MSIは、このソフトウェアはファンを「制御」できると主張しています。それが不可能な場合はどうしますか?...多分それはECファームウェアをフラッシュしますか?
ElectronWill

@Electronwillこれはアプリケーションソフトウェアではなく、BIOSの機能です。回答を更新しました。
Steve Roome

「クーラーブーストボタン」とは、このボタンのことですか?私のGS60にはそんなにクールなボタンがないようです。このボタンは、GE60およびGE70で使用できます。
ElectronWill

それは残念だ。ラップトップのマニュアルには、一部のモデルで使用できると記載されています。
Steve Roome 2016年

マニュアルはどこにあるのだろう。MSIのWebサイトに掲載されている公式サイトには、クーラーボタンについての記載はありません。クイックガイドもしません。とにかく、あなたはチップセットについて正しいので、私はあなたの答えを受け入れます。
ElectronWill
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.