# I²C, SMBus and hardware monitoring references

This document contains all kinds of useful references to I²C and SMBus documents and implementations, and to hardware sensors documentation and implementations. Please report any other references you have found!

- I²C
  - I²C FAQ
  - Another I²C FAQ
  - Yet another I²C FAQ
  - Philips, the I²C bus inventors
    This site contains many example programs.
  - Simon Vogl's I²C for Linux page
- SMBus
  - SMBus specification documents
    Includes version 1.1 and version 2.0 documents.
- I²C and SMBus implementations
  - ALi (M1533, M1535, M1535D, M1543C)
    ALi chipsets include SMBus adapters, integrated with many other functions.
    Datasheets available on request.
  - Intel (PIIX4, 82443MX, i801, i810, i810E, i815)
    Intel SMBus adapter, integrated with many other functions.
    Datasheets available for download.
  - Silicon Integrated Systems (SiS5595, SiS630, SiS645, SiS961)
    No datasheet found.
  - VIA (VT85C586B, VT82C596, VT82C596B, VT82C686A, VT82C686B, VT8231, VT8233, VT8233A)
    VIA I²C adapters, integrated with many other functions (south bridge). Each south bridge may be used in many chipsets. To know which south bridge is used in your VIA chipset, use this table.
    Datasheets available on request.
- Hardware monitoring chips
  - Analog Devices (ADM1021, ADM1021A, ADM1022, ADM1023, ADM1024, ADM1025, ADM1025A, ADM9240)
    Datasheets available for download.
  - Genesys Logic (GL518, GL520, GL523)
    No datasheet available.
  - Hewlett Packard (Maxilife)
    Datasheets only under NDA.
  - Linear Technologies (LTC1710)
    Datasheets available for download (choose "Special Functions").
  - Maxim IC (includes Dallas Semiconductor) (DS75, DS1621, DS1625, DS1775, DS1780, MAX1617, MAX1617A)
    Datasheets available for download.
  - Myson (MTP008)
    No datasheet available.
  - National Semiconductor (LM75, LM77, LM78, LM78J, LM79, LM80, LM84, LM87, LM92)
    Datasheets available for download.
  - Silicon Integrated Systems (SIS5595, SIS950)
    No datasheet available.
  - Texas Instruments (THMC10, THMC50)
    Datasheets available for download.
  - VIA (VT82C686A, VT82C686B, VT8231, VT1211)
    VIA bridges and chips which include integrated sensors.
    Datasheets available on request.
  - Winbond (W83781D, W83782D, W83783S, W83791D, W83792D, W83L785TS-S, W83627HF, W83627THF, W83637HF, W83687THF, W83697HF)
    Datasheets available for hardware monitoring and super-I/O chips.
- Other protocol information
  - IPMI documentation
    IPMI (intelligent platform management interface), a standard for hardware monitor chip reading.
- Installation guides
  - Jean Delvare's
    Focuses on the new i2c interface issues.
  - Chris Peters'
    More simple, probably better for beginners.
- Motherboard configuration files

  Poject is rather incomplete, help is wanted to develop it further (or start a new one altogether)!

  - lm_sensors_db
    Hosted by berlios.de.

  As far we know only one motherboard manufacturer provides sensors.conf files:

  - TYAN motherboads sensors.conf files database

  Personal collections:

  - Christian Hammers'
  - Jean Delvare's
- Hardware monitoring applications using the lm_sensors package
  - LM Sensors
    First see the prog directory in the lm_sensors package for sample applications. In particular, see Tellerstats, a web-based hardware monitor created by Phil Edelbrock, one of our main project contributors.
  - Freshmeat
    A search for "lm_sensors" brings up a good starter list.
  - GNOME Sensors Applet
    An applet for the GNOME panel to monitor lm_sensors outputs.
  - ASFATM (Afterstep fan and temperature monitor)
    A wharf/dock app that is capable of displaying system/CPU temperatures and up to three fan rotation speeds depending on the hardware being used. The development has stopped, but you still can download the sources from Planet Mirror or LIP6.
  - ASFTAVM (Afterstep fan, temperature and voltage monitor)
    An enhancement of ASFATM.
  - CheapI2C
    A real-time linux I2C bus protocol capture tool using the parallel port.
  - Dogsled
    A tool to manage and monitor Linux clusters.
  - GKrellM
    GKrellM is a single process stack of system monitors which supports applying themes to match its appearance to your window manager, Gtk, or any other theme. Very popular.
  - KSim
    KSim is a GKrellM equivalent for KDE. Supports GKrellM skins.
  - GPDial Applet
    A Gnome applet that displays a specific number from a file on the Gnome panel. By configuring it for a specific sensor file in /proc, you get a sensor reading. Requires fam and fam++.
  - GSensor
    GTK+ application.
  - LCD4Linux
    Displays kernel information on an external LCD.
  - phpSysInfo
    Generates a web page with system information, optionally including sensors output. Recommended.
  - ProcMeter 3
    A comprehensive system monitoring package. Nice desktop application. Recommended.
  - Sens2web
    A Perl script to generate a web page of sensor readings.
  - Sensor Sweep Applet
    A configurable Gnome panel applet.
  - Sensors Server
    Nice client/server application with a html-embedded Java applet.
  - Sentinelle
    A daemon which warns you when your sensor readings reach critical values.
  - WMSensors
    A Windowmaker dockapp. By Adrian Baugh, maintained by the Debian team.
  - WMSens Dockapp
    A Windowmaker dockapp that works only with the Winbond 83697HF chipset. By Jonathan D. Meadows.
  - WMgtemp
    A Windowmaker dockapp that displays the CPU and system temperatures. By Roger Dunce.
  - WMtemp
    Another Windowmaker dockapp that displays the CPU and system temperatures. By Peter Gnodde. Inspired from WMgtemp.
  - Varyfan
    A C program to vary the fan speeds for the CPU and case fans according to the temperature of the CPU and motherboard. By Ian Nicholls, more or less abandoned.
  - xsensors
    A X11 version of sensors. Requires GTK+ 2.0. Nice, although many chips are not supported yet.
  - Floyd Davidson has nice monitoring data graphics generated using modified tellerstats scripts
  - E-Sensors
    An Enlightenment frontend (epplet) to lm_sensors, by Øystein Haare.
- Other hardware monitoring implementations (not using LM Sensors)
  - Motherboard Monitor
    A very comprehensive package for Windows, unfortunately discontinued. Supports many many devices. Also has a great database of motherboards. We wish to thank the author, Alex van Kaam, for the great cooperation we had.
  - Alexander Larsson's LM78 module
    The original module LM Sensors is based upon.
  - Beowulf project LM78 module
    By Erik Hendriks. Old, probably unmaintained.
  - smartmontools
    The smartmontools package contains two utility programs (smartctl and smartd) to control and monitor storage systems using the Self-Monitoring, Analysis and Reporting Technology System (SMART) built into most modern ATA and SCSI hard disks.
  - hddtemp
    Get the hard drive temperatures using the Self-Monitoring, Analysis and Reporting Technology System (SMART) built into most modern ATA and SCSI hard disks. Much simpler than smartmontools.
  - TXWD
    Another LM78/LM75 module, by Chris Benndorf.
  - Beta SMBus access through the BIOS interface
    Old, obviously abandoned.
- Other useful tools
  - CPUBurn
    CPU-heating program to stress-test marginally-cooled systems and test LM Sensors. Highly recommended.
  - RRDTool (Round Robin Database)
    A database for readings taken over time, such as sensor data. The LM Sensors package contains scripts to create and update an RRD database and graphically display the data on webpages.
- White papers, documents, articles and other things
  - Designing with SMBus 2.0
    A great introduction to SMBus 2.0 and the differences with version 1.x.
  - Alert standard format (ASF) specification
    A standard for system management messages using the SMBus and passing this information to remote management devices. By the DMTF.
  - Recursive make considered harmful
    A paper on which the version 2 Makefile is based.
  - NTC thermistors
    A comprehensive description of the physics and mathematics of NTC thermistors.
  - Standard manufacturer's identification code
    The official list of Manufacturer IDs for EEPROMs.
  - About temperature sensors
    A web guide to devices that measure temperature. General information.
  - Measuring temperatures on computer chips with speed and accuracy
    The advantages of thermal diodes over traditional thermistors.
  - Linux hardware stability guide
    A nice article about using LM Sensors for diagnosing hardware problems.
  - Linux hardware monitoring INcompatibility guide
    A list of chips that don't work well under Linux.