ITE8705 / ITE8712 Automatic Fan Control


A little utility I wrote to control the two fans in the ASUS DigiMatrix, varying with temperature.

Download
Asus Fan tarball: asusfan-0.1.tar.gz

Application Help
Usage: ./asusfan [OPTIONS]

The min, gradient and offset options must come first, otherwise they will be ignored!
All temperatures are in Deg C, all fan speeds are in Percent.

-m, --min Set the minimum Fan speed
-o, --offset The temperature for minimum fan speed
-g, --gradient Set the rate at which speed increases with temperature
e.g. grad = (100 - min) / (max_temp - offset)

-r, --read Read the current Fan setting (percentage)
-s, --set=VALUE Set the current Fan setting (percentage)
-a, --auto Set to H/W monitoring (as in BIOS)
-i, --intelligent Set the Fan based on current temperature

-v, --version Print version
-h, --help This help

Some Numbers
Temp and fan speeds, after 100% CPU usage for ~6 hours:
fan1: 3013 RPM (min = 502 RPM, div = 32)
fan2: 3245 RPM (min = 502 RPM, div = 32)
CPU Temp: +47 C (low = +15 C, high = +65 C) sensor = thermistor
M/B Temp: +44 C (low = +15 C, high = +45 C) sensor = thermistor

Temp and fan speeds, a short time after going back to 2% CPU usage:
fan1: 1757 RPM (min = 502 RPM, div = 32)
fan2: 1454 RPM (min = 502 RPM, div = 32)
CPU Temp: +35 C (low = +15 C, high = +65 C) sensor = thermistor
M/B Temp: +44 C (low = +15 C, high = +45 C) sensor = thermistor

If the M/B Temp is greater than the CPU temp, the application will work off the average of the two.

Other Info
My sensors.conf File.
If someone wants to make it so that the voltages read correctly, then please give me a copy :)
Note: The DIE temperature monitor doesn't seem to work correctly (always reads 86 DegC)

Comments, questions, flames etc. email me.