新iMacのHDD交換後のファン制御方法

Apple, Diary, Mac

以前の記事(iMacが故障!!〜そして復活へ〜)で私が使用しているiMacの故障から復活までの経緯を書きました。

思いのほかHDD交換後のファン暴走に悩んでいる方が多かった為、改めてファン制御について追記を含めた記事を書こうと思います。

この方法はLate2009以降のiMacに対応しています。

HDDファン暴走の原因

Late2009以降のiMacに使用されている純正HDDはApple社の特注品です。

このHDDはS.M.A.R.T.情報からHDDの温度を読み取ってファンの制御をしますが、汎用品のHDDはこのような事ができません。

その為、HDDを交換した場合はHDD温度がエラーとなりファンが暴走してしまうという結果になります。

ファンの制御をするアプリで有名なのはiMac Fan ControlsmcFanControlの2つがありますが、今回の問題はHDD温度が読み取れないという根本的な問題がある為通常のアプリの使用方法では役に立ちません。

 

対策と手順

上記のファン制御アプリのうち、smcFanControlをターミナルコマンドによって強制的にファンの回転数を制御します。

手順は以下の通りです。

  1. smcFanControlをインストールする
  2. アプリケーションフォルダ内のユーティリティフォルダにappを移動
  3. ターミナル.appを開く
  4. 下記コマンドの中から希望の回転数コマンドを入力する

HDDファン1250回転

/Applications/Utilities/smcFanControl.app/Contents/Resources/smc -k F1Mx -w 12c0

HDDファン2750回転

/Applications/Utilities/smcFanControl.app/Contents/Resources/smc -k F1Mx -w 2af8

HDDファン3600回転

/Applications/Utilities/smcFanControl.app/Contents/Resources/smc -k F1Mx -w 3840

これらは、最後の4文字が16進数となっており、その4文字を変える事でファンの回転数を変更できます。

 

制御の自動化と手順

さらに、この方法をスクリプトによって自動化しましょう。

これにより、iMac起動後にすぐファンの回転数を自動で制御できます。

  1. AppleScriptエディタを開く
  2. 下記のコマンドを入力してコンパイルをクリック
  3. 問題が無ければ別名保存でファイルフォーマットをアプリケーションにし、名前を付け.appとして保存
  4. システム環境設定を開き「アカウント」のログイン項目タブを開く
  5. 3番で作成した.appを登録する

AppleScript用コマンド

HDDファン1250回転

tell application "Terminal"
	activate
	do script with command "/Applications/Utilities/smcFanControl.app/Contents/Resources/smc -k F1Mx -w 12c0"
end tell

HDDファン2750回転

tell application "Terminal"
	activate
	do script with command "/Applications/Utilities/smcFanControl.app/Contents/Resources/smc -k F1Mx -w 2af8"
end tell

HDDファン3600回転

tell application "Terminal"
	activate
	do script with command "/Applications/Utilities/smcFanControl.app/Contents/Resources/smc -k F1Mx -w 3840"
end tell

これでiMac起動後にファン制御のスクリプトが立ち上がり、ファン制御の自動化ができます。

 

まとめ

私はsmcFanControlをツールバーに表示させ、HDD温度を見ながら(温度は読み取れないはずなのになぜか表示されます)上記の自動化.appを都度起動して制御しています。

ですので、3つそれぞれの制御用スクリプトを作っておくのが良いかと思います。

また、$10のシェアウェアですが、今回の問題に対応したHDD Fan Controlというアプリもあるようです。

私は使用した事が無いのでレビューできませんが、興味のある方はどうぞ。

Related Posts Plugin for WordPress, Blogger...

  • ichi

    はじめまして
    imacのHDDが壊れてしまい、外付けHDDから起動したのですが
    HDDセンサーが効かなくなってしまいあせっていたのですが
    ブログの記事のおかげで制御することができました。
    ありがとうございました。
    すみません、ひとつお聞きしたいのですが
    スリープは正常に動作していますか?
    私のimacはスリープにしても、HDDのファンが動作したままで
    解除しようとしてもできなくなってしまい、強制終了しています。
    HDDを換えていないせいかもしれませんが。
    どうぞよろしくお願いします。

    • junown

      >ichiさん
      はじめまして。
      私の場合ですが、ファンは制御した回転数のままではありますがスリープ機能自体は動作しています。
      スリープが解除できないという現象は起きていないですね。
      私はHDDを交換しているのでスリープが解除できているのかもしれませんが、それが原因かどうかは残念ながら分かりません。
      しばらく今お使いのiMacを使い続けるという事でしたらHDDの交換も視野に入れてみてはいかがでしょうか。

  • ichi

    返信が遅くなりすみませんでした。
    やはり、HDDを交換することで改善されるかもしれませんね。
    落ち着いたら、交換してみようと思います。
    どうもありがとうございました!

  • litronix_2260

    初めまして。この場合ファンコントロールは人が監視して手動で切り替える、という理解でいいのでしょうか?

    • junown

      >litronix_2260さん

      初めまして。
      そうですね、本記事で紹介している方法は自分で回転数を監視して切り替えるという事になります。
      あとは記事最後で紹介しているHDD Fan Controlというアプリを使用するという方法があります。
      個人差があるとは思いますが、私自身は普段使いから映像編集という用途において、頻繁に回転数を切り替える程ではないです。

  • sj

    はじめまして
    iMacのHDDの交換をし、ファンの制御で参考にさせていただきました。
    HDD Fan Controlというアプリケーションがあるようですが、
    使用されている方はいらっしゃいますでしょうか?

    また、bootcamp時はファンの動作はどうなのでしょうか?

  • K

    -wオプションの後の4桁の数値ですが、回転数を4倍してから16進数に直した値ですね。

    • junown

      すみません、勘違いしてました…。
      補足ありがとうございます!

  • 髭そりゅーしょん

    横着者の私はHDD交換からファン暴走させたままの状態で、しばらくiMacを使用しておりましたが
    やはり暴走ファンのMax回転音の騒音が原因か、頭痛 吐き気がするにいたり
    対策を講じるためにグーグル先生の紹介で、こちらのブログ記事を訪れました。
    その結果、見事解決し、膝を打つ思いです。 あっぱれ!

    感謝の気持ちを伝えたくてコメントを残します。有益な情報、本当にどうも有難うございます。

  • MasaYan

    とても!参考になりました!
    ありがとうございました!

    スクリプトは一つにまとめた方がいいかな、と思い、以下紹介させていただきます!

    Apple script -> Fan Control のコード
    http://www-cc.gakushuin.ac.jp/~20110166/etc_other.html#applescript