Mam płytę główną MSI-KT4V i chciałbym przekonać się czy mogę poleceniami Linuksa sterować prędkością wentylatora na procesorze. Niżej opiszę eksperymenty już zrobione, ale
Płyta główna zawiera układ W83697HF, który jest związany z czujnikami temperatur, napięć i prędkości wiatraka. Aby dokonywać odczytów, ładuję moduły i2c_core, i2c_isa, hwmon_vid i w83627hf. Prócz korzystania programów typu sensors czy gkrellm, wartości można odczytać bezpośrednio w /sys. Ale czy na podobieństwo /proc/sys/, można je modyfikować?
Przykład:
64studio:/home/arctgx# echo -n 150>/sys/bus/i2c/devices/9191-0290/pwm1
64studio:/home/arctgx# cat /sys/bus/i2c/devices/9191-0290/pwm1
255
po nadaniu plikowi pwm1 praw do zapisu. Albo
64studio:/home/arctgx# cat /sys/bus/i2c/devices/9191-0290/fan1_input
2986
64studio:/home/arctgx# echo -n 2000>/sys/bus/i2c/devices/9191-0290/fan1_input
bash: 2000: Błędny deskryptor pliku
Pogrzebałem trochę w forum i w jedynym podobnym problemie Hans00 wspomniał o i2cset. Otworzyłem manual. Okazało się że potrzebuję polecenia i2cdetect -l (a ono z kolei modułu i2c-dev), by móc wpisać właściwą nazwę szyny (i2c-bus). Dostaję linijkę
i2c-0 unknown SMBus Via Pro adapter at 0400 Algorithm unavailable.
Ale jeszcze potrzebne są wartości chip-address data-address, które nie wiem, skąd wziąć.
Jak się okazało, i2cset należy do paczki lm-sensors. Wylistowałem jej zawartość i znalazłem pwmconfig. Skrypt ten miał (według komunikatu po uruchomieniu) m.in. zatrzymać wentylatory, ale przede wszystkim służył do zbudowania pliku /etc/fancontrol. Tymczasem...
Testing pwm control 9191-0290/pwm1 ...
9191-0290/fan1_input ... speed was 2922 now 2909
no correlation
No correlations were detected.
i to samo dla pwm2 (choć drugiego wiatraka nie ma). A wentylatory nie stanęły.
Jest sugestia w tym poleceniu, że może moja płyta główna może nie mieć wyjść PWM dla gniazda prądu dla wentylatora (może źle to tłumaczę), a sprawdzić to mogę na
http://www.almico.com/forumindex.php. Ale tam tylko znalazłem wypowiedź jakiegoś użytkownika, który też nie może zmniejszyć prędkości.
Czyżby jedyną drogą był potencjometr?