01647

ustreamer-01647

ファンコントロールソフトacerhdf

要点

  • 熱いのにファンが回らない
  • ファンコントロールソフトを設定してみよう
  • いろいろやったけれどファンが回らない
  • ファンが故障しているんだろう.諦める

メモ

acerhdf is a tool to monitor and control the fan of the popular acer aspire one netbook.
it is included in mainline kernel since 2.6.31. but on this page you can get my current local development state, which is going to be merged into mainline in the future.
!!! use it at your own risk !!! no acer d150 and d250 support !!!

http://www.piie.net/index.php?section=acerhdf

ファンコントロールモジュールの追加に成功しました。

AspireOneでubuntuを動作させているときに

今まで、背面というかウラ面というか、ファンのコントロールがされず、いつでも最大。
ガンガンに回っていました。

aspire one AOA150 ubuntuファンコントロール|とりあえずor2

私の場合は,どんな場合でもファンがガンガン回らない感じ.

$ uname -a
Linux kevin 3.8.0-26-generic #38-Ubuntu SMP Mon Jun 17 21:46:08 UTC 2013 i686 i686 i686 GNU/Linux

よって「linux-3.8: v0.5.30b (including workaround for bug in thermal-layer)」,acerhdf_kmod-0.5.30b-linux-3.8.tar.gzをダウンロードした.これを展開し,README.txtに従う.

$ sudo apt-get install build-essentials linux-headers-3.8.0-26
linux-headers-3.8.0-26 はすでに最新バージョンです。
以下の特別パッケージがインストールされます:
  dpkg-dev fakeroot g++ g++-4.7 libalgorithm-diff-perl
  libalgorithm-diff-xs-perl libalgorithm-merge-perl libdpkg-perl
  libfile-fcntllock-perl libstdc++6-4.7-dev make
$ make
$ sudo make install
$ echo "options acerhdf kernelmode=1" | sudo tee /etc/modprobe.d/acerhdf.conf

README.txt転載

acerhdf - A kernelmodule which monitors the temperature 
          of the aspire one netbook, turns on/off the fan
          as soon as the upper/lower threshold is reached.

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

0.0: VERY SHORT REFERENCE
   install: make && make install
   load module: modprobe acerhdf interval=10 fanon=67000 fanoff=62000 kernelmode=1
   read temperature: cat /sys/class/thermal/thermal_zone0/temp
   change parameter: echo 50000 > /sys/module/acerhdf/parameters/fanoff


1.0: INSTALL

1.1: DISTRIBUTION
   Ensure you've installed everything to build a kernelmodule. For debian you
   need at least to do: 'apt-get install build-essentials linux-kernel-headers'

1.2: ACERHDF
   Obtain the source of the latest version from http://piie.net/?section=acerhdf
   Untar the sources:  'tar xfvz acerhdf_kmod-<version>.tar.gz'
   Compile: 'cd acerhdf_kmod && make'
   Install: 'sudo make install'

1.3: AUTOSTART FAN CONTROL
   To automatically start the fan control you can do:
   'echo "options acerhdf kernelmode=1" | sudo tee /etc/modprobe.d/acerhdf.conf'


2.0: USAGE

2.1: LOADING THE MODULE
   To load the module into the kernel type: 'modprobe acerhdf'
   If you want let this happen automatically on system boot-up, add the module
   acerhdf to your list of autoloaded modules. (ask google how this works for
   your distribution)

2.2: CHECK
   Launch the command 'dmesg|grep acerhdf' and read the messages printed out.
   
2.3: READING THE TEMPERATURE
   The current temperature can be read by:
   'cat /sys/class/thermal/thermal_zone0/temp'

2.4: MONITORING / CONTROLLING THE FAN
   The fan can be monitored via: 
   'cat /sys/class/thermal/thermal_zone0/cdev0/cur_state'

   ATTENTION: setting the fan state manually can damage your hardware!
   To change the state manually you must first switch to user mode (see 2.5),
   then following commands will change the state:
   ON: 'echo 1 > /sys/class/thermal/thermal_zone0/cdev0/cur_state'
   OFF: 'echo 0 > /sys/class/thermal/thermal_zone0/cdev0/cur_state'
   
2.5: ENABLING / DISABLING THE FAN CONTROL
   enabled: acerhdf controls the fan automatically depending on the temperature
   and the temperature thresholds (see 2.6).
   disabled: acerhdf offers only the interface for reading the temperature and
   setting the state of the fan. A userspace program must take care about
   changing the fan state.

   You can switch on the fan control via:
   'echo enabled -n > /sys/class/thermal/thermal_zone0/mode'
   To switch the fan control off: 
   'echo disabled -n > /sys/class/thermal/thermal_zone0/mode'

2.6: CONFIGURATION / PARAMETERS
   acerhdf has following parameters:
   o interval=10 - The interval in seconds, in which the temperature should be
      checked in kernel mode. (default=10)
   o fanon=67000 - The temperature in Celsius above the fan should be switched on.
      (default=67000)
   o fanoff=62 - The temperature in Celsuis below the fan should be switched
      off. (default=62000)
   o verbose=0 - Print out verbose messages to dmesg. (default=0)
   o kernelmode=0 - enable the fan control after loading (default=0)
   o force_bios="" - For testing purposes, see below.
   o force_product="" - For testing purposes, see below.

   Those parameters can be set when loading the module. E.g:
   'modprobe acerhdf interval=5 fanon=65000 fanoff=60000 kernelmode=1'
   You can add them to '/etc/modprobe.conf', so that they are automatically
   applied, when the module is loaded. The line in modprobe.conf can look like
   this:
   'options acerhdf interval=5 fanon=65000 fanoff=60000'

   Additionally every parameter (besides force_bios and force_product) can also
   be read and written by accessing it via cat'ing or echo'ing the specific file in 
   /sys/module/acerhdf/parameters/*

   Example:
   'cat /sys/module/acerhdf/parameters/interval' to read the interval setting.
   'echo 50000 > /sys/module/acerhdf/parameters/fanoff' to change the fanoff
   setting.


3.0: TESTING UNSUPPORTED HARDWARE
      
      !!!! ATTENTION !!!!
   This could harm your hardware if you do not know what you are doing!
   
   If you have hardware / bios which isn't officially supported by acerhdf, but
   you are sure it should work, you can try to load the module by:
   'modprobe acerhdf force_bios="v0.3305" force_product="AOA150"' or any other
   bios version defined in source of acerhdf. The force_bios parameter will cause
   acerhdf to omit the hardware and bios check and to pretend the chosen bios
   version is available.
   -> acerhdf will be started in user mode.
   Before switching to kernel mode (see 2.5) test if the temperature and the fan
   can be correctly accessed (see 2.4)

   IMPORTANT: if you get your hardware / bios working with this parameter,
   report it to peter (a) piie.net then it will get into the list of supported
   devices.