Difference between revisions of "Lm sensors"

From ArchWiki
Jump to: navigation, search
(Asus P8P67, Intel dh67cf motherboard)
(Asus P8P67, Intel dh67cf motherboard)
Line 274: Line 274:
 
chip "nct6775-*" "nct6776-*"
 
chip "nct6775-*" "nct6776-*"
 
     label temp1 "MB"
 
     label temp1 "MB"
     set temp1_max 38
+
     set temp1_max 40
 
     set temp1_max_hyst 35
 
     set temp1_max_hyst 35
  
Line 293: Line 293:
  
 
     label in0 "Vcore"
 
     label in0 "Vcore"
     set in0_min  1.1 * 0.9
+
     set in0_min  1 * 0.8
     set in0_max  1.1 * 1.15
+
     set in0_max  1 * 1.35
  
 
     label in1 "+12V"
 
     label in1 "+12V"

Revision as of 21:19, 14 June 2011

This template has only maintenance purposes. For linking to local translations please use interlanguage links, see Help:i18n#Interlanguage links.


Local languages: Català – Dansk – English – Español – Esperanto – Hrvatski – Indonesia – Italiano – Lietuviškai – Magyar – Nederlands – Norsk Bokmål – Polski – Português – Slovenský – Česky – Ελληνικά – Български – Русский – Српски – Українська – עברית – العربية – ไทย – 日本語 – 正體中文 – 简体中文 – 한국어


External languages (all articles in these languages should be moved to the external wiki): Deutsch – Français – Română – Suomi – Svenska – Tiếng Việt – Türkçe – فارسی

lm_sensors (Linux-monitoring sensors), a free open source software-tool for Linux, provides tools and drivers for monitoring temperatures, voltage, and fans.

This document tells you how to install, setup, and use lm_sensors so that you can monitor CPU and/or motherboard temperature and fan speeds.

Notice for kernels >=2.6.31

A change in version 2.6.31 has made sensors stop working for some users. See this FAQ entry for a detailed explanation and for some example errors. To fix sensors, add the following to your kernel boot line and reboot your machine.

Warning: In some situations, this may be dangerous. Consult the FAQ for details.
acpi_enforce_resources=lax

If using grub, edit Template:Filename:

title           Arch Linux
root            (hd0,1)
kernel          /boot/vmlinuz26 root=/dev/sda2 ro quiet acpi_enforce_resources=lax vga=773
initrd          /boot/kernel26.img

If using grub2, edit Template:Filename. The following is an example of a completed grub.cfg:

menuentry 'Arch Linux, with Linux vmlinuz26' --class archlinux --class gnu-linux --class gnu --class os {
        load_video
        insmod part_msdos
        insmod ext2
        set root='(/dev/sda,msdos2)'
        search --no-floppy --fs-uuid --set=root 1cc527cc-26a0-40c8-a7ec-364f7fcd0e41
        echo    'Loading Linux vmlinuz26 ...'
        linux   /vmlinuz26 root=/dev/disk/by-uuid/de78e45a-760e-4f39-8884-e3cf5b9b09fb ro quiet vga=773 acpi_enforce_resources=lax
        echo    'Loading initial ramdisk ...'
        initrd  /kernel26.img
}

Usage

Installation

Install the sensors package from the main repo

# pacman -S lm_sensors

Setting up lm_sensors

Use sensors-detect to detect and generate a list of kernel modules
# sensors-detect
This will create the configuration and store it in Template:Filename. Be sure you answer YES to the questions about probing various sensors. When the script is finished, you'll be presented with a summary of the probes, example from my system
Now follows a summary of the probes I have just done.
Just press ENTER to continue:
Driver `it87':
  * ISA bus, address 0x290
     Chip `ITE IT8718F Super IO Sensors' (confidence: 9)
Driver `coretemp':
  * Chip `Intel Core family thermal sensor' (confidence: 9)

If you receive follow message:

No i2c device files found.

Try this command:

# modprobe i2c-dev
Automatically load the kernel modules at boot time by adding sensors to the DAEMONS array in Template:Filename
DAEMONS=(syslog-ng crond ... sensors ...)
Alternatively, manually add them to your MODULES array in Template:Filename
MODULES=(coretemp it87 acpi-cpufreq)
You do NOT need both the DAEMONS setting and the MODULES setting.

Testing your lm_sensors

To test your setup, load the kernel modules manually or by using the sensors init script. You do NOT have to do both. Example manually adding them

# modprobe it87
# modprobe coretemp

Example using the script

# /etc/rc.d/sensors start

You should see something like this when you run sensors

$ sensors
coretemp-isa-0000
Adapter: ISA adapter
Core 0:      +30.0°C  (high = +76.0°C, crit = +100.0°C)  

coretemp-isa-0001
Adapter: ISA adapter
Core 1:      +30.0°C  (high = +76.0°C, crit = +100.0°C)  

coretemp-isa-0002
Adapter: ISA adapter
Core 2:      +32.0°C  (high = +76.0°C, crit = +100.0°C)  

coretemp-isa-0003
Adapter: ISA adapter
Core 3:      +30.0°C  (high = +76.0°C, crit = +100.0°C)  

it8718-isa-0290
Adapter: ISA adapter
in0:         +1.17 V  (min =  +0.00 V, max =  +4.08 V)   
in1:         +1.31 V  (min =  +1.28 V, max =  +1.68 V)   
in2:         +3.28 V  (min =  +2.78 V, max =  +3.78 V)   
in3:         +2.88 V  (min =  +2.67 V, max =  +3.26 V)   
in4:         +2.98 V  (min =  +2.50 V, max =  +3.49 V)   
in5:         +1.34 V  (min =  +0.58 V, max =  +1.34 V)   ALARM
in6:         +2.02 V  (min =  +1.04 V, max =  +1.36 V)   ALARM
in7:         +2.83 V  (min =  +2.67 V, max =  +3.26 V)   
Vbat:        +3.28 V
fan1:       1500 RPM  (min = 3245 RPM)  ALARM
fan2:          0 RPM  (min = 3245 RPM)  ALARM
fan3:          0 RPM  (min = 3245 RPM)  ALARM
temp1:       +18.0°C  (low  = +127.0°C, high = +64.0°C)  sensor = thermal diode
temp2:       +32.0°C  (low  = +127.0°C, high = +64.0°C)  sensor = thermistor
temp3:       +38.0°C  (low  = +127.0°C, high = +64.0°C)  sensor = thermistor
cpu0_vid:   +2.050 V

acpitz-virtual-0
Adapter: Virtual device
temp1:       +18.0°C  (crit = +64.0°C)

Reading SPD values from memory modules (Optional)

To read the SPD timing values from you memory modules, download this perl script: SPDdecodeScript Once you have downloaded it, you will need to load the eeprom kernel module

# modprobe eeprom

Now can you make the decode-dimms.pl executable and run it

$ chmod +x decode-dimms.pl

Here is an example output from my machine

$ ./decode-dimms.pl 

Memory Serial Presence Detect Decoder
By Philip Edelbrock, Christian Zuckschwerdt, Burkart Lingner,
Jean Delvare and others
Version 2.10.8


Decoding EEPROM: /sys/bus/i2c/drivers/eeprom/0-0050
Guessing DIMM is in                             bank 1

---=== SPD EEPROM Information ===---
EEPROM Checksum of bytes 0-62                   OK (0x0D)
# of bytes written to SDRAM EEPROM              128
Total number of bytes in EEPROM                 256
Fundamental Memory type                         DDR2 SDRAM
SPD Revision                                    1.2

---=== Memory Characteristics ===---
Maximum module speed                            800MHz (PC2-6400)
Size                                            2048 MB
tCL-tRCD-tRP-tRAS                               5-5-5-18
Supported CAS Latencies                         5, 4
Minimum Cycle Time (CAS 5)                      2.5 ns
Maximum Access Time (CAS 5)                     0.4 ns
Minimum Cycle Time (CAS 4)                      3.7 ns
Maximum Access Time (CAS 4)                     0.5 ns

---=== Manufacturing Information ===---
Manufacturer                                    Corsair
Manufacturing Location Code                     0x01
Part Number                                     CM2X2048-8500C5D  
Revision Code                                   0x2020


Decoding EEPROM: /sys/bus/i2c/drivers/eeprom/0-0051
Guessing DIMM is in                             bank 2

---=== SPD EEPROM Information ===---
EEPROM Checksum of bytes 0-62                   OK (0x0D)
# of bytes written to SDRAM EEPROM              128
Total number of bytes in EEPROM                 256
Fundamental Memory type                         DDR2 SDRAM
SPD Revision                                    1.2

---=== Memory Characteristics ===---
Maximum module speed                            800MHz (PC2-6400)
Size                                            2048 MB
tCL-tRCD-tRP-tRAS                               5-5-5-18
Supported CAS Latencies                         5, 4
Minimum Cycle Time (CAS 5)                      2.5 ns
Maximum Access Time (CAS 5)                     0.4 ns
Minimum Cycle Time (CAS 4)                      3.7 ns
Maximum Access Time (CAS 4)                     0.5 ns

---=== Manufacturing Information ===---
Manufacturer                                    Corsair
Manufacturing Location Code                     0x01
Part Number                                     CM2X2048-8500C5D  
Assembly Serial Number                          0x00514458


Decoding EEPROM: /sys/bus/i2c/drivers/eeprom/0-0052
Guessing DIMM is in                             bank 3

---=== SPD EEPROM Information ===---
EEPROM Checksum of bytes 0-62                   OK (0x0D)
# of bytes written to SDRAM EEPROM              128
Total number of bytes in EEPROM                 256
Fundamental Memory type                         DDR2 SDRAM
SPD Revision                                    1.2

---=== Memory Characteristics ===---
Maximum module speed                            800MHz (PC2-6400)
Size                                            2048 MB
tCL-tRCD-tRP-tRAS                               5-5-5-18
Supported CAS Latencies                         5, 4
Minimum Cycle Time (CAS 5)                      2.5 ns
Maximum Access Time (CAS 5)                     0.4 ns
Minimum Cycle Time (CAS 4)                      3.7 ns
Maximum Access Time (CAS 4)                     0.5 ns

---=== Manufacturing Information ===---
Manufacturer                                    Corsair
Manufacturing Location Code                     0x01
Part Number                                     CM2X2048-8500C5D  
Revision Code                                   0x2020


Decoding EEPROM: /sys/bus/i2c/drivers/eeprom/0-0053
Guessing DIMM is in                             bank 4

---=== SPD EEPROM Information ===---
EEPROM Checksum of bytes 0-62                   OK (0x0D)
# of bytes written to SDRAM EEPROM              128
Total number of bytes in EEPROM                 256
Fundamental Memory type                         DDR2 SDRAM
SPD Revision                                    1.2

---=== Memory Characteristics ===---
Maximum module speed                            800MHz (PC2-6400)
Size                                            2048 MB
tCL-tRCD-tRP-tRAS                               5-5-5-18
Supported CAS Latencies                         5, 4
Minimum Cycle Time (CAS 5)                      2.5 ns
Maximum Access Time (CAS 5)                     0.4 ns
Minimum Cycle Time (CAS 4)                      3.7 ns
Maximum Access Time (CAS 4)                     0.5 ns

---=== Manufacturing Information ===---
Manufacturer                                    Corsair
Manufacturing Location Code                     0x01
Part Number                                     CM2X2048-8500C5D  
Assembly Serial Number                          0x00514458


Decoding EEPROM: /sys/bus/i2c/drivers/eeprom/0-0057
Guessing DIMM is in                             bank 8

---=== SPD EEPROM Information ===---
EEPROM Checksum of bytes 0-62                   Bad
                                                (found 0x20, calculated 0x0A)


Number of SDRAM DIMMs detected and decoded: 4

Using sensor data

Graphical Frontends

There are a variety of front-ends for sensors data. Some are listed below. The name in italicized text is the name of the package in the repo, in other words, you can install them via pacman.

  1. sensors-applet - an applet for the GNOME Panel to display readings from hardware sensors, including CPU temperature, fan speeds and voltage readings.
  2. ksensors - ksensors is nice lm_sensors frontend for KDE
  3. xsensors - X11 interface to lm_sensors
  4. xfce4-sensors-plugin - A lm_sensors plugin for the Xfce panel
  5. conky - Conky is an advanced, highly configurable system monitor for X based on torsmo
  6. kdeutils-superkaramba - Superkaramba is a tool which gives posibility to create different widgets for KDE desktop. Check the karamba section on kde-look.org for examples of making karamba front-ends for sensors data.
  7. hardware-monitor - a GNOME Panel applet that displays some sensors readings as well as other hardware monitoring. AUR package

Sensord

There is an optional daemon logging package called sensord that can log your data to a round robin database (rrd) that you can visualize graphically. Placeholder for someone to write a wiki page on installation/configuration of sensord.

Troubleshooting

Asus P8P67, Intel dh67cf motherboard

Issue: on Asus P8P67 and Intel DH67CF motherboard lm-sensors can't detect fans. This related with lm-sensors yet not support NCT6776F chip.

Solutions:

  • Upgrade kernel26 to 2.6.39 (in [testing] as of 2011-05-20). The module w83627ehf includes support for the Nuvoton NCT6776F in the stock kernel despite what http://www.lm-sensors.org/wiki/Devices says as of 2011-05-20.
  • compile standalone driver.

You can download the source from http://mail.planet-ian.com/w83627ehf

Then execute:

$ cd <source dir>
$ make
# make install
# modprobe w83627ehf

You should add w83627ehf in MODULES array in Template:Filename.

Put your Template:Filename following text: Template:File

And execute:

sensors -s

See also

  • hddtemp - Software to read temps of HDDs.
  • monitorix - Monitorix is a free, open source, lightweight system monitoring tool designed to monitor as many services and system resources as possible.