Can't get the right CPUcore temperature (Acpi chip)
Solution 1:
As Oli says, you only need the coretemp
module to read Intel CPU core temperature.
I have a similar problem with my w83667hg
hardware monitor driver. The workaround is to add acpi_enforce_resources=lax
to the kernel command line. To that end
-
edit
/etc/default/grub
and insertacpi_enforce_resources=lax
into the parameter string ofGRUB_CMDLINE_LINUX
, e. g.GRUB_CMDLINE_LINUX='acpi_enforce_resources=lax'
then run
update-grub
and reboot.
Solution 2:
I'd skip lm-sensors
and just read from /sys/class/thermal/thermal_zone0/temp
. This should be automatically registered for an ACPI chip. The unit is millidegrees Celsius.
$ cat /sys/class/thermal/thermal_zone0/temp
47000
There may be many thermal_zoneN
devices. In my experience, the CPU is usually the first (and one for each core) but I'm not sure I'd depend on that always being the case.
For other devices that aren't registered through the thermal sysfs API, you would need lm-sensors
or something similar.