Edit /etc/modules.conf and add to it the following lines:
alias char-major-89 i2c-dev
options it87 temp_type=0x31
now:
modprobe i2c-proc
modprobe it87
modprobe i2c-isa
sensors
should output you some data
When it works, you can write it to a file, that will be loaded automatically on
boot. Under
SuSE the file is:
/etc/init.d/boot.local (used to be /sbin/init.d/)
and you should just add: sensors -s
Under mandrake, the install should have created that file:
/etc/init.d/sensors, which you can edit freely, sensord being just a
daemon to watch over temperature and fan speed, I assume no one
will need something like that for her/his own machine.
Paolo reports that in order to start up sensord on boot, he put in /etc/sysconfig/sensors:
MODULE_0=i2c-proc
MODULE_1=it87
MODULE_2=i2c-isa
Now as root you should edit your /etc/sensors.conf
search for that line: chip "it87-*"
and below you should be able to modify everything to get the right data, here is
a copy of what i have in there:
(please note that temp1 is trash and only temp2 and temp3 should be kept)
This time you'll be forced to compile the modules.
install the source and programs:
apt-get install lm-sensors lm-sensors-source
The upstream lm-sensors maintainers know of a problem using
lm-sensors with IBM ThinkPad computers, resulting in
firmware corruption. If you are installing this package on
a ThinkPad, you should wait until the upstream maintainers
have solved this problem before building modules from it.
For more information, see
/usr/share/doc/lm-sensors-source/README.thinkpad.
IBM ThinkPad brokenness -- really install lm-sensors?
Answer yes to this question, you can't have an IBM thinkpad and the k7s5a in the same box as far as I know!
cd /usr/src
tar xzvf lm-sensors.tar.gz
cd modules/lm-sensors/
make && make install
Then you should have modutils take a few arguments,
the best way is probably to use a new file, like:
/etc/modutils/sensors
with this content:
alias char-major-89 i2c-dev
options it87 temp_type=0x31
run
update-modules
modprobe i2c-isa it87
You can now type sensors to access to the informations (note that you should edit sensors.conf, otherwise you'll see strange and inaccurate things :] )
You can also put i2c-isa and it87 in /etc/modules (one by line!) to have them be automatically loaded on boot, I don't know yet, how/whether it is possible to use some automatic loading/removing process with /etc/modules.conf
#David Thorarinsson explained me that all the 'set' lines should be after the compute ones,
#this is now fixed,
chip "it87-*"
# The values below have been tested on Asus CUSI, CUM motherboards.
# Voltage monitors as advised in the It8705 data sheet
label in0 "VCore"
label in1 "Vcc2.5V"
label in2 "+3.3V"
label in3 "+5V"
label in4 "+12V"
label in5 "-12V"
label in6 "-5V"
label in7 "SB 5V"
label in8 "V battery"
# vid not monitored by IT8705F
ignore vid
# For this family of chips the negative voltage equation is different from
# the lm78. The chip uses two external resistor for scaling but one is
# tied to a positive reference voltage. See ITE8705/12 datasheet (SIS950
# data sheet is wrong)
# Vs = (1 + Rin/Rf) * Vin - (Rin/Rf) * Vref.
# Vref = 4.096 volts, Vin is voltage measured, Vs is actual voltage.
# compute in2 (1 + 1)*@ , @/(1 + 1)
compute in3 ((6.8/10)+1)*@ , @/((6.8/10)+1)
compute in4 ((30/10) +1)*@ , @/((30/10) +1)
# The next two are negative voltages (-12 and -5).
# The following formulas must be used. Unfortunately the datasheet
# does not give recommendations for Rin, Rf, but we can back into
# them based on a nominal +2V input to the chip, together with a 4.096V Vref.
# Formula:
# actual V = (Vmeasured * (1 + Rin/Rf)) - (Vref * (Rin/Rf))
# For -12V input use Rin/Rf = 6.68
# For -5V input use Rin/Rf = 3.33
# Then you can convert the forumula to a standard form like:
compute in5 -(36/10)*@, -@/(36/10)
#(7.67 * @) - 27.36 , (@ + 27.36) / 7.67
compute in6 -(56/10)*@, -@/(56/10)
#(4.33 * @) - 13.64 , (@ + 13.64) / 4.33
compute in7 ((6.8/10)+1)*@ , @/((6.8/10)+1)
set in0_min 1.7 * 0.95
set in0_max 1.7 * 1.05
set in1_min 2.4
set in1_max 2.6
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.95
set in4_max 12 * 1.05
set in5_min -12 * 0.95
set in5_max -12 * 1.05
set in6_min -5 * 0.95
set in6_max -5 * 1.05
set in7_min 5 * 0.95
set in7_max 5 * 1.05
# Temperature
label temp3 "Processor"
set temp3_over 40
set temp3_hyst 20
label temp2 "Mainboard"
set temp2_over 45
set temp2_hyst 25
ignore temp1
# Fans
label fan1"Processor's Fan"
set fan1_min 2000
ignore fan3
ignore fan2
#
# If you have a system fan, comment 'ignore fan2'
# and uncomment the following lines :
# Thanks to gro.reirual@erreip
#
# label fan2 "System Fan"
# set fan2_min 3000
# set fan2_div 4
This version was sent by Paolo BERVA for lm_sensors 2.8.3.
chip "it87-*" "it8705-*" "it8712-*"
# The values below have been tested on Asus CUSI, CUM motherboards.
# Voltage monitors as advised in the It8705 data sheet
label in0 "VCore 1"
label in1 "VCore 2"
label in2 "+3.3V"
label in3 "+5V"
label in4 "+12V"
label in5 "-12V"
label in6 "-5V"
label in7 "Stdby"
label in8 "VBat"
set in0_min 1.7 * 0.95
set in0_max 1.7 * 1.05
set in1_min 2.4
set in1_max 2.6
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.95
set in4_max 12 * 1.05
set in5_max -12 * 0.95
set in5_min -12 * 1.05
set in6_max -5 * 0.95
set in6_min -5 * 1.05
set in7_min 5 * 0.95
set in7_max 5 * 1.05
#the chip does not support in8 min/max
# vid is not monitored by IT8705F
# and is not supported by driver at this time
ignore vid
# If 3.3V reads 2X too high (Soyo Dragon and Asus A7V8X-X, for example),
# comment out following line.
# compute in2 2*@ , @/2
#
compute in3 ((6.8/10)+1)*@ , @/((6.8/10)+1)
compute in4 ((30/10) +1)*@ , @/((30/10) +1)
# For this family of chips the negative voltage equation is different from
# the lm78. The chip uses two external resistor for scaling but one is
# tied to a positive reference voltage. See ITE8705/12 datasheet (SIS950
# data sheet is wrong)
# Vs = (1 + Rin/Rf) * Vin - (Rin/Rf) * Vref.
# Vref = 4.096 volts, Vin is voltage measured, Vs is actual voltage.
# The next two are negative voltages (-12 and -5).
# The following formulas must be used. Unfortunately the datasheet
# does not give recommendations for Rin, Rf, but we can back into
# them based on a nominal +2V input to the chip, together with a 4.096V Vref.
# Formula:
# actual V = (Vmeasured * (1 + Rin/Rf)) - (Vref * (Rin/Rf))
# For -12V input use Rin/Rf = 6.68
# For -5V input use Rin/Rf = 3.33
# Then you can convert the forumula to a standard form like:
# compute in5 (7.67 * @) - 27.36 , (@ + 27.36) / 7.67
# compute in6 (4.33 * @) - 13.64 , (@ + 13.64) / 4.33
#
# this much simpler version is reported to work for a
# Eltite Group K7S5A board
#
compute in5 -(34/10)*@, -@/(34/10)
compute in6 -(51/10)*@, -@/(51/10)
# compute in6 -(56/10)*@, -@/(56/10)
#
compute in7 ((6.8/10)+1)*@ , @/((6.8/10)+1)
# Temperature
#
# Important - if your temperature readings are completely whacky
# you probably need to change the sensor type.
# Adujst and uncomment the appropriate lines below.
# The old method (modprobe it87 temp_type=0xXX) is no longer supported.
#
# 2 = thermistor; 3 = thermal diode
# set sensor1 3
set sensor2 2
set sensor3 2
ignore temp1
label temp2 "M/B Temp"
set temp2_over 40
set temp2_min 20
label temp3 "CPU Temp"
set temp3_over 45
set temp3_min 25
# The A7V8X-X has temperatures inverted, and needs a conversion for
# CPU temp. Thanks to Preben Randhol for the formula.
# label temp1 "CPU Temp"
# label temp2 "M/B Temp"
# compute temp1 (-15.096+1.4893*@), (@+15.096)/1.4893
# The A7V600 also has temperatures inverted, and needs a different
# conversion for CPU temp. Thanks to Dariusz Jaszkowski for the formula.
# label temp1 "CPU Temp"
# label temp2 "M/B Temp"
# compute temp1 (@+128)/3, (3*@-128)
# Fans
label fan1 "CPU/Fan"
set fan1_div 2
set fan1_min 2000
label fan2 "Sys/Fan"
set fan2_div 4
set fan2_min 2000
ignore fan3