2011年5月21日土曜日

Linuxでなんか叩いてThinkPadのファンをコントロールしてみる。

熱い。X40が熱い。背面がかなり熱く膝に載せてるとこれからの季節イヤになってしまう。

のでググってみました。

詳しくはこのへんとかこのへん。

参考にしてファンの速度を変える何か酷いコードを書いた。suで実行してね。
autoだとかdisengagedあるけどスルー。
あ、あとたぶんThinkPadじゃないと動かない。

#include<stdlib.h>
#include<stdio.h>
int main()
{
    int select;
    printf("Select Fan Speed\nchoose level[0-7] or Full-speed[10] \n=>");
    for(;;){
        scanf("%d",&select);
        switch(select){
            case 0:
            system("echo level 0 > /proc/acpi/ibm/fan");
            break;
            case 1:
            system("echo level 1 > /proc/acpi/ibm/fan");
            break;
            case 2:
            system("echo level 2 > /proc/acpi/ibm/fan");
            break;
            case 3:
            system("echo level 3 > /proc/acpi/ibm/fan");
            break;
            case 4:
            system("echo level 4 > /proc/acpi/ibm/fan");
            break;
            case 5:
            system("echo level 5 > /proc/acpi/ibm/fan");
            break;
            case 6:
            system("echo level 6 > /proc/acpi/ibm/fan");
            break;
            case 7:
            system("echo level 7 > /proc/acpi/ibm/fan");
            break;
            case 10:
            system("echo level full-speed > /proc/acpi/ibm/fan");
            break;
        }
        if(select >= 0 && select <=7){
            printf("Fan Speed is %d\n",select);
            return 0;
        }else if(select == 10){
            printf("Fan Speed is Full-speed\n");
            return 0;
        }
    printf("Sorry Try Again\n");
    }
    return 0;
}

温度もどうやら取れる様なのでファンコンを書いてみようと思う。眠いからまたこんど。

//system関数って変数使えないの・・
//popen当たりでスッキリするかしら

0 件のコメント:

コメントを投稿