root/lm-sensors/trunk/etc/sensors.conf.eg @ 2211

Revision 2211, 53.8 KB (checked in by khali, 9 years ago)

Get rid of the lm90 hyst exception.

  • Property svn:eol-style set to native
  • Property svn:keywords set to Author Date Id Revision
Line 
1# Sensors configuration file used by 'libsensors'
2#------------------------------------------------
3#
4##########################################################################
5#                                                                        #
6#    PLEASE READ THIS HELPFUL HINT!!!                                    #
7#                                                                        #
8#       The 'set' lines (generally for min and max values)               #
9#       do not take effect until you run 'sensors -s' as root !!!        #
10#       We suggest you put 'sensors -s' in a /etc/rc.d/... file          #
11#       to be run at boot time after the modules are inserted !!!        #
12#                                                                        #
13##########################################################################
14#
15#
16# OVERVIEW
17# --------
18# This configuration file will be used by all userspace applications
19# linked to libsensors. It is NOT used by the lm_sensors drivers directly.
20#
21# This config file consists of two parts: the heavily commented LM78
22# example, and the real parts. Search for '####' if you want to skip
23# to the real stuff.
24#
25# Hash marks introduce comments, which continue until the end of a line
26#
27# Identifiers consisting of only digits and letters can be used
28# unquoted; other identifiers must be quoted. Escape characters within
29# quotes operate like those in C.
30#
31#
32# CHIP LINES
33# ----------
34# A 'chip' line specifies what the following 'label', 'compute', 'set' and
35# 'ignore' lines refer to. In this case, until the
36# next 'chip' line, everything refers to all lm78, lm78-j and lm79
37# chips. Other examples are *-isa-* for everything on the ISA bus, and
38# lm78-j-i2c-*-4e for all lm78-j chips on address 0x4e of any I2C bus.
39#
40# If more chip statements match a specific chip, they are all considered.
41# Later lines overrule earlier lines, so if you set the in0 label for
42# lm78-* to "This", and later on the in0 label for lm78-isa-* to "That",
43# "That" is used for LM78 chips on the ISA bus, and "This" for LM78
44# chips on a non-ISA bus.
45#
46#       chip "lm78-*" "lm78-j-*" "lm79-*"
47#
48#
49# FEATURE NAMES
50# -------------
51# Feature names are used in 'label', 'compute', 'set', and 'ignore' lines.
52# Example feature names are 'in0', 'temp2', 'in3_min', and 'temp3_over'.
53# These features are defined for each chip in lib/chips.c.
54#
55# Undefined features will be silently ignored in 'label' and 'compute' lines.
56# Undefined features in 'set' lines will result in 'Unknonw feature name'
57# when running 'sensors -s'.
58#
59# Unfortunately, feature names starting with a number must be in
60# double quotes or you get 'parse error, expecting 'NAME''.
61#
62# If you have trouble, verify the features in lib/chips.c!!!
63#
64#
65# LABEL LINES
66# -----------
67# A label line describes what a certain feature stands for on your
68# mainboard. Programs can retrieve these names and display them.
69# If no label is specified for a certain feature, the default name
70# (ie. 'fan1' for fan1) is used.
71#
72# If you specify a label for in1, this label is also used for in1_min and
73# in1_max, unless they have their own labels declared. There are several
74# of these logical groups.
75#
76# These are as advised in the LM78 and LM79 data sheets, and used on most
77# boards we have seen.
78#
79#       label in0 "VCore 1"
80#       label in1 "VCore 2"
81#       label in2 "+3.3V"
82#       label in3 "+5V"
83#       label in4 "+12V"
84#       label in5 "-12V"
85#       label in6 "-5V"
86#
87#
88# COMPUTE LINES
89# -------------
90# A compute line describes how to scale a certain feature. There are
91# two expressions in it: the first describes how the /proc value must
92# be translated to a user value, the second how a user value must be
93# translated to a /proc value. '@' is the value to operate on. You may
94# refer to other readable features (like '2 * vid').
95#
96# The following operators are valid: + - * / ( ) ^ `
97# ^ is e**x and ` is ln(x) (valid in library version 2.0.0 /
98# lm_sensors 2.8.0 or higher)
99#
100# Like for the label statement, there are logical groups here. They are
101# sometimes a bit different, though. For example, fan1_div is in the
102# logical label group of fan1 (it gets the same label if none is declared
103# for it), but it is not in the compute group of fan1 (as it uses a
104# completely different system of values).
105#
106#
107# VOLTAGE COMPUTATION DETAILS
108# ---------------------------
109# Most voltage sensors in sensor chips have a range of 0 to 4.096 Volts.
110# This is generally sufficient for the 3.3 and CPU (2.5V, for example)
111# supply voltages, so the sensor chip reading is the actual voltage.
112#
113# Other supply voltages must be scaled with an external resistor network.
114# The chip driver generally reports the 'raw' value 0 - 4.09 V, and the
115# userspace application must convert this raw value to an actual voltage.
116# The 'compute' lines provide this facility.
117#
118# Unfortunately the resistor values vary among motherboard types.
119# Therefore you may have to adjust the computations in this file
120# to match your motherboard.
121#
122# For positive voltages (in3, in4), two resistors are used, with the following
123# formula (R1,R2: resistor values, Vs: read voltage, Vin: pin voltage)
124#       R1 = R2 * (Vs/Vin - 1)
125# For negative voltages (in5, in6) two resistors are used, with the following
126# formula (Rin,Rf: resistor values, Vs: read voltage, Vin: pin voltage)
127#       Rin = (Vs * Rf) / Vin
128#
129# Note: Some chips use a different formula, see it87 section for example.
130#
131# Here are the official LM78 and LM79 data sheet values.
132#             Vs     R1,Rin   R2,Rf    Vin
133#       in3   +5.0      6.8    10     +2.98
134#       in4  +12.0     30      10     +3.00
135#       in5  -12.0    240      60     +3.00
136#       in6   -5.0    100      60     +3.00
137#
138# These would lead to these declarations:
139#       compute in3 ((6.8/10)+1)*@ ,  @/((6.8/10)+1)
140#       compute in4 ((30/10)+1)*@  ,  @/((30/10)+1)
141#       compute in5 -(240/60)*@    ,  -@/(240/60)
142#       compute in6 -(100/60)*@    ,  -@/(100/60)
143#
144# On almost any mainboard we have seen, the Winbond compute values lead to
145# much better results, though.
146#
147#             Vs     R1,Rin   R2,Rf    Vin
148#       in4  +12.0     28      10     +3.00
149#       in5  -12.0    210      60.4   +3.00
150#       in6   -5.0     90.9    60.4   +3.00
151#
152# These leads to these declarations:
153#       compute in3 ((6.8/10)+1)*@ ,  @/((6.8/10)+1)
154#       compute in4 ((28/10)+1)*@  ,  @/((28/10)+1)
155#       compute in5 -(210/60.4)*@  ,  -@/(210/60.4)
156#       compute in6 -(90.9/60.4)*@ ,  -@/(90.9/60.4)
157#
158#
159# SET LINES
160# ---------
161# Set statements set things like limits. Complete expressions can be
162# used. Not everything can sensibly be set: setting 'in0', for example,
163# is impossible! These settings are put through the compute translations;
164# so if we specify '12.8' for in6, '3.2' will actually be written!
165#
166# Important note: In the 'sensors' program, these only take effect
167# after running 'sensors -s'!!!
168#
169# Here are some examples:
170#
171#       set in0_max vid*1.05
172#       set in0_min vid*0.95
173#       set temp1_over 40
174#       set temp1_hyst 37
175#
176# Think of tempx_over as 'alarm set' and tempx_hyst as 'alarm clear'
177# thresholds. In most cases the 'over' value should be higher than
178# the 'hyst' value by several degrees.
179#
180#
181# IGNORE LINES
182# ------------
183# Ignore statements tell certain features are not wanted. User programs can
184# still read them if they really want, though; this is just an advisory
185# marking. 'in0' would also invalidate 'in0_max' and 'in0_min'.
186# 'ignore' does not disable anything in the actual sensor chip; it
187# simply advises the user program to not access that data.
188#
189#       ignore in0
190#
191#
192# STATEMENT ORDER
193# ---------------
194# Statements can go in any order, EXCEPT that some statements depend
195# on others. Dependencies could be either in the library or the driver.
196# A 'compute' statement must go before a 'set' statement
197# for the same feature or else the 'set' won't be computed correctly.
198# This is a library dependency.
199# A 'set fan1_div' statement must go before a 'set fan1_min' statement,
200# because the driver uses the divisor in calculating the minimum.
201# Also, one should set vrm prior to using vid in any formula.
202#
203#
204# BUS LINES
205# ---------
206# There is one other feature: the 'bus' statement. An example is below.
207#
208#       bus "i2c-0" "SMBus PIIX4 adapter at e800" "Non-I2C SMBus adapter"
209#
210# If we refer from now on to 'i2c-0' in 'chip' lines, this will run-time
211# be matched to this bus. So even if the PIIX4 is called 'i2c-5' at that
212# moment, because five other adapters were detected first, 'i2c-0' in
213# the config file would always only match this physical bus. In the above
214# config file, this feature is not needed; but the next lines would
215# only affect the LM75 chips on the PIIX4 adapter:
216#
217#       chip "lm75-i2c-0-*"
218#
219# You should really use the output of /proc/bus/chips to generate bus lines,
220# because one mistyped characted will inhibit the match. Wildcards are not
221# yet supported; spaces at the end are ignored, though.
222#
223#
224##########################################################################
225#### Here begins the real configuration file
226
227
228chip "lm78-*" "lm78-j-*" "lm79-*" "w83781d-*"
229
230# These are as advised in the LM78 and LM79 data sheets, and used on almost
231# any mainboard we have seen.
232
233    label in0 "VCore 1"
234    label in1 "VCore 2"
235    label in2 "+3.3V"
236    label in3 "+5V"
237    label in4 "+12V"
238    label in5 "-12V"
239    label in6 "-5V"
240
241# For positive voltages (in3, in4), two resistors are used, with the following
242# formula (R1,R2: resistor values, Vs: read voltage, Vin: pin voltage)
243#   R1 = R2 * (Vs/Vin - 1)
244# For negative voltages (in5, in6) two resistors are used, with the following
245# formula (Rin,Rf: resistor values, Vs: read voltage, Vin: pin voltage)
246#   Rin = (Vs * Rf) / Vin
247#
248# Here are the official LM78 and LM79 data sheet values.
249#       Vs     R1,Rin   R2,Rf    Vin
250# in3   +5.0      6.8    10     +2.98
251# in4  +12.0     30      10     +3.00
252# in5  -12.0    240      60     +3.00
253# in6   -5.0    100      60     +3.00
254#
255# These would lead to these declarations:
256# compute in3 ((6.8/10)+1)*@ ,  @/((6.8/10)+1)
257# compute in4 ((30/10)+1)*@  ,  @/((30/10)+1)
258# compute in5 -(240/60)*@    ,  -@/(240/60)
259# compute in6 -(100/60)*@    ,  -@/(100/60)
260#
261# On almost any mainboard we have seen, the Winbond compute values lead to
262# much better results, though.
263#
264#       Vs     R1,Rin   R2,Rf    Vin
265# in4  +12.0     28      10     +3.00
266# in5  -12.0    210      60.4   +3.00
267# in6   -5.0     90.9    60.4   +3.00
268#
269# These leads to these declarations:
270
271    compute in3 ((6.8/10)+1)*@ ,  @/((6.8/10)+1)
272    compute in4 ((28/10)+1)*@  ,  @/((28/10)+1)
273    compute in5 -(210/60.4)*@  ,  -@/(210/60.4)
274    compute in6 -(90.9/60.4)*@ ,  -@/(90.9/60.4)
275
276# Here, we assume the VID readings are valid, and we use a max. 5% deviation
277
278    set in0_min vid*0.95
279    set in0_max vid*1.05
280    set in1_min vid*0.95
281    set in1_max vid*1.05
282    set in2_min 3.3 * 0.95
283    set in2_max 3.3 * 1.05
284    set in3_min 5.0 * 0.95
285    set in3_max 5.0 * 1.05
286    set in4_min 12 * 0.95
287    set in4_max 12 * 1.05
288    set in5_max -12 * 0.95
289    set in5_min -12 * 1.05
290    set in6_max -5 * 0.95
291    set in6_min -5 * 1.05
292
293# Examples for lm78, lm78j, lm79 temperature limits
294#    set temp_over 40
295#    set temp_hyst 37
296
297# Examples for w83781d temperature limits
298#    set temp1_over 40
299#    set temp1_hyst 37
300#    set temp2_over 52
301#    set temp2_hyst 47
302#    set temp3_over 52
303#    set temp3_hyst 47
304
305# Ignore fans you don't actually have
306#    ignore fan1
307#    ignore fan2
308#    ignore fan3
309
310# In case a lm78 is used together with a lm75, the lm78 temp sensor will
311# generally show the M/B temperature while the lm75 temp sensor will show
312# the CPU temperature.
313#    label temp "M/B Temp"
314
315
316chip "lm75-*"
317
318# Most boards don't need scaling. Following is
319# for the Asus TX97-E. If it doesn't work for you, feel free to complain.
320#   compute temp @*2.0, @/2.0
321
322# Examples for temperature limits
323#    set temp_over 70   
324#    set temp_hyst 65   
325
326# In case a lm75 is used together with a lm78, the lm78 temp sensor will
327# generally show the M/B temperature while the lm75 temp sensor will show
328# the CPU temperature.
329#    label temp "CPU Temp"
330
331
332chip "sis5595-*"
333
334    label in0 "VCore 1"
335    label in1 "VCore 2"
336    label in2 "+3.3V"
337    label in3 "+5V"
338    label in4 "+12V"
339
340    compute in3 ((6.8/10)+1)*@ ,  @/((6.8/10)+1)
341    compute in4 ((28/10)+1)*@  ,  @/((28/10)+1)
342
343    set in0_min 2.0 * 0.95
344    set in0_max 2.0 * 1.05
345    set in1_min 2.0 * 0.95
346    set in1_max 2.0 * 1.05
347    set in2_min 3.3 * 0.95
348    set in2_max 3.3 * 1.05
349    set in3_min 5.0 * 0.95
350    set in3_max 5.0 * 1.05
351    set in4_min 12 * 0.95
352    set in4_max 12 * 1.05
353
354#
355# SiS5595 temperature calculation
356# The driver currently includes a calculation due to the wide
357# variation in thermistor types on SiS5595 motherboards.
358# The driver currently has a calculation of t = (.83x + 52.12).
359# One user reports the correct formula of t = (.345x - 12).
360# So you want to put a compute line in sensors.conf that has
361# the inverse of the driver formula, and put your formula on top of it.
362# The inverse of the driver formula is x = (1.20t - 62.77)
363# So the final formula is newt = (.345(1.20t - 62.77)) - 12).
364# Put this in the sensors.conf file as
365# compute temp ((.345 * ((1.20 * @) - 62.77)) - 12), ...
366# where ... is the inverse function I leave to you.
367#
368# Look in your 'Vendor.ini' file to see which one is present
369# on your motherboard. Look for the line like:
370#       [Temp1]
371#            ThermistorType     = NTC-10KC15-1608-1P
372# Fix up a 'compute' line to match your thermistor type.
373# Warning. You still don't have enough information to do this.
374#            ThermistorType     = NTC-10KC15-1608-1P (10K at 25C; Beta = 3435)
375#   compute temp ((X * ((1.20 * @) - 62.77)) - Y), ...
376#            ThermistorType     = NTC-103KC15-1608-1P  (??)
377#   compute temp ((X * ((1.20 * @) - 62.77)) - Y), ...
378#            ThermistorType     = NTC-103AT-2 (10K at 25C; Beta = 3435)
379#   compute temp ((X * ((1.20 * @) - 62.77)) - Y), ...
380#            ThermistorType     = NTC-103JT   (10K at 25C; Beta = 3435)
381#   compute temp ((X * ((1.20 * @) - 62.77)) - Y), ...
382
383# examples for sis5595 temperature limits;
384# for sis5595, temp_hyst is really the low limit, not a hysteresis value
385#    set temp_over 40
386#    set temp_hyst 37
387
388
389chip "w83782d-*" "w83627hf-*"
390
391# Same as above for w83781d except that in5 and in6 are computed differently.
392# Rather than an internal inverting op amp, the 82d/83s use standard positive
393# inputs and the negative voltages are level shifted by a 3.6V reference.
394# The math is convoluted, so we hope that your motherboard
395# uses the recommended resistor values.
396
397    label in0 "VCore 1"
398    label in1 "VCore 2"
399    label in2 "+3.3V"
400    label in3 "+5V"
401    label in4 "+12V"
402    label in5 "-12V"
403    label in6 "-5V"
404    label in7 "V5SB"
405    label in8 "VBat"
406
407    compute in3 ((6.8/10)+1)*@ ,  @/((6.8/10)+1)
408    compute in4 ((28/10)+1)*@  ,  @/((28/10)+1)
409    compute in5 (5.14 * @) - 14.91  ,  (@ + 14.91) / 5.14
410    compute in6 (3.14 * @) -  7.71  ,  (@ +  7.71) / 3.14
411    compute in7 ((6.8/10)+1)*@ ,  @/((6.8/10)+1)
412
413# adjust this if your vid is wrong; see doc/vid
414#   set vrm 9.0
415
416# set limits to  5% for the critical voltages
417# set limits to 10% for the non-critical voltages
418# set limits to 20% for the battery voltage
419
420    set in0_min vid*0.95
421    set in0_max vid*1.05
422    set in1_min vid*0.95
423    set in1_max vid*1.05
424    set in2_min 3.3 * 0.95
425    set in2_max 3.3 * 1.05
426    set in3_min 5.0 * 0.95
427    set in3_max 5.0 * 1.05
428    set in4_min 12 * 0.90
429    set in4_max 12 * 1.10
430    set in5_max -12 * 0.90
431    set in5_min -12 * 1.10
432    set in6_max -5 * 0.95
433    set in6_min -5 * 1.05
434    set in7_min 5 * 0.95
435    set in7_max 5 * 1.05
436    set in8_min 3.0 * 0.80
437    set in8_max 3.0 * 1.20
438
439# set up sensor types (thermistor is default)
440# 1 = PII/Celeron Diode; 2 = 3904 transistor;
441# 3435 = thermistor with Beta = 3435
442# If temperature changes very little, try 1 or 2.
443#   set sensor1 1
444#   set sensor2 2
445#   set sensor3 3435
446
447# examples for temperature limits
448#    set temp1_over 40
449#    set temp1_hyst 37
450#    set temp2_over 52
451#    set temp2_hyst 47
452#    set temp3_over 52
453#    set temp3_hyst 47
454
455
456chip "w83783s-*"
457
458# Same as above for w83781d except that in5 and in6 are computed differently.
459# Rather than an internal inverting op amp, the 82d/83s use standard positive
460# inputs and the negative voltages are level shifted by a 3.6V reference.
461# The math is convoluted, so we hope that your motherboard
462# uses the recommended resistor values.
463
464    label in0 "VCore 1"
465    label in2 "+3.3V"
466    label in3 "+5V"
467    label in4 "+12V"
468    label in5 "-12V"
469    label in6 "-5V"
470
471    compute in3 ((6.8/10)+1)*@ ,  @/((6.8/10)+1)
472    compute in4 ((28/10)+1)*@  ,  @/((28/10)+1)
473    compute in5 (5.14 * @) - 14.91  ,  (@ + 14.91) / 5.14
474    compute in6 (3.14 * @) -  7.71  ,  (@ +  7.71) / 3.14
475
476# adjust this if your vid is wrong; see doc/vid
477#   set vrm 9.0
478
479# set limits to  5% for the critical voltages
480# set limits to 10% for the non-critical voltages
481# set limits to 20% for the battery voltage
482
483    set in0_min vid*0.95
484    set in0_max vid*1.05
485    set in2_min 3.3 * 0.95
486    set in2_max 3.3 * 1.05
487    set in3_min 5.0 * 0.95
488    set in3_max 5.0 * 1.05
489    set in4_min 12 * 0.90
490    set in4_max 12 * 1.10
491    set in5_max -12 * 0.90
492    set in5_min -12 * 1.10
493    set in6_max -5 * 0.95
494    set in6_min -5 * 1.05
495
496# set up sensor types (thermistor is default)
497# 1 = PII/Celeron Diode; 2 = 3904 transistor;
498# 3435 = thermistor with Beta = 3435
499# If temperature changes very little, try 1 or 2.
500#   set sensor1 1
501#   set sensor2 2
502
503# examples for temperature limits
504#    set temp1_over 40
505#    set temp1_hyst 37
506#    set temp2_over 52
507#    set temp2_hyst 47
508
509
510chip "w83697hf-*"
511
512# Same as above for w83781d except that in5 and in6 are computed differently.
513# Rather than an internal inverting op amp, the 82d/83s use standard positive
514# inputs and the negative voltages are level shifted by a 3.6V reference.
515# The math is convoluted, so we hope that your motherboard
516# uses the recommended resistor values.
517
518# no in1 on this chip.
519
520    label in0 "VCore"
521    label in2 "+3.3V"
522    label in3 "+5V"
523    label in4 "+12V"
524    label in5 "-12V"
525    label in6 "-5V"
526    label in7 "V5SB"
527    label in8 "VBat"
528
529    compute in3 ((6.8/10)+1)*@ ,  @/((6.8/10)+1)
530    compute in4 ((28/10)+1)*@  ,  @/((28/10)+1)
531    compute in5 (5.14 * @) - 14.91  ,  (@ + 14.91) / 5.14
532    compute in6 (3.14 * @) -  7.71  ,  (@ +  7.71) / 3.14
533    compute in7 ((6.8/10)+1)*@ ,  @/((6.8/10)+1)
534
535# 697HF does not have VID inputs so you MUST set your core
536# voltage limits below. Currently set for 1.8V core.
537#               vvv
538
539    set in0_min 1.8 * 0.95
540    set in0_max 1.8 * 1.05
541
542    set in2_min 3.3 * 0.95
543    set in2_max 3.3 * 1.05
544    set in3_min 5.0 * 0.95
545    set in3_max 5.0 * 1.05
546    set in4_min 12 * 0.90
547    set in4_max 12 * 1.10
548    set in5_max -12 * 0.90
549    set in5_min -12 * 1.10
550    set in6_max -5 * 0.95
551    set in6_min -5 * 1.05
552    set in7_min 5 * 0.95
553    set in7_max 5 * 1.05
554    set in8_min 3.0 * 0.80
555    set in8_max 3.0 * 1.20
556
557# set up sensor types (thermistor is default)
558# 1 = PII/Celeron Diode; 2 = 3904 transistor;
559# 3435 = thermistor with Beta = 3435
560# If temperature changes very little, try 1 or 2.
561#   set sensor1 1
562#   set sensor2 2
563#   set sensor3 3435
564
565# examples for temperature limits
566#    set temp1_over 40
567#    set temp1_hyst 37
568#    set temp2_over 52
569#    set temp2_hyst 47
570#    set temp3_over 52
571#    set temp3_hyst 47
572
573
574chip "w83627thf-*"
575
576# Rather than an internal inverting op amp, the 627thf uses standard positive
577# inputs and the negative voltages are level shifted by a 3.6V reference
578# (same as 82d/83s).
579# The math is convoluted, so we hope that your motherboard
580# uses the recommended resistor values.
581# Note that in1 (+12V) is the usual in4, and in4 (-12V) is the usual in5.
582# Data sheet is obviously wrong for in4, the usual formula should work.
583# No in5 nor in6.
584
585    label in0 "VCore"
586    label in1 "+12V"
587    label in2 "+3.3V"
588    label in3 "+5V"
589    label in4 "-12V"
590    label in7 "V5SB"
591    label in8 "VBat"
592
593# Mori Hiroyuki reported to need this (P4P800)
594#   compute in0 @/2, @*2
595
596    compute in1 ((28/10)+1)*@, @/((28/10)+1)
597    compute in3 ((34/51)+1)*@, @/((34/51)+1)
598    compute in4 (5.14*@)-14.91, (@+14.91)/5.14
599    compute in7 ((6.8/10)+1)*@ ,  @/((6.8/10)+1)
600
601# adjust this if your vid is wrong; see doc/vid
602#   set vrm 9.0
603
604# set limits to  5% for the critical voltages
605# set limits to 10% for the non-critical voltages
606# set limits to 20% for the battery voltage
607# if your vid is wrong, you'll need to adjust in0_min and in0_max
608
609    set in0_min vid * 0.95
610    set in0_max vid * 1.05
611    set in1_min 12 * 0.90
612    set in1_max 12 * 1.10
613    set in2_min 3.3 * 0.95
614    set in2_max 3.3 * 1.05
615    set in3_min 5.0 * 0.95
616    set in3_max 5.0 * 1.05
617    set in4_min -12 * 0.90
618    set in4_max -12 * 1.10
619    set in7_min 5 * 0.95
620    set in7_max 5 * 1.05
621    set in8_min 3.0 * 0.80
622    set in8_max 3.0 * 1.20
623
624# set up sensor types (thermistor is default)
625# 1 = PII/Celeron Diode; 2 = 3904 transistor;
626# 3435 = thermistor with Beta = 3435
627# If temperature changes very little, try 1 or 2.
628#   set sensor1 1
629#   set sensor2 2
630#   set sensor3 3435
631
632    label temp1 "M/B Temp"
633    label temp2 "CPU Temp"
634#   ignore temp3
635
636# examples for temperature limits
637#    set temp1_over 40
638#    set temp1_hyst 37
639#    set temp2_over 52
640#    set temp2_hyst 47
641#    set temp3_over 52
642#    set temp3_hyst 47
643
644#   ignore fan1
645    label fan2 "CPU Fan"
646#   ignore fan3
647
648
649chip "as99127f-*"
650
651# Asus won't release a datasheet so this is guesswork.
652# Thanks to Guntram Blohm, Jack, Ed Harrison, Artur Gawryszczak,
653# Victor G. Marimon and others for their feedback.
654
655# Dual power plane
656    label in0 "VCore 1"
657    label in1 "VCore 2"
658# Single power plane (A7V133, A7M266)
659#   label in0 "VCore"
660#   ignore in1
661
662    label in2 "+3.3V"
663    label in3 "+5V"
664    label in4 "+12V"
665# These last two may not make sense on all motherboards.
666    label in5 "-12V"
667    label in6 "-5V"
668
669    compute in3 ((6.8/10)+1)*@ ,  @/((6.8/10)+1)
670    compute in4 ((28/10)+1)*@  ,  @/((28/10)+1)
671# AS99127F rev.1 (same as w83781d)
672    compute in5 -(240/60.4)*@ ,  -@/(240/60.4)
673    compute in6 -(90.9/60.4)*@ ,  -@/(90.9/60.4)
674# AS99127F rev.2 (same as w83782d)
675#   compute in5 (5.14 * @) - 14.91 , (@ + 14.91) / 5.14
676#   compute in6 (3.14 * @) -  7.71 , (@ +  7.71) / 3.14
677# ASB100 Bach (contributed by Alex van Kaam)
678#   compute in5 -(240/60.4)*@  ,  -@/(240/60.4)
679#   compute in6 -(5/3)*@       ,  -@/(5/3)
680
681# Depending on your motherboard, you have to choose between three formulae
682# for temp2. Quoting Artur Gawryszczak:
683# "I guess, that the formula "temp2 (@*30/43)+25, (@-25)*43/30" is correct
684# for those Asus motherboards, which get CPU temperature from internal
685# thermal diode (Pentium Coppermine, and above), and "temp2 @*2.0, @/2.0"
686# is correct for Athlon/Duron boards, which use a thermistor in the
687# socket."
688# The third formula was found and reported by Victor G. Marimon.
689# Asus CUV4X, Asus A7V8X
690#   compute temp2 (@*30/43)+25, (@-25)*43/30
691# Asus A7V133, Asus A7M266
692    compute temp2 @*2.0, @/2.0
693# Asus CUSL2, Asus CUV266-DLS
694#   compute temp2 (@*60/43)+25, (@-25)*43/60
695
696# See comments above if temp3 looks bad. What works for temp2 is likely
697# to work for temp3.
698    compute temp3 @*2.0, @/2.0
699
700# ASB100's temp4 isn't supported by the w83781d driver.
701
702# Most Asus boards have temperatures settled like that:
703    label temp1 "M/B Temp"
704    label temp2 "CPU Temp"
705# However, some A7N8X boards (Deluxe rev.2, -X) have them swapped:
706#   label temp1 "CPU Temp"
707#   label temp2 "M/B Temp"
708# If you know other boards where they are swapped, let us know and
709# we'll update the list.
710
711# adjust this if your vid is wrong; see doc/vid
712#   set vrm 9.0
713
714# set limits to  5% for the critical voltages
715# set limits to 10% for the non-critical voltages
716# set limits to 20% for the battery voltage
717
718    set in0_min vid*0.95
719    set in0_max vid*1.05
720    set in1_min vid*0.95
721    set in1_max vid*1.05
722    set in2_min 3.3 * 0.95
723    set in2_max 3.3 * 1.05
724    set in3_min 5.0 * 0.95
725    set in3_max 5.0 * 1.05
726    set in4_min 12 * 0.90
727    set in4_max 12 * 1.10
728    set in5_max -12 * 0.90
729    set in5_min -12 * 1.10
730    set in6_max -5 * 0.95
731    set in6_min -5 * 1.05
732
733# examples for temperature limits
734#    set temp1_over 40
735#    set temp1_hyst 37
736#    set temp2_over 52
737#    set temp2_hyst 47
738#    set temp3_over 52
739#    set temp3_hyst 47
740
741# The A7N8X-X board is known to need this:
742# (reported by Roberto Sebastiano <robs@multiplayer.it>)
743#    compute fan1  @/2,  2*@
744
745
746chip "gl518sm-*"
747
748# IMPORTANT: in0, in1, and in2 values (+5, +3, and +12) CANNOT be read
749#            unless you use the slow 'iterate' method. Limits will still
750#            work even when iterate=0. See ../doc/chips/gl518sm.
751#
752# Factors and labels taken from GL518SM datasheet, they seem to give
753# reasonable values with EISCA connected Fan78
754
755  label vdd "+5V"
756  label vin1 "+3.3V"
757  label vin2 "+12V"
758  label vin3 "Vcore"
759
760# vin2 depends on external resistors (4,7k and 15k assumed here)
761# vin1 and vin3 require no scaling
762
763  compute vin2 (197/47)*@  ,  @/(197/47)
764
765  set vdd_min 4.8
766  set vdd_max 5.2
767  set vin1_min 3.20
768  set vin1_max 3.40
769  set vin2_min 11.0
770  set vin2_max 13.0
771  set vin3_min 2.10
772  set vin3_max 2.30
773  set fan1_off 0
774  set fan2_min 0
775# set iterate 2
776
777
778chip "gl520sm-*"
779
780# Factors and labels taken from GL520SM datasheet
781
782  label vdd "+5V"
783  label vin1 "+3.3V"
784  label vin2 "+12V"
785  label vin3 "Vcore"
786  label vin4 "-12V"
787
788# vin1 and vin3 require no scaling
789# vin2 depends on external resistors (4,7k and 15k assumed)
790
791# vin4 = ((R1+R2)/R2)*@ - (R1/R2)*vdd
792#
793#       -12 --| R1 |---t---| R2 |-- +5
794#                      |
795#                    vin4
796#
797
798  compute vin2 (197/47)*@  ,  @/(197/47)
799  compute vin4 (5*@)-(4*vdd) , (@+4*vdd)/5
800
801  set vdd_min 4.8
802  set vdd_max 5.2
803  set vin1_min 3.20
804  set vin1_max 3.40
805  set vin2_min 11.0
806  set vin2_max 13.0
807  set vin3_min 2.10
808  set vin3_max 2.30
809  set two_temps 1
810
811
812chip "lm80-*"
813
814# The values below should be correct if you own a qdi BX (brilliant1)
815# mainboard. If not, please contact us, so we can figure out better readings.
816# Many thanks go to Peter T. Breuer <ptb@it.uc3m.es> for helping us figure
817# out how to handle the LM80.
818
819# For positive voltages (in0..in4), two resistors are used, with the following
820# formula (R1,R2: resistor values, Vs: read voltage, Vin: pin voltage)
821#   R1 = R2 * (Vs/Vin - 1)
822# For negative voltages (in5, in6) two resistors are used, with the following
823# formula (R3,R4: resistor values, Vs: read voltage, Vin: pin voltage,
824# V5: +5V)
825#   R3 = R4 * (Vs - Vin) / (Vin - V5)
826
827# Here are the official LM78 and LM79 data sheet values.
828#       Vs      R1,R3   R2,R4    Vin
829#       +2.5V    23.7    75     +1.9
830#       +3.3V    22.1    30     +1.9
831#       +5.0     24      14.7   +1.9
832#      +12.0    160      30.1   +1.9
833#      -12.0    160      35.7   +1.9
834#       -5.0     36      16.2   +1.9
835
836# Now curiously enough, VCore is connected with (unknown) resistors, which
837# translate a +2.8V to +1.9V. So we use that in the computations below.
838
839    label in0 "+5V"
840    label in1 "VTT"
841    label in2 "+3.3V"
842    label in3 "+Vcore"
843    label in4 "+12V"
844    label in5 "-12V"
845    label in6 "-5V"
846
847    compute in0 (24/14.7 + 1) * @ ,       @ / (24/14.7 + 1)
848    compute in2 (22.1/30 + 1) * @ ,       @ / (22.1/30 + 1)
849    compute in3 (2.8/1.9) * @,            @ * 1.9/2.8
850    compute in4 (160/30.1 + 1) * @,       @ / (160/30.1 + 1)
851    compute in5 (160/35.7)*(@ - in0) + @, (@ + in0 * 160/35.7)/ (1 + 160/35.7)
852    compute in6 (36/16.2)*(@ - in0) + @,  (@ + in0 * 36/16.2) / (1 + 36/16.2)
853
854    set in0_min 5 * 0.95
855    set in0_max 5 * 0.95
856# What is your VTT? It is probably not this value...
857    set in1_min 2*0.95
858    set in1_max 2*1.05
859    set in2_min 3.3 * 0.95
860    set in2_max 3.3 * 1.05
861# What is your VCore? It is probably not this value...
862    set in3_min 1.9 * 0.95
863    set in3_max 1.9 * 1.05
864    set in4_min 12 * 0.95
865    set in4_max 12 * 1.05
866    set in5_min -12 * 1.05
867    set in5_max -12 * 0.95
868    set in6_min -5 * 1.05
869    set in6_max -5 * 0.95
870
871# examples for lm80 temperature limits
872# WARNING - nonstandard names and functions for the lm80!!!
873# All 4 of these limits apply to the single temperature sensor.
874# "hot" is like the standard alarm for most chips.
875# "os" is the threshold for the overtemperature shutdown output.
876# "os" may or may not do anything on your motherboard but it should
877#  be set higher than the "hot" thresholds.
878# Note that the /proc file 'temp" also has five entries instead of
879# the usual three.
880#    set temp_hot_hyst 45
881#    set temp_hot_max  52
882#    set temp_os_hyst  57
883#    set temp_os_max   62
884
885
886chip "maxilife-cg-*" "maxilife-co-*" "maxilife-as-*"
887
888   label fan1  "HDD Fan"
889   label fan2  "PCI Fan"
890   label fan3  "CPU Fan"
891   ignore fan4
892
893   label temp2 "PCI Temp"
894   label temp4 "HDD Temp"
895   label temp5 "CPU Temp"
896   ignore temp6
897
898   label vid1  "V+12"
899   ignore vid5
900
901# vid1 need to be scaled by 6.337 other voltages
902# require no scaling
903
904   compute vid1 6.337*@ , @/6.337
905
906
907chip "maxilife-cg-*"
908
909   ignore temp1
910   label temp3  "BX Temp"
911
912   label vid2   "Vcpu1"
913   label vid3   "Vcpu2"
914   ignore vid4
915
916
917chip "maxilife-co-*"
918
919   label temp1  "CPU 1 Temp"
920   label temp3  "CPU 2 Temp"
921
922   label vid2   "Vcpu1"
923   label vid3   "Vcpu2"
924   label vid4   "VcacheL2"
925
926
927chip "maxilife-as-*"
928
929   ignore temp1
930   ignore temp3
931
932   label vid2   "Vcpu"
933   ignore vid3
934   ignore vid4
935
936
937chip "maxilife-nba-*"
938
939   label fan1  "CPU Fan"
940   label fan2  "PCI Fan"
941   label fan3  "HDD Fan"
942   label fan4  "Heat Sink Fan"
943
944   label temp1  "CPU 1 Temp"
945   label temp2  "CPU 2 Temp"
946   label temp3  "PCI/Ambient Temp"
947   label temp4  "HDD Temp"
948   label temp5  "Motherboard Temp"
949   label temp6  "CPU Reference Temp"
950
951   label vid1  "V+12"
952   label vid2  "Vcpu1"
953   label vid3  "Vcpu2"
954   label vid4  "VcacheL2"
955   label vid5  "V-12"
956
957
958chip "via686a-*"
959
960# VIA is very specific about the voltage sensor inputs, and our labels
961# reflect what they say.  Unfortunately, they are not at all specific about
962# how to convert any of the register values to real units.  Fortunately,
963# Jonathan Yew <j.teh@iname.com> and Alex van Kaam <darkside@chello.nl>
964# came through with some data for temp conversion and formulae for voltage
965# conversion. However, the conversions should be regarded as our best guess-
966# YMMV.
967
968# On the Tyan S1598, the 2.5V sensor reads 0 and is not displayed in the BIOS.
969# Linas Vepstas <linas@linas.org> reports that this sensor shows nothing of
970# interest on the Abit KA7 (Athlon), and is also not displayed in the BIOS.
971# Likewise, Johannes Drechsel-Burkhard <jdb@chello.at> reports that this
972# sensor is unavailable in the BIOS of his MSI K7T Pro (Thunderbird).  So,
973# if you have one of these boards you may want to uncomment the 'ignore 2.5V'
974# line below.
975
976    label "2.0V" "CPU core"
977    label "2.5V" "+2.5V"
978    #ignore "2.5V"
979    label "3.3V" "I/O"
980    label "5.0V" "+5V"
981    label "12V" "+12V"
982
983    label fan1  "CPU Fan"
984    label fan2  "P/S Fan"
985
986# VIA suggests that temp3 is an internal temp sensor for the 686a.  However,
987# on the Tyan S1598 as well as the Abit KA7 (Athalon), the absolute values
988# of the readings from that sensor are not valid.  The readings do seem to
989# correlate with temp changes, but the conversion factor may be quite
990# different from temp1 & temp2 (as noted above, VIA has not provided
991# conversion info).  So, you may wish to 'ignore temp3'.
992
993# Johannes Drechsel-Burkhard <jdb@chello.at> notes that on his MSI K7T Pro,
994# temp1 is the CPU temp and temp2 is the SYS temp.
995
996    label temp1 "SYS Temp"
997    label temp2 "CPU Temp"
998    label temp3 "SBr Temp"
999    #ignore temp3
1000
1001# Set your CPU core limits here.  For the other voltage sensors, the
1002# built-in defaults should be fine.
1003
1004    set in0_min 2.0
1005    set in0_max 2.5
1006
1007# Set your temp limits here.  Remember, 'tempX_over' is the temp at which an
1008# alarm is triggered, and 'tempX_hyst' is the temp at which an alarm turns off.
1009# Setting tempX_hyst to a few degrees below the corresponding tempX_over
1010# prevents an oscillation between alarm on and off states.  This kind of
1011# oscillation is known as hyteresis, thus the name.  (You typically get the
1012# most serious and troublesome hysteresis when a sensor triggers something to
1013# reduce the temp, thus creating a negative feedback loop.  Even without that,
1014# we would still get some oscillation when the temp hovers around the limit
1015# due to noise.)
1016
1017    set temp1_hyst 40
1018    set temp1_over 45
1019    set temp2_hyst 55
1020    set temp2_over 60
1021    set temp3_hyst 60
1022    set temp3_over 65
1023
1024# You could set your fan limits too, but the defaults should be fine.
1025
1026    #set fan1_min 5000
1027    #set fan2_min 5000
1028
1029# For at least one Tyan S1598, the following corrections make the sensors
1030# readings more in-line with the BIOS readings on boot.  Try these, and
1031# adjust as necessary.
1032
1033  #compute "2.0V" 1.02*@ ,  @/1.02
1034  #compute "3.3V" 1.02*@  ,  @/1.02
1035  #compute "5.0V" 1.009*@  ,  @/1.009
1036  #compute "12V" 1.04*@ ,  @/1.04
1037
1038
1039chip "mtp008-*"
1040
1041# The values below should be correct if you own a Tyan S1834D motherboard.
1042# If not, please contact us, so we can figure out better readings.
1043# FOR TYAN S2510 SEE END OF THIS SECTION.
1044
1045# For positive voltages outside the 0..4.09V range (in2..in4), two resistors
1046# are used, with the following formula (R1,R2: resistor values, Vs: read
1047# voltage, Vin: pin voltage)
1048#   Vin = Vs * (R2 / (R1 + R2))
1049# For negative voltages (in5) two resistors are used, with the following
1050# formula (R3,R4: resistor values, Vs: read voltage, Vin: pin voltage)
1051#   Vin = ((4.096 - Vs) * (R3 / (R3 + R4))) + Vs
1052
1053# Here are the official MTP008 data sheet values:
1054#       Vs      R1,R3   R2,R4    Vin
1055#      +12.0    28000   10000   +3.16
1056#      -12.0   232000   56000   +0.96
1057#       -5.0   120000   56000   +1.20
1058
1059    label in0 "VCore1"
1060    label in1 "+3.3V"
1061    label in2 "+12V"
1062    label in3 "Vcore2"
1063    ignore in4
1064    label in5 "-12V"
1065    label in6 "Vtt"
1066
1067    label fan1 "CPU1 Fan"
1068    label fan2 "CPU2 Fan"
1069    label fan3 "fan3"
1070
1071    label temp1 "CPU1 Temp"
1072    label temp2 "CPU2 Temp"
1073    ignore temp3
1074
1075    compute in2 @ * 38 / 10,            @ * 10 / 38
1076    compute in5 (@ * 36 - 118.61) / 7,  (118.61 + 7 * @) / 36
1077
1078# examples for temperature limits
1079#    set temp1_over 40
1080#    set temp1_hyst 37
1081#    set temp2_over 52
1082#    set temp2_hyst 47
1083#    set temp3_over 52
1084#    set temp3_hyst 47
1085
1086# End of standard mtp008 configuration
1087
1088# TYAN S2510 INFORMATION
1089# This motherboard has two mtp008's which are hooked up differently,
1090# so they must be configured separately.
1091# For this motherboard, COMMENT OUT the above mtp008 section and
1092# UNCOMMENT the following two sections.
1093#
1094#chip "mtp008-i2c-*-2c"
1095#    label in0 "VCore1"
1096#    set in0_min 1.60
1097#    set in0_max 1.80
1098#    label in1 "+3.3V"
1099#    label in2 "+12V"
1100#    label in3 "Vcore2"
1101#    set in3_min 1.60
1102#    set in3_max 1.80
1103#    ignore in4
1104#    label in5 "-12V"
1105#    label in6 "Vtt"
1106#    label fan1 "CPU1 Fan"
1107#    label fan2 "CPU2 Fan"
1108#    label fan3 "fan3"
1109#    label temp1 "CPU1 Temp"
1110#    label temp2 "CPU2 Temp"
1111#    ignore temp3
1112#    compute in2 @ * 38 / 10,           @ * 10 / 38
1113#    compute in5 (@ * 36 - 118.61) / 7, (118.61 + 7 * @) / 36
1114#
1115#chip "mtp008-i2c-*-2e"
1116#    ignore in0
1117#    label in1 "+3.3V"
1118#    ignore in2
1119#    label in3 "+5V"
1120#    set in3_min 4.50
1121#    set in3_max 5.50
1122#    ignore in4
1123#    label in5 "+3.3V"
1124#    ignore in6
1125#    label fan1 "fan4"
1126#    label fan2 "fan5"
1127#    label fan3 "fan6"
1128#    ignore temp1
1129#    label temp2 "MB Temp"
1130#    set temp2_over 52
1131#    set temp2_hyst 47
1132#    ignore temp3
1133
1134chip "adm1025-*"
1135
1136# The ADM1025 has integrated scaling resistors, rather
1137# than external resistors common to most sensor devices.
1138# These apply to the 6 voltage inputs in0-in5 (+2.5V, VCore,
1139# +3.3V, +5V, +12V, VCC). As the scaling is fixed inside
1140# the chip for these inputs, it is fairly certain that the
1141# motherboard connections match these labels, and that the
1142# driver computations are correct. Therefore they do not need to
1143# be overridden here.
1144
1145    label in0 "+2.5V"
1146    label in1 "VCore"
1147    label in2 "+3.3V"
1148    label in3 "+5V"
1149    label in4 "+12V"
1150    label in5 "VCC"
1151
1152# Depending on how your chipset is hardwired, you may or may not have
1153# +12V readings (will show as 0.0V if you don't have it).
1154#   ignore in4
1155
1156# VCC is the power-supply voltage of the ADM1025 chipset, generally
1157# redundant with +3.3V so you may want to hide it.
1158#   ignore in5
1159
1160    label temp1 "CPU Temp"
1161    label temp2 "M/B Temp"
1162
1163# adjust this if your vid is wrong; see doc/vid
1164    set vrm 9.0
1165
1166# Tolerate a 5% deviance for CPU power-supply (default is 10%)
1167    set in1_min vid * 0.95
1168    set in1_max vid * 1.05
1169
1170chip "lm87-*"
1171#
1172# The LM87 has integrated scaling resistors, rather
1173# than external resistors common to most sensor devices.
1174# These apply to the first 6 voltage inputs in0-in5
1175# (+2.5, Vccp1, +3.3, +5, 12, +Vccp2). As the scaling is fixed inside
1176# the chip for these inputs, it is fairly certain that the
1177# motherboard connections match these labels, and that the
1178# driver computations are correct. Therefore they do not need to
1179# be overridden here.
1180#
1181# Note: AIN1 (-12?), AIN2 (-5?) and CPU2_temp require changing
1182# #defines in the driver and recompiling!!!
1183#
1184# This chip has non-standard entries in lib/chips.c so
1185# the feature names are quite different from other chips.
1186# For this chip, libsensors anticipates the correct labeling.
1187# This is great if it's correct but makes it a little more
1188# difficult if you want to change it.
1189#
1190# This may not have been a good idea, so it may be changed in the future.
1191# Here is an entry with everything commented out so you can
1192# uncomment the appropriate line if you want to change it.
1193#
1194# Warning - feature names starting with a number must be enclosed
1195# with double quotes.
1196#
1197# It is unlikely you will need to use the following 6 lines (see above)
1198#   label "2.5V" "xxx"
1199#   label Vccp1 "xxx"
1200#   label "3.3V" "xxx"
1201#   label "5V" "xxx"
1202#   label "12V" "xxx"
1203#   label Vccp2 "xxx"
1204
1205#   label fan1 "xxx"
1206#   label fan2 "xxx"
1207#   label temp1 "xxx"
1208#   label CPU_Temp "xxx"
1209#   label CPU2_Temp "xxx"
1210#
1211#   set AmbTemp_min xxx
1212#   set Vccp1_min xxx
1213#   set "3.3V_min" xxx
1214#   set "5V_min" xxx
1215#   set "12V_min" xxx
1216#   set Vccp2_min xxx
1217#
1218#   set AmbTemp_max xxx
1219#   set Vccp1_max xxx
1220#   set "3.3V_max" xxx
1221#   set "5V_max" xxx
1222#   set "12V_max" xxx
1223#   set Vccp2_max xxx
1224#
1225#   set fan1_div xxx
1226#   set fan2_div xxx
1227#   set fan1_min xxx
1228#   set fan2_min xxx
1229#   set temp1_min xxx
1230#   set temp1_max xxx
1231#   set temp2_min xxx
1232#   set temp2_max xxx
1233#   set temp3_min xxx
1234#   set temp3_max xxx
1235
1236# It is unlikely you will need to use the following 6 lines (see above)
1237#   compute "2.5V" xxx
1238#   compute Vccp1 xxx
1239#   compute "3.3V" xxx
1240#   compute "5V" xxx
1241#   compute "12V" xxx
1242#   compute Vccp2 xxx
1243
1244#   compute temp1 xxx
1245#   compute CPU_Temp xxx
1246#   compute CPU2_Temp xxx
1247
1248# LM87 AIN1 and AIN2 Section
1249# As described above, the driver must be recompiled to use either or
1250# both of these. -12 and -5 may be reversed on your board, this is
1251# just a guess, the datasheet gives no guidance.
1252#   label AIN1 "-12V"
1253#   label AIN2 "-5V"
1254#   set AIN1_min -12 * 0.95
1255#   set AIN2_min -5 * 0.95
1256#   set AIN1_max -12 * 1.05
1257#   set AIN2_max -5 * 0.95
1258#   compute AIN1 (7.50 * @) - 21.45  ,  (@ + 21.45) / 7.50
1259#   compute AIN2 (4.05 * @) - 10.07  ,  (@ + 10.07) / 4.05
1260
1261chip "adm9240-*" "ds1780-*" "lm81-*"
1262#
1263# These chips have non-standard entries in lib/chips.c so
1264# the feature names are quite different from other chips.
1265# For these chips, libsensors anticipates the correct labeling.
1266# This is great if it's correct but makes it a little more
1267# difficult if you want to change it.
1268#
1269# This may not have been a good idea, so it may be changed in the future.
1270# Here is an entry with everything commented out so you can
1271# uncomment the appropriate line if you want to change it.
1272#
1273# Warning - feature names starting with a number must be enclosed
1274# with double quotes.
1275#
1276#   label "2.5V" "xxx"
1277#   label Vccp1 "xxx"
1278#   label "3.3V" "xxx"
1279#   label "5V" "xxx"
1280#   label "12V" "xxx"
1281#   label Vccp2 "xxx"
1282#   label fan1 "xxx"
1283#   label fan2 "xxx"
1284#   label temp "xxx"
1285#
1286#   set Vccp1_min xxx
1287#   set "2.5V_min" xxx
1288#   set "3.3V_min" xxx
1289#   set "5V_min" xxx
1290#   set "12V_min" xxx
1291#   set Vccp2_min xxx
1292#
1293#   set Vccp1_max xxx
1294#   set "2.5V_max" xxx
1295#   set "3.3V_max" xxx
1296#   set "5V_max" xxx
1297#   set "12V_max" xxx
1298#   set Vccp2_max xxx
1299#
1300#   set fan1_div xxx
1301#   set fan2_div xxx
1302#   set fan1_min xxx
1303#   set fan2_min xxx
1304#   set temp1_hyst xxx
1305#   set temp1_over xxx
1306
1307#   compute "2.5V" xxx
1308#   compute Vccp1 xxx
1309#   compute "3.3V" xxx
1310#   compute "5V" xxx
1311#   compute "12V" xxx
1312#   compute Vccp2 xxx
1313#   compute temp xxx
1314
1315chip "adm1024-*"
1316#
1317# These settings work for me, adjust for your system
1318#
1319    label fan1 "CPU1 fan"
1320    label fan2 "CPU2 fan"
1321    label temp "SYS Temp"
1322    label temp1 "CPU2 Temp"
1323    label temp2 "CPU1 Temp"
1324    ignore "2.5V" # This register is also used for temp2
1325    ignore "Vccp1"
1326    ignore "Vccp2"
1327
1328
1329chip "it87-*" "it8705-*" "it8712-*"
1330
1331# The values below have been tested on Asus CUSI, CUM motherboards.
1332
1333# Voltage monitors as advised in the It8705 data sheet
1334
1335    label in0 "VCore 1"
1336    label in1 "VCore 2"
1337    label in2 "+3.3V"
1338    label in3 "+5V"
1339    label in4 "+12V"
1340    label in5 "-12V"
1341    label in6 "-5V"
1342    label in7 "Stdby"
1343    label in8 "VBat"
1344
1345    set in0_min 1.5 * 0.95
1346    set in0_max 1.5 * 1.05
1347    set in1_min 2.4
1348    set in1_max 2.6
1349    set in2_min 3.3 * 0.95
1350    set in2_max 3.3 * 1.05
1351    set in3_min 5.0 * 0.95
1352    set in3_max 5.0 * 1.05
1353    set in4_min 12 * 0.95
1354    set in4_max 12 * 1.05
1355    set in5_max -12 * 0.95
1356    set in5_min -12 * 1.05
1357    set in6_max -5 * 0.95
1358    set in6_min -5 * 1.05
1359    set in7_min 5 * 0.95
1360    set in7_max 5 * 1.05
1361    #the chip does not support in8 min/max
1362
1363    # vid is not monitored by IT8705F
1364    # and is not supported by driver at this time
1365    ignore  vid
1366
1367# If 3.3V reads 2X too high (Soyo Dragon and Asus A7V8X-X, for example),
1368# comment out following line.
1369    compute in2   2*@ , @/2
1370#
1371    compute in3 ((6.8/10)+1)*@ ,  @/((6.8/10)+1)
1372    compute in4 ((30/10) +1)*@  , @/((30/10) +1)
1373# For this family of chips the negative voltage equation is different from
1374# the lm78.  The chip uses two external resistor for scaling but one is
1375# tied to a positive reference voltage.  See ITE8705/12 datasheet (SIS950
1376# data sheet is wrong)
1377# Vs = (1 + Rin/Rf) * Vin - (Rin/Rf) * Vref.
1378# Vref = 4.096 volts, Vin is voltage measured, Vs is actual voltage.
1379
1380# The next two are negative voltages (-12 and -5).
1381# The following formulas must be used. Unfortunately the datasheet
1382# does not give recommendations for Rin, Rf, but we can back into
1383# them based on a nominal +2V input to the chip, together with a 4.096V Vref.
1384# Formula:
1385#    actual V = (Vmeasured * (1 + Rin/Rf)) - (Vref * (Rin/Rf))
1386#    For -12V input use Rin/Rf = 6.68
1387#    For -5V input use Rin/Rf = 3.33
1388# Then you can convert the forumula to a standard form like:
1389    compute in5 (7.67 * @) - 27.36  ,  (@ + 27.36) / 7.67
1390    compute in6 (4.33 * @) - 13.64  ,  (@ + 13.64) / 4.33
1391#
1392# this much simpler version is reported to work for a
1393# Eltite Group K7S5A board
1394#
1395#   compute in5 -(36/10)*@, -@/(36/10)
1396#   compute in6 -(56/10)*@, -@/(56/10)
1397#
1398    compute in7 ((6.8/10)+1)*@ ,  @/((6.8/10)+1)
1399
1400# Temperature
1401#
1402# Important - if your temperature readings are completely whacky
1403# you probably need to change the sensor type.
1404# Adujst and uncomment the appropriate lines below.
1405# The old method (modprobe it87 temp_type=0xXX) is no longer supported.
1406#
1407# 2 = thermistor; 3 = thermal diode
1408#   set sensor1 3
1409#   set sensor2 3
1410#   set sensor3 3
1411
1412    label temp1       "M/B Temp"
1413    set   temp1_over  40
1414    set   temp1_hyst  20
1415    label temp2       "CPU Temp"
1416    set   temp2_over  45
1417    set   temp2_hyst  25
1418#   ignore temp3
1419    label temp3       "Temp3"
1420    set   temp3_over  45
1421    set   temp3_hyst  25
1422
1423# The A7V8X-X has temperatures inverted, and needs a conversion for
1424# CPU temp. Thanks to Preben Randhol for the formula.
1425#   label temp1       "CPU Temp"
1426#   label temp2       "M/B Temp"
1427#   compute temp1     (-15.096+1.4893*@), (@+15.096)/1.4893
1428
1429# The A7V600 also has temperatures inverted, and needs a different
1430# conversion for CPU temp. Thanks to Dariusz Jaszkowski for the formula.
1431#   label temp1       "CPU Temp"
1432#   label temp2       "M/B Temp"
1433#   compute temp1     (@+128)/3, (3*@-128)
1434
1435# Fans
1436    set fan1_min 0
1437    set fan2_min 3000
1438#   ignore fan3
1439    set fan3_min 3000
1440
1441# The following is for the Inside Technologies 786LCD which uses either a
1442# IT8705F or a SIS950 for monitoring with the SIS630.
1443# You will need to load the it87 module as follows to select the correct
1444# temperature sensor type.
1445# modprobe it87 temp_type=0x31
1446# The sensors-detect program reports lm78 and a sis5595 and lists the it87 as
1447# a misdetect.  Don't do the modprobe for the lm78 or sis5595 as suggested.
1448#
1449# delete or comment out above it87 section and uncomment the following.
1450#chip "it87-*"
1451#    label in0 "VCore 1"
1452#    label in1 "VCore 2"
1453#    label in2 "+3.3V"
1454#    label in3 "+5V"
1455#    label in4 "+12V"
1456#    label in5 "3.3 Stdby"
1457#    label in6 "-12V"
1458#    label in7 "Stdby"
1459#    label in8 "VBat"
1460    # in0 will depend on your processor VID value, set to voltage specified in
1461    # bios setup screen
1462#    set in0_min 1.7 * 0.95
1463#    set in0_max 1.7 * 1.05
1464#    set in1_min 2.4
1465#    set in1_max 2.6
1466#    set in2_min 3.3 * 0.95
1467#    set in2_max 3.3 * 1.05
1468#    set in3_min 5.0 * 0.95
1469#    set in3_max 5.0 * 1.05
1470    # +- 12V are very poor tolerance on this board. Verified with voltmeter
1471#    set in4_min 12 * 0.90
1472#    set in4_max 12 * 1.10
1473#    set in5_min 3.3 * 0.95
1474#    set in5_max 3.3 * 1.05
1475#    set in6_max -12 * 0.90
1476#    set in6_min -12 * 1.10
1477#    set in7_min 5 * 0.95
1478#    set in7_max 5 * 1.05
1479    # vid not monitored by IT8705F
1480#    ignore  vid
1481
1482#    compute in3 ((6.8/10)+1)*@ ,  @/((6.8/10)+1)
1483#    compute in4 ((30/10) +1)*@  , @/((30/10) +1)
1484#    compute in6 (1+232/56)*@ - 4.096*232/56, (@ + 4.096*232/56)/(1+232/56)
1485#    compute in7 ((6.8/10)+1)*@ ,  @/((6.8/10)+1)
1486    # Temperature
1487#    label temp1       "CPU Temp"
1488#    ignore temp2
1489#    ignore temp3
1490    # Fans
1491#    set fan1_min 3000
1492#    ignore fan2
1493#    ignore fan3
1494
1495
1496chip "fscpos-*"
1497# Fujitsu-Siemens Poseidon chip
1498
1499# Temperature
1500
1501    label temp1       "Temp1/CPU"
1502    label temp2       "Temp2/MB"
1503    label temp3       "Temp2/AUX"
1504
1505# Fans
1506
1507    label  fan1       "Fan1"
1508    ignore  fan2
1509    ignore  fan3
1510
1511# Voltage
1512
1513    label volt12      "+12V"
1514    label volt5       "+5V"
1515    label voltbatt    "+3.3V"
1516
1517
1518chip "fscscy-*"
1519# Fujitsu-Siemens Scylla chip
1520
1521# Temperature
1522
1523    label temp1       "Temp1/CPU0"
1524    label temp2       "Temp2/CPU1"
1525    label temp3       "Temp3/MB"
1526    label temp4       "Temp4/AUX"
1527
1528# Fans
1529
1530    label  fan1       "Fan1/CPU0"
1531    label  fan2       "Fan2/CPU0"
1532    label  fan3       "Fan3"
1533    label  fan4       "Fan4"
1534    label  fan5       "Fan5"
1535    label  fan6       "Fan6"
1536
1537# Voltage
1538
1539    label volt12      "+12V"
1540    label volt5       "+5V"
1541    label voltbatt    "+3.3V"
1542
1543
1544chip "fscher-*"
1545# Fujitsu-Siemens Hermes chip
1546
1547# Temperature
1548
1549    label temp1       "Temp1/CPU"
1550    label temp2       "Temp2/MB"
1551    label temp3       "Temp3/AUX"
1552
1553# Fans
1554
1555    label fan1        "Fan1/CPU"
1556    label fan2        "Fan2/AUX"
1557    label fan3        "Fan3/PS"
1558
1559# Voltage
1560
1561    label in0         "+12V"
1562    label in1         "+5V"
1563    label in2         "Battery"
1564
1565
1566chip "pcf8591-*"
1567#
1568#    values for the Philips PCF8591 chip
1569#
1570# Analog inputs
1571
1572   ignore ain_conf
1573   set    ain_conf    0
1574   label  ch0         "Chan. 0"
1575   label  ch1         "Chan. 1"
1576   label  ch2         "Chan. 2"
1577   label  ch3         "Chan. 3"
1578
1579# Analog output
1580
1581   ignore aout_enable
1582   set    aout_enable 1
1583   label  aout        "Output"
1584   set    aout        0
1585
1586chip "adm1021-*" "adm1023-*" "max1617-*" "max1617a-*" "thmc10-*" "lm84-*" "gl523sm-*" "mc1066-*"
1587
1588   label temp           "Board"
1589   label remote_temp    "CPU"
1590#   set temp_low                40
1591#   set temp_over               70
1592#   set remote_temp_low         40
1593#   set remote_temp_over        70
1594
1595chip "lm83-*"
1596
1597   label temp1 "M/B Temp"
1598   label temp2 "D1 Temp"
1599   label temp3 "CPU Temp"
1600   label temp4 "D3 Temp"
1601
1602# ignore D1 and/or D3 readings if not used
1603#   ignore temp2
1604#   ignore temp4
1605
1606# change high limits to fit your needs
1607#   set temp1_high 55
1608#   set temp2_high 60
1609#   set temp3_high 65
1610#   set temp4_high 60
1611
1612# change critical limit to fit your needs
1613# only one limit for all four temperatures
1614# should be higher than each of the high limits above
1615#   set tcrit 85
1616
1617chip "lm90-*" "adm1032-*"
1618
1619   label temp1 "M/B Temp"
1620   label temp2 "CPU Temp"
1621   label tcrit1 "M/B Crit"
1622   label tcrit2 "CPU Crit"
1623
1624# change high and low limits to fit your needs
1625#   set temp1_low  10
1626#   set temp1_high 55
1627#   set temp2_low  10
1628#   set temp2_high 66
1629
1630# change critical limits to fit your needs
1631# should be higher than the corresponding high limit above
1632#   set tcrit1 75
1633#   set tcrit2 85
1634
1635# change the hysteresis values (to critical limits) to fit your needs
1636# note #1: hyst2 will be automatically set with the same delta
1637# note #2: the internal register, which stores a single, relative value
1638# for both channels, cannot hold values greater than 31, so the delta
1639# between critical temperatures and respective absolute hysteresis can
1640# never exceed this value
1641#   set hyst1 70
1642
1643chip "vt1211-*" "vt8231-*"
1644#
1645# temp1 and in6 are not implemented in vt1211 / vt8231
1646#
1647#                                                       1 for temp, 0 for volt.
1648#       Sensor          Voltage Mode    Temp Mode       config bit
1649#       --------        ------------    ---------       --------------
1650#       Reading 1                       temp3
1651#       UCH1/Reading2   in0             temp2           0x04 (4)
1652#       UCH2            in1             temp4           0x08 (8)
1653#       UCH3            in2             temp5           0x10 (16)
1654#       UCH4            in3             temp6           0x20 (32)
1655#       UCH5            in4             temp7           0x40 (64)
1656#       3.3V            in5
1657#
1658# set uch1-2 to temp mode, uch3-5 to voltage mode
1659#
1660    ignore temp1
1661    ignore in6
1662    set config 12
1663    ignore in0
1664    ignore in1
1665    ignore temp5
1666    ignore temp6
1667    ignore temp7
1668#
1669#   label in0 "unused"
1670#   label in1 "unused"
1671    label in2 "VCore1"
1672    label in3 "+5V"
1673    label in4 "+12V"
1674    label in5 "+3.3V"
1675#   label in6 "VCore2"
1676
1677#   label temp1 "1211 Temp"
1678    label temp2 "MB1 Temp"
1679    label temp3 "Proc Temp"
1680    label temp4 "MB2 Temp"
1681#
1682#   All voltage calculations have the form
1683#       ((@ * 100) - 3) / (K * 95.8), (@ * K * 0.958) + .03
1684#   where K = R2 / (R1 + R2).
1685#   Use the following K values based on input voltage.
1686#   This of course assumes the mobo has the resistors
1687#   recommended by Via in the datasheet.
1688#       Voltage                 K
1689#       VCore                   1.0
1690#       2.5                     0.8333
1691#       3.3 (in5 internal)      0.6296
1692#       3.5 (3.3V ext.)         0.5952
1693#       5.0                     0.4167
1694#       12.0                    0.1754
1695#
1696#   compute in0 ((@ * 100) - 3) / (0.5952 * 95.8), (@ * 0.5952 * 0.958) + .03
1697#   compute in1 ((@ * 100) - 3) / (0.8333 * 95.8), (@ * 0.8333 * 0.958) + .03
1698    compute in2 ((@ * 100) - 3) / (0.5952 * 95.8), (@ * 0.5952 * 0.958) + .03
1699    compute in3 ((@ * 100) - 3) / (0.4167 * 95.8), (@ * 0.4167 * 0.958) + .03
1700    compute in4 ((@ * 100) - 3) / (0.1754 * 95.8), (@ * 0.1754 * 0.958) + .03
1701    compute in5 ((@ * 100) - 3) / (0.6296 * 95.8), (@ * 0.6296 * 0.958) + .03
1702#   compute in6 ((@ * 100) - 3) / (0.5952 * 95.8), (@ * 0.5952 * 0.958) + .03
1703
1704    set vrm 9.1
1705#   set in0_min 2.5 * 0.95
1706#   set in0_max 2.5 * 1.05
1707#   set in1_min 2.5 * 0.95
1708#   set in1_max 2.5 * 1.05
1709    set in2_min vid * 0.97
1710    set in2_max vid * 1.03
1711    set in3_min 5.0 * 0.95
1712    set in3_max 5.0 * 1.05
1713    set in4_min 12.0 * 0.90
1714    set in4_max 12.0 * 1.10
1715    set in5_min 3.3 * 0.95
1716    set in5_max 3.3 * 1.05
1717#   set in6_min 2.0 * 0.97
1718#   set in6_max 2.0 * 1.03
1719
1720#   compute temp1  (@ - 65) / 0.9686,  (@ * 0.9686) + 65
1721    compute temp3  (@ - 65) / 0.9686,  (@ * 0.9686) + 65
1722#
1723# thermistor calculations.
1724# 3435 is the thermistor beta.
1725# '^' is the e**x operator; '`' is the ln(x) operator
1726# (valid in library version 1.4.0 / lm_sensors 2.7.1 or higher)
1727# This assumes that the thermistor forms a resistor divider with a resistor
1728# equal to its nominal value @ 25C. If not, the math gets even harder.
1729#
1730    compute temp2  (1 / (((1 / 3435) * (` ((253 - @) / (@ - 43)))) + (1 / 298.15)))  - 273.15, \
1731                   253 - (210 / (1 + (1 / (^ (((3435 * (25 - @)) / ((@ + 273.15) * 298.15)))))))
1732    compute temp4  (1 / (((1 / 3435) * (` ((253 - @) / (@ - 43)))) + (1 / 298.15)))  - 273.15, \
1733                   253 - (210 / (1 + (1 / (^ (((3435 * (25 - @)) / ((@ + 273.15) * 298.15)))))))
1734    compute temp5  (1 / (((1 / 3435) * (` ((253 - @) / (@ - 43)))) + (1 / 298.15)))  - 273.15, \
1735                   253 - (210 / (1 + (1 / (^ (((3435 * (25 - @)) / ((@ + 273.15) * 298.15)))))))
1736    compute temp6  (1 / (((1 / 3435) * (` ((253 - @) / (@ - 43)))) + (1 / 298.15)))  - 273.15, \
1737                   253 - (210 / (1 + (1 / (^ (((3435 * (25 - @)) / ((@ + 273.15) * 298.15)))))))
1738    compute temp7  (1 / (((1 / 3435) * (` ((253 - @) / (@ - 43)))) + (1 / 298.15)))  - 273.15, \
1739                   253 - (210 / (1 + (1 / (^ (((3435 * (25 - @)) / ((@ + 273.15) * 298.15)))))))
1740
1741#   set temp1_hyst 40
1742#   set temp1_over 45
1743    set temp2_hyst 40
1744    set temp2_over 45
1745    set temp3_hyst 60
1746    set temp3_over 65
1747    set temp4_hyst 40
1748    set temp4_over 45
1749
1750    set fan1_min 3000
1751    set fan2_min 3000
1752
1753chip "bmc-*"
1754#
1755# You should not need compute lines here, the driver will
1756# do all the conversions.
1757# For label lines, copy from syslog/dmesg when the bmcsensors
1758# module is inserted.
1759#
1760# for example:
1761# label temp1 "Ambient Temp"
1762
1763
1764
1765#
1766chip "smsc47m1-*"
1767
1768    set fan1_min 3000
1769    set fan2_min 3000
1770
1771#
1772# This example was tested vs. Asus P4S333
1773#
1774chip "asb100-*"
1775    set vrm 9.0
1776
1777    label in0 "VCore 1"
1778    set in0_min vid * 0.95
1779    set in0_max vid * 1.05
1780
1781    label in1 "VCore 2"
1782    ignore in1
1783    set in1_min vid * 0.95
1784    set in1_max vid * 1.05
1785
1786    label in2 "+3.3V"
1787    set in2_min 3.3 * 0.95
1788    set in2_max 3.3 * 1.05
1789
1790    label in3 "+5V"
1791    compute in3 1.68 * @ ,  @ / 1.68
1792    set in3_min 5.0 * 0.95
1793    set in3_max 5.0 * 1.05
1794
1795    label in4 "+12V"
1796    compute in4 3.8 * @ , @ / 3.8
1797    set in4_min 12  * 0.90
1798    set in4_max 12  * 1.10
1799
1800    label in5 "-12V (reserved)"
1801    #ignore in5
1802    compute in5 -@ * 3.97 ,  -@ / 3.97
1803    set in5_max -12 * 0.90
1804    set in5_min -12 * 1.10
1805
1806    label in6 "-5V (reserved)"
1807    #ignore in6
1808    compute in6 -@ * 1.666 , -@ / 1.666
1809    set in6_max -5  * 0.95
1810    set in6_min -5  * 1.05
1811
1812    label temp1 "M/B Temp"
1813    set temp1_over 45
1814    set temp1_hyst 40
1815
1816    label temp2 "CPU Temp (Intel)"
1817    #ignore temp2
1818    set temp2_over 60
1819    set temp2_hyst 50
1820
1821    # PWRTMP connector on P4S333, for external sensor
1822    label temp3 "Power Temp"
1823    #ignore temp3
1824    set temp3_over 45
1825    set temp3_hyst 40
1826
1827
1828    # Used for Athlon diode, ignore for P4S333
1829    label temp4 "CPU Temp (AMD)"
1830    set temp4_over 60
1831    set temp4_hyst 50
1832    #ignore temp4
1833
1834    label fan1 "CPU Fan"
1835    set fan1_div 4
1836    set fan1_min 2000
1837
1838    label fan2 "Chassis Fan"
1839    set fan2_div 2
1840    set fan2_min 4000
1841
1842    label fan3 "Power Fan"
1843    set fan3_div 2
1844    set fan3_min 4000
1845
Note: See TracBrowser for help on using the browser.