# Sensors configuration file used by 'libsensors'
#------------------------------------------------
#
##########################################################################
#                                                                        #
#    PLEASE READ THIS HELPFUL HINT!!!                                    #
#                                                                        #
#	The 'set' lines (generally for min and max values)               #
#	do not take effect until you run 'sensors -s' as root !!!        #
#	We suggest you put 'sensors -s' in a /etc/rc.d/... file          #
#	to be run at boot time after the modules are inserted !!!        #
#                                                                        #
##########################################################################
#
#
# OVERVIEW
# --------
# This configuration file will be used by all userspace applications
# linked to libsensors. It is NOT used by the lm_sensors drivers directly.
#
# This config file consists of two parts: the heavily commented LM78
# example, and the real parts. Search for '####' if you want to skip
# to the real stuff.
#
# Hash marks introduce comments, which continue until the end of a line
#
# Identifiers consisting of only digits and letters can be used
# unquoted; other identifiers must be quoted. Escape characters within
# quotes operate like those in C.
#
#
# CHIP LINES
# ----------
# A 'chip' line specifies what the following 'label', 'compute', 'set' and 
# 'ignore' lines refer to. In this case, until the
# next 'chip' line, everything refers to all lm78, lm78-j and lm79
# chips. Other examples are *-isa-* for everything on the ISA bus, and
# lm78-j-i2c-*-4e for all lm78-j chips on address 0x4e of any I2C bus.
#
# If more chip statements match a specific chip, they are all considered.
# Later lines overrule earlier lines, so if you set the in0 label for
# lm78-* to "This", and later on the in0 label for lm78-isa-* to "That",
# "That" is used for LM78 chips on the ISA bus, and "This" for LM78
# chips on a non-ISA bus.
#
#	chip "lm78-*" "lm78-j-*" "lm79-*"
#
#
# FEATURE NAMES
# -------------
# Feature names are used in 'label', 'compute', 'set', and 'ignore' lines.
# Example feature names are 'in0', 'temp2', 'in3_min', and 'temp3_over'.
# These features are defined for each chip in lib/chips.c.
#
# Undefined features will be silently ignored in 'label' and 'compute' lines.
# Undefined features in 'set' lines will result in 'Unknonw feature name'
# when running 'sensors -s'.
#
# Unfortunately, feature names starting with a number must be in
# double quotes or you get 'parse error, expecting 'NAME''.
#
# If you have trouble, verify the features in lib/chips.c!!!
#
#
# LABEL LINES
# -----------
# A label line describes what a certain feature stands for on your
# mainboard. Programs can retrieve these names and display them.
# If no label is specified for a certain feature, the default name
# (ie. 'fan1' for fan1) is used.
#
# If you specify a label for in1, this label is also used for in1_min and
# in1_max, unless they have their own labels declared. There are several
# of these logical groups.
#
# These are as advised in the LM78 and LM79 data sheets, and used on most
# boards we have seen.
#
#  	label in0 "VCore 1"
#  	label in1 "VCore 2"
#  	label in2 "+3.3V"
#  	label in3 "+5V"
#  	label in4 "+12V"
#  	label in5 "-12V"
#  	label in6 "-5V"
# 
# 
# COMPUTE LINES
# -------------
# A compute line describes how to scale a certain feature. There are
# two expressions in it: the first describes how the /proc value must
# be translated to a user value, the second how a user value must be
# translated to a /proc value. '@' is the value to operate on. You may
# refer to other readable features (like '2 * vid').
#
# Like for the label statement, there are logical groups here. They are
# sometimes a bit different, though. For example, fan1_div is in the
# logical label group of fan1 (it gets the same label if none is declared
# for it), but it is not in the compute group of fan1 (as it uses a
# completely different system of values).
#
#
# VOLTAGE COMPUTATION DETAILS
# ---------------------------
# Most voltage sensors in sensor chips have a range of 0 to 4.096 Volts.
# This is generally sufficient for the 3.3 and CPU (2.5V, for example)
# supply voltages, so the sensor chip reading is the actual voltage.
#
# Other supply voltages must be scaled with an external resistor network.
# The chip driver generally reports the 'raw' value 0 - 4.09 V, and the
# userspace application must convert this raw value to an actual voltage.
# The 'compute' lines provide this facility.
#
# Unfortunately the resistor values vary among motherboard types.
# Therefore you may have to adjust the computations in this file
# to match your motherboard.
#
# For positive voltages (in3, in4), two resistors are used, with the following
# formula (R1,R2: resistor values, Vs: read voltage, Vin: pin voltage)
#	R1 = R2 * (Vs/Vin - 1)
# For negative voltages (in5, in6) two resistors are used, with the following
# formula (Rin,Rf: resistor values, Vs: read voltage, Vin: pin voltage)
#	Rin = (Vs * Rf) / Vin
#
# Note: Some chips use a different formula, see it87 section for example.
#
# Here are the official LM78 and LM79 data sheet values.
# 	      Vs     R1,Rin   R2,Rf    Vin
# 	in3   +5.0      6.8    10     +2.98
# 	in4  +12.0     30      10     +3.00
# 	in5  -12.0    240      60     +3.00
# 	in6   -5.0    100      60     +3.00
#
# These would lead to these declarations:
# 	compute in3 ((6.8/10)+1)*@ ,  @/((6.8/10)+1)
# 	compute in4 ((30/10)+1)*@  ,  @/((30/10)+1)
# 	compute in5 -(240/60)*@    ,  -@/(240/60)
# 	compute in6 -(100/60)*@    ,  -@/(100/60)
#
# On almost any mainboard we have seen, the Winbond compute values lead to
# much better results, though. 
#
# 	      Vs     R1,Rin   R2,Rf    Vin
# 	in4  +12.0     28      10     +3.00
# 	in5  -12.0    210      60.4   +3.00
# 	in6   -5.0     90.9    60.4   +3.00
#
# These leads to these declarations:
#  	compute in3 ((6.8/10)+1)*@ ,  @/((6.8/10)+1)
#  	compute in4 ((28/10)+1)*@  ,  @/((28/10)+1)
#  	compute in5 -(210/60.4)*@  ,  -@/(210/60.4)
#  	compute in6 -(90.9/60.4)*@ ,  -@/(90.9/60.4)
#
#
# SET LINES
# ---------
# Set statements set things like limits. Complete expressions can be
# used. Not everything can sensibly be set: setting 'in0', for example,
# is impossible! These settings are put through the compute translations;
# so if we specify '12.8' for in6, '3.2' will actually be written!
#
# Important note: In the 'sensors' program, these only take effect
# after running 'sensors -s'!!!
#
# Here are some examples:
#
#	set in0_max vid*1.05
#	set in0_min vid*0.95
#	set temp1_over 40	
#	set temp1_hyst 37	
#
# Think of tempx_over as 'alarm set' and tempx_hyst as 'alarm clear'
# thresholds. In most cases the 'over' value should be higher than
# the 'hyst' value by several degrees.
#
#
# IGNORE LINES
# ------------
# Ignore statements tell certain features are not wanted. User programs can
# still read them if they really want, though; this is just an advisory
# marking. 'in0' would also invalidate 'in0_max' and 'in0_min'.
# 'ignore' does not disable anything in the actual sensor chip; it
# simply advises the user program to not access that data.
#
#	ignore in0
#
#
# BUS LINES
# ---------
# There is one other feature: the 'bus' statement. An example is below.
#
#	bus "i2c-0" "SMBus PIIX4 adapter at e800" "Non-I2C SMBus adapter"
#
# If we refer from now on to 'i2c-0' in 'chip' lines, this will run-time
# be matched to this bus. So even if the PIIX4 is called 'i2c-5' at that
# moment, because five other adapters were detected first, 'i2c-0' in
# the config file would always only match this physical bus. In the above
# config file, this feature is not needed; but the next lines would
# only affect the LM75 chips on the PIIX4 adapter:
#
#	chip "lm75-i2c-0-*"
#
# You should really use the output of /proc/bus/chips to generate bus lines,
# because one mistyped characted will inhibit the match. Wildcards are not
# yet supported; spaces at the end are ignored, though.
#
#
##########################################################################
#### Here begins the real configuration file


chip "lm78-*" "lm78-j-*" "lm79-*" "w83781d-*"

# These are as advised in the LM78 and LM79 data sheets, and used on almost
# any mainboard we have seen.

    label in0 "VCore 1"
    label in1 "VCore 2"
    label in2 "+3.3V"
    label in3 "+5V"
    label in4 "+12V"
    label in5 "-12V"
    label in6 "-5V"

# For positive voltages (in3, in4), two resistors are used, with the following
# formula (R1,R2: resistor values, Vs: read voltage, Vin: pin voltage)
#   R1 = R2 * (Vs/Vin - 1)
# For negative voltages (in5, in6) two resistors are used, with the following
# formula (Rin,Rf: resistor values, Vs: read voltage, Vin: pin voltage)
#   Rin = (Vs * Rf) / Vin
#
# Here are the official LM78 and LM79 data sheet values.
#       Vs     R1,Rin   R2,Rf    Vin
# in3   +5.0      6.8    10     +2.98
# in4  +12.0     30      10     +3.00
# in5  -12.0    240      60     +3.00
# in6   -5.0    100      60     +3.00
#
# These would lead to these declarations:
# compute in3 ((6.8/10)+1)*@ ,  @/((6.8/10)+1)
# compute in4 ((30/10)+1)*@  ,  @/((30/10)+1)
# compute in5 -(240/60)*@    ,  -@/(240/60)
# compute in6 -(100/60)*@    ,  -@/(100/60)
#
# On almost any mainboard we have seen, the Winbond compute values lead to
# much better results, though. 
#
#       Vs     R1,Rin   R2,Rf    Vin
# in4  +12.0     28      10     +3.00
# in5  -12.0    210      60.4   +3.00
# in6   -5.0     90.9    60.4   +3.00
#
# These leads to these declarations:

    compute in3 ((6.8/10)+1)*@ ,  @/((6.8/10)+1)
    compute in4 ((28/10)+1)*@  ,  @/((28/10)+1)
    compute in5 -(210/60.4)*@  ,  -@/(210/60.4)
    compute in6 -(90.9/60.4)*@ ,  -@/(90.9/60.4)

# Here, we assume the VID readings are valid, and we use a max. 5% deviation

    set in0_min vid*0.95
    set in0_max vid*1.05
    set in1_min vid*0.95
    set in1_max vid*1.05
    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

# examples for lm78, lm78j, lm79 temperature limits;
#    set temp_over 40	
#    set temp_hyst 37	

# examples for w83781d temperature limits
#    set temp1_over 40	
#    set temp1_hyst 37	
#    set temp2_over 52	
#    set temp2_hyst 47	
#    set temp3_over 52	
#    set temp3_hyst 47	


chip "sis5595-*"

    label in0 "VCore 1"
    label in1 "VCore 2"
    label in2 "+3.3V"
    label in3 "+5V"
    label in4 "+12V"

    compute in3 ((6.8/10)+1)*@ ,  @/((6.8/10)+1)
    compute in4 ((28/10)+1)*@  ,  @/((28/10)+1)

    set in0_min 2.0 * 0.95
    set in0_max 2.0 * 1.05
    set in1_min 2.0 * 0.95
    set in1_max 2.0 * 1.05
    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

#
# SiS5595 temperature calculation
# The driver currently includes a calculation due to the wide
# variation in thermistor types on SiS5595 motherboards.
# The driver currently has a calculation of t = (.83x + 52.12).
# One user reports the correct formula of t = (.345x - 12).
# So you want to put a compute line in sensors.conf that has
# the inverse of the driver formula, and put your formula on top of it.
# The inverse of the driver formula is x = (1.20t - 62.77)
# So the final formula is newt = (.345(1.20t - 62.77)) - 12).
# Put this in the sensors.conf file as
# compute temp ((.345 * ((1.20 * @) - 62.77)) - 12), ...
# where ... is the inverse function I leave to you.
#
# Look in your 'Vendor.ini' file to see which one is present
# on your motherboard. Look for the line like:
#	[Temp1]
#	     ThermistorType     = NTC-10KC15-1608-1P
# Fix up a 'compute' line to match your thermistor type.
# Warning. You still don't have enough information to do this.
#	     ThermistorType     = NTC-10KC15-1608-1P (10K at 25C; Beta = 3435)
#   compute temp ((X * ((1.20 * @) - 62.77)) - Y), ...
#	     ThermistorType     = NTC-103KC15-1608-1P  (??)
#   compute temp ((X * ((1.20 * @) - 62.77)) - Y), ...
#	     ThermistorType     = NTC-103AT-2 (10K at 25C; Beta = 3435)
#   compute temp ((X * ((1.20 * @) - 62.77)) - Y), ...
#	     ThermistorType     = NTC-103JT   (10K at 25C; Beta = 3435)
#   compute temp ((X * ((1.20 * @) - 62.77)) - Y), ...

# examples for sis5595 temperature limits;
# for sis5595, temp_hyst is really the low limit, not a hysteresis value
#    set temp_over 40	
#    set temp_hyst 37	

chip "w83782d-*" "w83783s-*" "w83627hf-*"

# Same as above for w83781d except that in5 and in6 are computed differently.
# Rather than an internal inverting op amp, the 82d/83s use standard positive
# inputs and the negative voltages are level shifted by a 3.6V reference.
# The math is convoluted, so we hope that your motherboard
# uses the recommended resistor values.

    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 "V5SB"
    label in8 "VBat"

    compute in3 ((6.8/10)+1)*@ ,  @/((6.8/10)+1)
    compute in4 ((28/10)+1)*@  ,  @/((28/10)+1)
    compute in5 (5.14 * @) - 14.91  ,  (@ + 14.91) / 5.14
    compute in6 (3.14 * @) -  7.71  ,  (@ +  7.71) / 3.14
    compute in7 ((6.8/10)+1)*@ ,  @/((6.8/10)+1)

# set limits to  5% for the critical voltages
# set limits to 10% for the non-critical voltages
# set limits to 20% for the battery voltage

    set in0_min vid*0.95
    set in0_max vid*1.05
    set in1_min vid*0.95
    set in1_max vid*1.05
    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.90
    set in4_max 12 * 1.10
    set in5_min -12 * 0.90
    set in5_max -12 * 1.10
    set in6_min -5 * 0.95
    set in6_max -5 * 1.05
    set in7_min 5 * 0.95
    set in7_max 5 * 1.05
    set in8_min 3.0 * 0.80
    set in8_max 3.0 * 1.20

# set up sensor types (thermistor is default)
# 1 = PII/Celeron Diode; 2 = 3904 transistor;
# 3435 = thermistor with Beta = 3435
# If temperature changes very little, try 1 or 2.
#   set sensor1 1
#   set sensor2 2
#   set sensor3 3435

# examples for temperature limits
#    set temp1_over 40	
#    set temp1_hyst 37	
#    set temp2_over 52	
#    set temp2_hyst 47	
#    set temp3_over 52	
#    set temp3_hyst 47	


chip "as99127f-*"

# Same as above for w83782d except that in5 and in6 negative voltages
# are computed as in the w83781d.
# Asus won't release a datasheet so this is guesswork.
# New in5 and temp2 calculations courtesy Guntram Blohm.

    label in0 "VCore 1"
    label in1 "VCore 2"
    label in2 "+3.3V"
    label in3 "+5V"
    label in4 "+12V"
    label in5 "-12V"
    label in6 "-5V"

    compute in3 ((6.8/10)+1)*@ ,  @/((6.8/10)+1)
    compute in4 ((28/10)+1)*@  ,  @/((28/10)+1)
    compute in5 -(240/60.4)*@ ,  -@/(240/60.4)
    compute in6 -(90.9/60.4)*@ ,  -@/(90.9/60.4)

    compute temp2 (@*30/43)+25, (@-25)*43/30

# set limits to  5% for the critical voltages
# set limits to 10% for the non-critical voltages
# set limits to 20% for the battery voltage

    set in0_min vid*0.95
    set in0_max vid*1.05
    set in1_min vid*0.95
    set in1_max vid*1.05
    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.90
    set in4_max 12 * 1.10
    set in5_min -12 * 0.90
    set in5_max -12 * 1.10
    set in6_min -5 * 0.95
    set in6_max -5 * 1.05

# examples for temperature limits
#    set temp1_over 40	
#    set temp1_hyst 37	
#    set temp2_over 52	
#    set temp2_hyst 47	
#    set temp3_over 52	
#    set temp3_hyst 47	


chip "gl518sm-*"

# Factors and labels taken from GL518SM datasheet, they seem to give
# reasonable values with EISCA connected Fan78

  label vdd "+5V"
  label vin1 "+3.3V"
  label vin2 "+12V"
  label vin3 "Vcore"

# vin2 depends on external resistors (4,7k and 15k assumed here) 
# vin1 and vin3 require no scaling

  compute vin2 (197/47)*@  ,  @/(197/47)

  set vdd_min 4.8
  set vdd_max 5.2
  set vin1_min 3.20
  set vin1_max 3.40
  set vin2_min 11.0
  set vin2_max 13.0
  set vin3_min 2.10
  set vin3_max 2.30
  set fan1_off 0
  set fan2_min 0
  set iterate 0


chip "gl520sm-*"

# Factors and labels taken from GL520SM datasheet

  label vdd "+5V"
  label vin1 "+3.3V"
  label vin2 "+12V"
  label vin3 "Vcore"
  label vin4 "-12V"

# vin1 and vin3 require no scaling
# vin2 depends on external resistors (4,7k and 15k assumed)
 
# vin4 = ((R1+R2)/R2)*@ - (R1/R2)*vdd
#
#       -12 --| R1 |---t---| R2 |-- +5 
#                      |
#                    vin4
#

  compute vin2 (197/47)*@  ,  @/(197/47)
  compute vin4 (5*@)-(4*vdd) , (@+4*vdd)/5

  set vdd_min 4.8
  set vdd_max 5.2
  set vin1_min 3.20
  set vin1_max 3.40
  set vin2_min 11.0
  set vin2_max 13.0
  set vin3_min 2.10
  set vin3_max 2.30
  set two_temps 1


chip "lm80-*"
    
# The values below should be correct if you own a qdi BX (brilliant1)
# mainboard. If not, please contact us, so we can figure out better readings.
# Many thanks go to Peter T. Breuer <ptb@it.uc3m.es> for helping us figure
# out how to handle the LM80.

# For positive voltages (in0..in4), two resistors are used, with the following
# formula (R1,R2: resistor values, Vs: read voltage, Vin: pin voltage)
#   R1 = R2 * (Vs/Vin - 1)
# For negative voltages (in5, in6) two resistors are used, with the following
# formula (R3,R4: resistor values, Vs: read voltage, Vin: pin voltage, 
# V5: +5V)
#   R3 = R4 * (Vs - Vin) / (Vin - V5) 

# Here are the official LM78 and LM79 data sheet values.
#       Vs      R1,R3   R2,R4    Vin
#       +2.5V    23.7    75     +1.9
#       +3.3V    22.1    30     +1.9
#       +5.0     24      14.7   +1.9
#      +12.0    160      30.1   +1.9
#      -12.0    160      35.7   +1.9
#       -5.0     36      16.2   +1.9

# Now curiously enough, VCore is connected with (unknown) resistors, which
# translate a +2.8V to +1.9V. So we use that in the computations below.

    label in0 "+5V"
    label in1 "VTT"
    label in2 "+3.3V"
    label in3 "+Vcore"
    label in4 "+12V"
    label in5 "-12V"
    label in6 "-5V"

    compute in0 (24/14.7 + 1) * @ ,       @ / (24/14.7 + 1)
    compute in2 (22.1/30 + 1) * @ ,       @ / (22.1/30 + 1)
    compute in3 (2.8/1.9) * @,            @ * 1.9/2.8
    compute in4 (160/30.1 + 1) * @,       @ / (160/30.1 + 1)
    compute in5 (160/35.7)*(@ - in0) + @, (@ + in0 * 160/35.7)/ (1 + 160/35.7)
    compute in6 (36/16.2)*(@ - in0) + @,  (@ + in0 * 36/16.2) / (1 + 36/16.2)

    set in0_min 5 * 0.95
    set in0_max 5 * 0.95
# What is your VTT? It is probably not this value...
    set in1_min 2*0.95
    set in1_max 2*1.05
    set in2_min 3.3 * 0.95
    set in2_max 3.3 * 1.05
# What is your VCore? It is probably not this value...
    set in3_min 1.9 * 0.95
    set in3_max 1.9 * 1.05
    set in4_min 12 * 0.95
    set in4_max 12 * 1.05
    set in5_min -12 * 1.05
    set in5_max -12 * 0.95
    set in6_min -5 * 1.05
    set in6_max -5 * 0.95

# examples for lm80 temperature limits
# WARNING - nonstandard names and functions for the lm80!!!
# All 4 of these limits apply to the single temperature sensor.
# "hot" is like the standard alarm for most chips.
# "os" is the threshold for the overtemperature shutdown output.
# "os" may or may not do anything on your motherboard but it should
#  be set higher than the "hot" thresholds.
# Note that the /proc file 'temp" also has five entries instead of
# the usual three.
#    set temp_hot_hyst 45
#    set temp_hot_max  52	
#    set temp_os_hyst  57	
#    set temp_os_max   62	


chip "maxilife-cg-*" "maxilife-co-*" "maxilife-as-*"

   label fan1  "HDD Fan"
   label fan2  "PCI Fan"
   label fan3  "CPU Fan"
   ignore fan4
   
   label temp2 "PCI Temp"
   label temp4 "HDD Temp"
   label temp5 "CPU Temp"
   ignore temp6

   label vid1  "V+12"
   ignore vid5

# vid1 need to be scaled by 6.337 other voltages 
# require no scaling

   compute vid1 6.337*@ , @/6.337


chip "maxilife-cg-*"

   ignore temp1
   label temp3  "BX Temp"
   
   label vid2   "Vcpu1"
   label vid3   "Vcpu2"
   ignore vid4


chip "maxilife-co-*"

   label temp1  "CPU 1 Temp"
   label temp3  "CPU 2 Temp"
   
   label vid2   "Vcpu1"
   label vid3   "Vcpu2"
   label vid4   "VcacheL2"


chip "maxilife-as-*"

   ignore temp1
   ignore temp3

   label vid2   "Vcpu"
   ignore vid3
   ignore vid4


chip "maxilife-nba-*"

   label fan1  "CPU Fan"
   label fan2  "PCI Fan"
   label fan3  "HDD Fan"
   label fan4  "Heat Sink Fan"

   label temp1  "CPU 1 Temp"
   label temp2  "CPU 2 Temp"
   label temp3  "PCI/Ambient Temp"
   label temp4  "HDD Temp"
   label temp5  "Motherboard Temp"
   label temp6  "CPU Reference Temp"

   label vid1  "V+12"
   label vid2  "Vcpu1"
   label vid3  "Vcpu2"
   label vid4  "VcacheL2"
   label vid5  "V-12"


chip "via686a-*"

# VIA is very specific about the voltage sensor inputs, and our labels
# reflect what they say.  Unfortunately, they are not at all specific about
# how to convert any of the register values to real units.  Fortunately,
# Jonathan Yew <j.teh@iname.com> and Alex van Kaam <darkside@chello.nl>
# came through with some data for temp conversion and formulae for voltage 
# conversion. However, the conversions should be regarded as our best guess- 
# YMMV.

# On the Tyan S1598, the 2.5V sensor reads 0 and is not displayed in the BIOS.
# Linas Vepstas <linas@linas.org> reports that this sensor shows nothing of
# interest on the Abit KA7 (Athlon), and is also not displayed in the BIOS.
# Likewise, Johannes Drechsel-Burkhard <jdb@chello.at> reports that this 
# sensor is unavailable in the BIOS of his MSI K7T Pro (Thunderbird).  So, 
# if you have one of these boards you may want to uncomment the 'ignore 2.5V' 
# line below.

    label "2.0V" "CPU core"
    label "2.5V" "+2.5V"
    ignore "2.5V"
    label "3.3V" "I/O"
    label "5.0V" "+5V"
    label "12V" "+12V"

    label fan1  "CPU Fan"
    label fan2  "P/S Fan"

# VIA suggests that temp3 is an internal temp sensor for the 686a.  However,
# on the Tyan S1598 as well as the Abit KA7 (Athalon), the absolute values
# of the readings from that sensor are not valid.  The readings do seem to 
# correlate with temp changes, but the conversion factor may be quite 
# different from temp1 & temp2 (as noted above, VIA has not provided
# conversion info).  So, you may wish to 'ignore temp3'. 

# Johannes Drechsel-Burkhard <jdb@chello.at> notes that on his MSI K7T Pro,
# temp1 is the CPU temp and temp2 is the SYS temp.  

# I switched temp1 and temp2
    label temp1 "CPU Temp"
    label temp2 "SYS Temp"
    label temp3 "SBr Temp"
    ignore temp3

# Set your CPU core limits here.  For the other voltage sensors, the 
# built-in defaults should be fine.

    set in0_min 1.7
    set in0_max 2.5

# Set your temp limits here.  Remember, 'tempX_over' is the temp at which an
# alarm is triggered, and 'tempX_hyst' is the temp at which an alarm turns off.
# Setting tempX_hyst to a few degrees below the corresponding tempX_over 
# prevents an oscillation between alarm on and off states.  This kind of 
# oscillation is known as hyteresis, thus the name.  (You typically get the 
# most serious and troublesome hysteresis when a sensor triggers something to 
# reduce the temp, thus creating a negative feedback loop.  Even without that,
# we would still get some oscillation when the temp hovers around the limit 
# due to noise.)   

# temp1 correspond to Motherboard, temp2 to CPU
    set temp1_hyst 60
    set temp1_over 65
    set temp2_hyst 40
    set temp2_over 45
    set temp3_hyst 60
    set temp3_over 65

# You could set your fan limits too, but the defaults should be fine.

    #set fan1_min 5000
    #set fan2_min 5000

# For at least one Tyan S1598, the following corrections make the sensors
# readings more in-line with the BIOS readings on boot.  Try these, and 
# adjust as necessary. 

  #compute "2.0V" 1.02*@ ,  @/1.02
  #compute "3.3V" 1.02*@  ,  @/1.02
  #compute "5.0V" 1.009*@  ,  @/1.009
  #compute "12V" 1.04*@ ,  @/1.04


chip "mtp008-*"
    
# The values below should be correct if you own a Tyan S1834D motherboard.
# If not, please contact us, so we can figure out better readings.
# FOR TYAN S2510 SEE END OF THIS SECTION.

# For positive voltages outside the 0..4.09V range (in2..in4), two resistors
# are used, with the following formula (R1,R2: resistor values, Vs: read
# voltage, Vin: pin voltage)
#   Vin = Vs * (R2 / (R1 + R2))
# For negative voltages (in5) two resistors are used, with the following
# formula (R3,R4: resistor values, Vs: read voltage, Vin: pin voltage)
#   Vin = ((4.096 - Vs) * (R3 / (R3 + R4))) + Vs

# Here are the official MTP008 data sheet values:
#       Vs      R1,R3   R2,R4    Vin
#      +12.0    28000   10000   +3.16
#      -12.0   232000   56000   +0.96
#       -5.0   120000   56000   +1.20

    label in0 "VCore1"
    label in1 "+3.3V"
    label in2 "+12V"
    label in3 "Vcore2"
    ignore in4
    label in5 "-12V"
    label in6 "Vtt"

    label fan1 "CPU1 Fan"
    label fan2 "CPU2 Fan"
    label fan3 "fan3"

    label temp1 "CPU1 Temp"
    label temp2 "CPU2 Temp"
    ignore temp3

    compute in2 @ * 38 / 10,		@ * 10 / 38
    compute in5 (@ * 36 - 118.61) / 7,	(118.61 + 7 * @) / 36

# examples for temperature limits
#    set temp1_over 40	
#    set temp1_hyst 37	
#    set temp2_over 52	
#    set temp2_hyst 47	
#    set temp3_over 52	
#    set temp3_hyst 47	

# End of standard mtp008 configuration

# TYAN S2510 INFORMATION
# This motherboard has two mtp008's which are hooked up differently,
# so they must be configured separately.
# For this motherboard, COMMENT OUT the above mtp008 section and
# UNCOMMENT the following two sections.
#
#chip "mtp008-i2c-*-2c"
#    label in0 "VCore1"
#    set in0_min 1.60
#    set in0_max 1.80
#    label in1 "+3.3V"
#    label in2 "+12V"
#    label in3 "Vcore2"
#    set in3_min 1.60
#    set in3_max 1.80
#    ignore in4
#    label in5 "-12V"
#    label in6 "Vtt"
#    label fan1 "CPU1 Fan"
#    label fan2 "CPU2 Fan"
#    label fan3 "fan3"
#    label temp1 "CPU1 Temp"
#    label temp2 "CPU2 Temp"
#    ignore temp3
#    compute in2 @ * 38 / 10,		@ * 10 / 38
#    compute in5 (@ * 36 - 118.61) / 7,	(118.61 + 7 * @) / 36
#
#chip "mtp008-i2c-*-2e"
#    ignore in0
#    label in1 "+3.3V"
#    ignore in2
#    label in3 "+5V"
#    set in3_min 4.50
#    set in3_max 5.50
#    ignore in4
#    label in5 "+3.3V"
#    ignore in6
#    label fan1 "fan4"
#    label fan2 "fan5"
#    label fan3 "fan6"
#    ignore temp1
#    label temp2 "MB Temp"
#    set temp2_over 52	
#    set temp2_hyst 47	
#    ignore temp3

chip "adm1025-*"

# These are as advised in the data sheet

    label in0 "+2.5V"
    label in1 "VCCP"
    label in2 "+3.3V"
    label in3 "+5V"
    label in4 "+12V"
    label in5 "VCC"

    label temp1 "SYS Temp"
    label temp2 "CPU Temp"

chip "lm87-*"
#
# This chip has non-standard entries in lib/chips.c so
# the feature names are quite different from other chips.
# For this chip, libsensors anticipates the correct labeling.
# This is great if it's correct but makes it a little more
# difficult if you want to change it.
#
# This may not have been a good idea, so it may be changed in the future.
# Here is an entry with everything commented out so you can
# uncomment the appropriate line if you want to change it.
#
# Warning - feature names starting with a number must be enclosed
# with double quotes.
#
#   label "2.5V" "xxx"
#   label Vccp1 "xxx"
#   label "3.3V" "xxx"
#   label "5V" "xxx"
#   label "12V" "xxx"
#   label Vccp2 "xxx"
#   label AIN1 "xxx"
#   label AIN2 "xxx"
#   label fan1 "xxx"
#   label fan2 "xxx"
#   label temp1 "xxx"
#   label CPU_Temp "xxx"
#   label CPU2_Temp "xxx"
#
#   set AmbTemp_min xxx
#   set Vccp1_min xxx
#   set "3.3V_min" xxx
#   set "5V_min" xxx
#   set "12V_min" xxx
#   set Vccp2_min xxx
#   set AIN1_min xxx
#   set AIN2_min xxx
#
#   set AmbTemp_max xxx
#   set Vccp1_max xxx
#   set "3.3V_max" xxx
#   set "5V_max" xxx
#   set "12V_max" xxx
#   set Vccp2_max xxx
#   set AIN1_max xxx
#   set AIN2_max xxx
#
#   set fan1_min xxx
#   set fan2_min xxx
#   set temp1_min xxx
#   set temp1_max xxx
#   set temp2_min xxx
#   set temp2_max xxx
#   set temp3_min xxx
#   set temp3_max xxx
#   set fan1_div xxx
#   set fan2_div xxx

#   compute "2.5V" xxx
#   compute Vccp1 xxx
#   compute "3.3V" xxx
#   compute "5V" xxx
#   compute "12V" xxx
#   compute Vccp2 xxx
#   compute AIN1 xxx
#   compute AIN2 xxx
#   compute temp1 xxx
#   compute CPU_Temp xxx
#   compute CPU2_Temp xxx


chip "adm9240-*" "ds1780-*" "lm81-*"
#
# These chips have non-standard entries in lib/chips.c so
# the feature names are quite different from other chips.
# For these chips, libsensors anticipates the correct labeling.
# This is great if it's correct but makes it a little more
# difficult if you want to change it.
#
# This may not have been a good idea, so it may be changed in the future.
# Here is an entry with everything commented out so you can
# uncomment the appropriate line if you want to change it.
#
# Warning - feature names starting with a number must be enclosed
# with double quotes.
#
#   label "2.5V" "xxx"
#   label Vccp1 "xxx"
#   label "3.3V" "xxx"
#   label "5V" "xxx"
#   label "12V" "xxx"
#   label Vccp2 "xxx"
#   label fan1 "xxx"
#   label fan2 "xxx"
#   label temp "xxx"
#
#   set Vccp1_min xxx
#   set "2.5V_min" xxx
#   set "3.3V_min" xxx
#   set "5V_min" xxx
#   set "12V_min" xxx
#   set Vccp2_min xxx
#
#   set Vccp1_max xxx
#   set "2.5V_max" xxx
#   set "3.3V_max" xxx
#   set "5V_max" xxx
#   set "12V_max" xxx
#   set Vccp2_max xxx
#
#   set fan1_min xxx
#   set fan2_min xxx
#   set temp1_hyst xxx
#   set temp1_over xxx
#   set fan1_div xxx
#   set fan2_div xxx

#   compute "2.5V" xxx
#   compute Vccp1 xxx
#   compute "3.3V" xxx
#   compute "5V" xxx
#   compute "12V" xxx
#   compute Vccp2 xxx
#   compute temp xxx

chip "adm1024-*"
#
# These settings work for me, adjust for your system
#
    label fan1 "CPU1 fan"
    label fan2 "CPU2 fan"
    label temp "SYS Temp"
    label temp1 "CPU2 Temp"
    label temp2 "CPU1 Temp"
    ignore "2.5V" # This register is also used for temp2
    ignore "Vccp1"
    ignore "Vccp2"


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 1"
    label in1 "VCore 2"
    label in2 "+3.3V"
    label in3 "+5V"
    label in4 "+12V"
    label in5 "-12V"
    label in6 "-5V"
    label in7 "Stdby"

    set in0_min 1.5 * 0.95
    set in0_max 1.5 * 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

    # 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 (7.67 * @) - 27.36  ,  (@ + 27.36) / 7.67
    compute in6 (4.33 * @) - 13.64  ,  (@ + 13.64) / 4.33
#
    compute in7 ((6.8/10)+1)*@ ,  @/((6.8/10)+1)

# Temperature

    label temp1       "Temp1/MB"
    set   temp1_over  40
    set   temp1_hyst  20

    label temp2       "Temp2/CPU"
    set   temp2_over  45
    set   temp2_hyst  25

    ignore temp3

# Fans

    set fan1_min 0
    set fan2_min 3000
    ignore fan3

# The following is for the Inside Technologies 786LCD which uses either a
# IT8705F or a SIS950 for monitoring with the SIS630.
# You will need to load the it87 module as follows to select the correct
# temperature sensor type.
# modprobe it87 temp_type=0x31
# The sensors-detect program reports lm78 and a sis5595 and lists the it87 as
# a misdetect.  Don't do the modprobe for the lm78 or sis5595 as suggested.
#
# delete or comment out above it87 section and uncomment the following.
#chip "it87-*"
#    label in0 "VCore 1"
#    label in1 "VCore 2"
#    label in2 "+3.3V"
#    label in3 "+5V"
#    label in4 "+12V"
#    label in5 "3.3 Stdby"
#    label in6 "-12V"
#    label in7 "Stdby"
#    label in8 "VBat"
    # in0 will depend on your processor VID value, set to voltage specified in
    # bios setup screen
#    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
    # +- 12V are very poor tolerance on this board. Verified with voltmeter
#    set in4_min 12 * 0.90
#    set in4_max 12 * 1.10
#    set in5_min 3.3 * 0.95
#    set in5_max 3.3 * 1.05
#    set in6_max -12 * 0.90
#    set in6_min -12 * 1.10
#    set in7_min 5 * 0.95
#    set in7_max 5 * 1.05
    # vid not monitored by IT8705F
#    ignore  vid

#    compute in3 ((6.8/10)+1)*@ ,  @/((6.8/10)+1)
#    compute in4 ((30/10) +1)*@  , @/((30/10) +1)
#    compute in6 (1+232/56)*@ - 4.096*232/56, (@ + 4.096*232/56)/(1+232/56)
#    compute in7 ((6.8/10)+1)*@ ,  @/((6.8/10)+1)
    # Temperature
#    label temp1       "CPU Temp"
#    ignore temp2
#    ignore temp3
    # Fans
#    set fan1_min 3000
#    ignore fan2
#    ignore fan3

chip "fscpos-*"

#
#    values for the fujitsu siemens poseidon chip
#
# Temperature

    label temp1       "Temp1/CPU"
    label temp2       "Temp2/MB"
    label temp3       "Temp2/AUX"

# Fans

    label  fan1       "Fan1"
    ignore  fan2     
    ignore  fan3    

# Voltage
 
    label volt12      "+12V"
    label volt5       "+5V"
    label voltbatt    "+3.3V"

chip "fscscy-*"

#
#    values for the fujitsu siemens Scylla chip
#
# Temperature

    label temp1       "Temp1/CPU0"
    label temp2       "Temp2/CPU1"
    label temp3       "Temp3/MB"
    label temp4       "Temp4/AUX"

# Fans

    label  fan1       "Fan1/CPU0"
    label  fan2       "Fan2/CPU0"
    label  fan3       "Fan3"
    label  fan4       "Fan4"
    label  fan5       "Fan5"
    label  fan6       "Fan6"

# Voltage

    label volt12      "+12V"
    label volt5       "+5V"
    label voltbatt    "+3.3V"

