Getting lm-sensors working on the Asus AM1I-A in Arch Linux

2014/05/03

Tags: lmsensors linux monitoring

As of 04/2014 version 3.3.5 of lmsensors doesn’t yet support the ITE IT8623E Super IO on the Asus AM1I-A meaning we can’t get fan speed and temp readouts. Support was added in this changeset so hopefully a new version will be released soon.

To get this working in Arch Linux, I did the following:

Trying family `ITE'...                                      Yes
Found `ITE IT8623E Super IO Sensors'                        Success!
    (address 0x290, driver `it87')
$ modprobe -vv it87 force_id=0x8603
modprobe: INFO: custom logging function 0x409b50 registered
insmod /lib/modules/3.14.2-1-ARCH/kernel/drivers/hwmon/it87.ko.gz force_id=0x8603
modprobe: INFO: context 0x15b2290 released
$ sensors
radeon-pci-0008
Adapter: PCI adapter
temp1:        +13.0°C  (crit = +120.0°C, hyst = +90.0°C)

fam15h_power-pci-00c4
Adapter: PCI adapter
power1:        0.00 W  (crit =  25.00 W)

k10temp-pci-00c3
Adapter: PCI adapter
temp1:        +13.8°C  (high = +70.0°C)
                       (crit = +70.0°C, hyst = +69.0°C)

it8603-isa-0290
Adapter: ISA adapter
in0:          +0.83 V  (min =  +1.10 V, max =  +0.17 V)  ALARM
in1:          +2.23 V  (min =  +1.86 V, max =  +1.62 V)  ALARM
in2:          +2.03 V  (min =  +0.14 V, max =  +0.16 V)  ALARM
in3:          +2.03 V  (min =  +1.49 V, max =  +2.05 V)
in4:          +0.67 V  (min =  +3.02 V, max =  +0.78 V)  ALARM
3VSB:         +3.34 V  (min =  +4.39 V, max =  +5.11 V)  ALARM
Vbat:         +3.17 V  
+3.3V:        +3.34 V  
fan1:        1266 RPM  (min =  200 RPM)
fan2:           0 RPM  (min =  600 RPM)  ALARM
temp1:        +32.0°C  (low  = -37.0°C, high = +60.0°C)  sensor = thermistor
temp2:        +36.0°C  (low  = -123.0°C, high = -97.0°C)  ALARM  sensor = thermistor
temp3:       -128.0°C  (low  = -112.0°C, high = +47.0°C)  sensor = thermistor
intrusion0:  ALARM

Partial success! Unfortunately the values look fairly crazy, so we’ll need to tweak the sensor config.

options it87 force_id=0x8603

as per https://wiki.archlinux.org/index.php/kernel_modules#Setting_module_options

$ systemctl enable sensord
ln -s '/usr/lib/systemd/system/sensord.service' '/etc/systemd/system/multi-user.target.wants/sensord.service'