mirror of
https://github.com/lm-sensors/lm-sensors.git
synced 2026-11-06 15:51:34 +00:00
fan divisor doc update
git-svn-id: http://lm-sensors.org/svn/lm-sensors/trunk@1256 7894878c-1315-0410-8ee3-d5d059ff63e0
This commit is contained in:
1 parent
4e375cb140
commit
08422ec5f1
2 files changed
+83
-13
No files matched your search
@@ -43,8 +43,9 @@ CONTENTS
|
||||
3.9 I get unresolved symbols when I modprobe modules (Red Hat especially)
|
||||
|
||||
4. Problems
|
||||
4.1 Why do my fans report exactly half/double their values by your code
|
||||
compared to the BIOS?
|
||||
4.1 Why do my fans report exactly half/double their values compared to the BIOS?
|
||||
4.1A Fans sometimes / always read 0!!
|
||||
4.1B I doubled the fan divisor and the fan still reads 7000!
|
||||
4.2 Why do my two LM75's report "-48 degrees"?
|
||||
4.3 Why do I have two Vcore readings, I have only one processor!
|
||||
4.4 How do those ALARMS work? The current value is within range but there
|
||||
@@ -454,16 +455,33 @@ are running with something like 'make LINUX=/usr/src/linux-2.4.14'.
|
||||
4 Problems
|
||||
----------
|
||||
|
||||
4.1 Why do my fans report exactly half/double their values by your code
|
||||
compared to the BIOS?
|
||||
4.1 Why do my fans report exactly half/double their values compared to the BIOS?
|
||||
|
||||
The problem with much of the sensor data is that it is impossible to
|
||||
properly interpret some of the readings without knowing what the hardware
|
||||
configuration is. Some fans report one 'tick' each rotation, some report
|
||||
two 'ticks' each rotation. It is easy to resolve this through the
|
||||
configuration file:
|
||||
configuration file /etc/sensors.conf:
|
||||
|
||||
chip lm78-* # Or whatever chip this relates to
|
||||
compute fan1 2*@,@/2 # Copy for each fan present
|
||||
compute fan1 2*@,@/2 # This will double the fan1 reading
|
||||
# -- or --
|
||||
compute fan1 @/2,2*@ # This will halve the fan1 reading
|
||||
|
||||
|
||||
4.1A Fans sometimes / always read 0!!
|
||||
|
||||
You may not have a three-wire fan, which is required.
|
||||
You may need to increase the 'fan divisor'. See doc/fan-divisors
|
||||
in our package for further information.
|
||||
|
||||
|
||||
4.1B I doubled the fan divisor and the fan still reads 7000!
|
||||
|
||||
Believe it or not, doubling the 'fan divisor' will not halve
|
||||
the fan reading. You have to add a compute line in /etc/sensors.conf.
|
||||
See 4.1 above, and see doc/fan-divisors in our package for further
|
||||
information.
|
||||
|
||||
|
||||
4.2 Why do my two LM75's report "-48 degrees"?
|
||||
|
||||
+59
-7
@@ -1,3 +1,6 @@
|
||||
Fan reading problems and solutions
|
||||
----------------------------------
|
||||
|
||||
If you aren't getting the expected readings on your fans,
|
||||
try the following:
|
||||
|
||||
@@ -8,16 +11,19 @@ try the following:
|
||||
- Try experimenting with the fan divisor settings:
|
||||
|
||||
|
||||
Fan Divisor Minimum RPM Maximum RPM
|
||||
Fan Divisor Settings
|
||||
--------------------
|
||||
|
||||
Fan Divisor Minimum RPM Maximum RPM
|
||||
----------- ----------- -----------
|
||||
1 5314 1350000
|
||||
2 2657 675000
|
||||
2 2657 675000 default on most chips
|
||||
4 1328 337500
|
||||
8 664 168750
|
||||
16 332 84375
|
||||
32 166 42187
|
||||
64 83 21093
|
||||
128 41 10546
|
||||
16 332 84375 not supported on most chips
|
||||
32 166 42187 ""
|
||||
64 83 21093 ""
|
||||
128 41 10546 ""
|
||||
|
||||
|
||||
Pick a divisor so that the nominal RPM is about 50%
|
||||
@@ -36,7 +42,9 @@ If you have a nominal reading more than 3 times the
|
||||
minimum, decrease the divisor to provide better
|
||||
accuracy.
|
||||
|
||||
- How to change fan divisors:
|
||||
|
||||
How to change fan divisors
|
||||
--------------------------
|
||||
|
||||
Method 1: "echo x y z > /proc/sys/dev/sensors/...../fan_div"
|
||||
where 'x y z' are the fan divisors for the three fans and '...'
|
||||
@@ -45,3 +53,47 @@ accuracy.
|
||||
Method 2: Put an entry "set fanx_div y" in the appropriate section
|
||||
of /etc/sensors.conf and rerun 'sensors -s'.
|
||||
(x is the number of the fan 1-3 and y is the divisor).
|
||||
|
||||
|
||||
Further details
|
||||
---------------
|
||||
|
||||
Fan divisors are quite confusing.
|
||||
|
||||
Sensor chips count fan speed by using the fan signal
|
||||
to gate an 8-bit counter driven by a 22.5 kHz clock.
|
||||
So the _higher_ the counter value, the _slower_ the fan,
|
||||
and vice versa.
|
||||
|
||||
The term 'fan divisor' is a misnomer because it doesn't divide
|
||||
the fan signal, it divides the 22.5 kHz clock.
|
||||
Thus you _increase_ the divisor if you have a slow fan.
|
||||
|
||||
The drivers account for the 'fan divisor' in its calculation
|
||||
of RPM. So changing the fan divisor will NOT change the
|
||||
nominal RPM reading, it will only affect the minimum and maximum
|
||||
readings and the accuracy of the readings.
|
||||
|
||||
The actual formula is RPM = (60 * 22500) / (count * divisor)
|
||||
|
||||
|
||||
Fan readings 2X too high
|
||||
------------------------
|
||||
|
||||
This is caused by a fan clock which is actually half the expected
|
||||
22.5 kHz, or by a fan which outputs twice as many pulses per revolution
|
||||
as expected.
|
||||
|
||||
As we learned above, you can _not_ fix this by changing
|
||||
the fan divisor. You must add entries into the appropriate
|
||||
section of /etc/sensors.conf:
|
||||
|
||||
compute fan1 @/2, 2*@
|
||||
compute fan2 @/2, 2*@
|
||||
compute fan3 @/2, 2*@
|
||||
|
||||
|
||||
|
||||
|
||||
------------------
|
||||
Copyright (c) 2000,2001 Mark D. Studebaker <mdsxyz123@yahoo.com>
|
||||
Reference in new issue
Block a user