2008年02月20日

EN15000でlm_sensors

VIA EPIA EN-15000lm_sensorsを使う方法。

まずはカーネル側の設定。
必要なドライバは以下のとおり。
Device Drivers --->
  I2C support --->
    <M> I2C support
    <M>  I2C device interface
          I2C Hardware Bus support --->
            <M> VIA 82C596/82C686/82xx
  Hardware Monitoring support --->
    <M> Hardware Monitoring support
    <M>   Winbond W83627HF, W83627THF, W83637HF, W83687THF, W83697HF

私はモジュールにしましたが、カーネルに組み込んでも大丈夫なのかどうかはちょっとよく分かりません。(大丈夫のような気はしますが…)
モジュール追加だけであれば、いつもどおり、
make modules
make modules_install

でOK。
続いてプログラムの準備。これはいとも簡単。
emerge -av lm_sensors

そしたら設定ファイル(/etc/sensors.conf)を書きます。EN-15000が使っているchipはw83697hf(もしかしたらw83627hfかも)なのですが、サンプルファイルに書いてある値をそのまま使うと何だかとんでもない値が出てしまいます。BIOSでの測定値などを考慮して、以下のとおり設定しました。
chip "w83697hf-*"

# label
label in0 "VCore"
label in2 "+3.3V"
label in3 "+5V"
label in4 "+12V"
label in7 "V5SB"
label in8 "VBat"

# ignore in5/in6
ignore in5
ignore in6

# temp/fan label
label fan1 "SYSFAN"
label fan2 "CPUFAN"
label temp1 "SYS"
label temp2 "CPU"

# compute
compute in0 (0.98)*@ , @/(0.98)
compute in3 ((6.8/10)+1)*@ , @/((6.8/10)+1)
compute in4 ((28/10)+1)*@ , @/((28/10)+1)
compute in7 ((5.5/10)+1)*@ , @/((5.5/10)+1)

# max/min
set in0_min 0.956 * 0.95
set in0_max 0.956 * 1.05
set in2_min 3.3 * 0.95
set in2_max 3.3 * 1.05
set in3_min 5.0 * 0.95
set in3_max 5.0 * 1.05
set in4_min 12 * 0.90
set in4_max 12 * 1.10
set in7_min 5 * 0.95
set in7_max 5 * 1.05
set in8_min 3.0 * 0.80
set in8_max 3.0 * 1.20
set fan1_min 2789
set fan2_min 3409

# sensor types
set sensor1 2
set sensor2 1

# temperature limits
set temp1_over 50
set temp1_hyst 37
set temp2_over 45
set temp2_hyst 30

# set beep disable
set beep_enable 0
そしたらセンサーの検出(?)をします。(これは最初1回だけでOK)
sensors-detect

色んな事を聞かれますが、とりあえず全部yesと答えておきましょう。
(すいません、よく分かってないんです)

これで準備完了。
センサーモジュールをロードして設定を読み込みます。
modprobe w83627hf
/usr/bin/sensors -s

では、実行してみましょう。
# sensors
w83697hf-isa-0290
Adapter: ISA adapter
VCore: +0.97 V (min = +0.91 V, max = +1.00 V)
+3.3V: +3.28 V (min = +3.14 V, max = +3.47 V)
+5V: +4.97 V (min = +4.76 V, max = +5.24 V)
+12V: +12.04 V (min = +10.82 V, max = +13.19 V)
V5SB: +5.01 V (min = +4.76 V, max = +5.26 V)
VBat: +3.20 V (min = +2.40 V, max = +3.60 V)
SYSFAN: 2986 RPM (min = 2789 RPM, div = 4)
CPUFAN: 0 RPM (min = 3409 RPM, div = 4) ALARM
SYS: +33 C (high = +50 C, hyst = +37 C) sensor = transistor
CPU: +20.5 C (high = +45 C, hyst = +30 C) sensor = diode
alarms:
beep_enable:
Sound alarm disabled
こんな感じに出てくればOKです。

ちなみにCPUFAN0RPMなのはCPUファンの電源ケーブルを抜いてしまっているからです。普通にケーブル繋げばちゃんと回転数は拾えますのでご安心を。冬であればファンレス状態でemerge worldとかしてもCPU温度は37℃くらいまでしか行かないので、思い切ってファンレス運用中です(ケースファンは動かしてます)。真夏は無理としても、どこまでファンレスで行けるかちょっと楽しみです。
posted by 月水和尚 (とも) at 17:33 | Comment(2) | TrackBack(0) | Linux(ディストリビューション固有)
この記事へのコメント
Tips。

sensors_detectを使えばどんなハードウェアモニターのチップを使っているか分かります。参考までに。
Posted by kenya at 2008年02月20日 18:06
それがさ〜、

sensors-detectの結果:W83697HF
ドライバの名前   :w83627hf
sensors.confの定義名:w83697hf-*

どっちやねん。(笑)
Posted by tomo at 2008年02月20日 21:38
コメントを書く
お名前: [必須入力]

メールアドレス:

ホームページアドレス:

コメント: [必須入力]

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。

この記事へのトラックバック
×

この広告は180日以上新しい記事の投稿がないブログに表示されております。