LinuxQuestions.org
Welcome to the most active Linux Forum on the web.
Home Forums Tutorials Articles Register
Go Back   LinuxQuestions.org > Forums > Linux Forums > Linux - Software
User Name
Password
Linux - Software This forum is for Software issues.
Having a problem installing a new program? Want to know which application is best for the job? Post your question in this forum.

Notices


Reply
  Search this Thread
Old 07-27-2009, 01:38 PM   #1
Woodsman
Senior Member
 
Registered: Oct 2005
Distribution: Slackware 14.1
Posts: 3,482

Rep: Reputation: 546Reputation: 546Reputation: 546Reputation: 546Reputation: 546Reputation: 546
Configuring lm-sensors With New Hardware


I am having a difficult time correctly configuring lm-sensors with my new hardware.

With no modifications, the sensors command reports 6.38 volts for +12 volts and reports 6.38 volts for 5V Standby. The Vcore, 3.3V are almost exact what the BIOS reports. The VBat seems correct although not reported in the BIOS.

Fan speeds, CPU, and M/B temps seem correct too with respect to BIOS indications.

I guessed a new computation formula to address the +12 reading and 5V Standby. Guessing is the correct word because I have no idea how to methodically develop a computation to match the BIOS indication.

Yet I can't change the minimum or maximum values for +5V or 5V Standby. Changing the values directly in /sys/devices/platform/it87.656 is futile too.

Hardware:

Asus M3N78-EM motherboard, AMD 5050e 2.6 GHz Dual Core CPU, Western Digital WD6400AAKS hard drive, Lite-On iHAS324-08 24X SATA DVD, HDMI, DVI-D, VGA. On-board Nvidia 8300 video. IT8712F sensor chip.

sensors report

Code:
it8712-isa-0290
Adapter: ISA adapter
VCore:       +0.93 V  (min =  +0.90 V, max =  +1.39 V)
+3.3V:       +3.25 V  (min =  +3.14 V, max =  +3.47 V)
+5V:         +5.02 V  (min =  +4.74 V, max =  +5.02 V)   ALARM <------ Incorrect Max
+12V:       +12.10 V  (min = +11.37 V, max = +12.59 V)
5VSB:        +4.08 V  (min =  +4.08 V, max =  +4.08 V)   ALARM <------ Incorrect Min/Max
VBat:        +3.17 V
CPU Fan:    1066 RPM  (min =  799 RPM)
Cha Fan:     557 RPM  (min =  399 RPM)
CPU Temp:    +24.0°C  (low  =  -1.0°C, high = +127.0°C)  sensor = transistor
M/B Temp:    +27.0°C  (low  =  -1.0°C, high = +127.0°C)  sensor = transistor
cpu0_vid:   +1.525 V
My sensors3.conf:

Code:
# M3N78-EM, it8712-isa-0290

# chip "k8temp-*"

# From http://www.lm-sensors.org/wiki/Devices:
# Note: most recent K8 models have been reported to have broken thermal sensors
# so the k8temp driver will return bogus values and there's nothing we can do.
# Therefore I blacklisted the K8temp kernel module.

#    label temp1 "Core0"
#    label temp2 "Core0"
#    label temp3 "Core1"
#    label temp4 "Core1"
#   ignore temp2
#   ignore temp4

#   compute temp1  @*-7.5  , @/7.5
#   compute temp2  @*14  , @/14
#   compute temp3  @*6.5  , @/6.5
#   compute temp4  @*3.5  , @/3.5

chip "it87-*" "it8712-*"

# Voltages

# kernel parameters at /sys/devices/platform/it87.656/in*_input
# kernel parameters are raw and not compensated to match BIOS with compute command

    label in0 "VCore"
    ignore in1
    label in2 "+3.3V"
    label in3 "+5V"
    label in4 "+12V"
    ignore in5
    ignore in6
    label in7 "5VSB"
    label in8 "VBat"

    compute in3  @*1.23 , @/1.23
    compute in4  @*3.8 , @/3.8

    set in0_min     0.90
    set in0_max     1.40
    set in2_min  3.3 * 0.95
    set in2_max  3.3 * 1.05
    set in3_min    5 * 0.95
    set in3_max    5 * 1.05 <------ Calculated Max (should be 5.25 volts)
    set in4_min   12 * 0.95
    set in4_max   12 * 1.05
    set in7_min    5 * 0.95 <------ Calculated Max (should be 4.75 volts)
    set in7_max    5 * 1.05 <------ Calculated Max (should be 5.25 volts)
    #the chip does not support in8 min/max

# Temperature

    label  temp1  "CPU Temp"
    label  temp2  "M/B Temp"
    ignore temp3

# Fans

# M3N78-EM motherboard:
# fan1 = CPU_FAN
# fan2 = CHA_FAN
# fan3 = PWR_FAN
# Only CPU_FAN and CHA_FAN can be controlled through lm_sensors and Q-Fan
# CPU fan is hard wired for a minimum speed and cannot be stopped with pwm1=0

    label  fan1 "CPU Fan"
    label  fan2 "Cha Fan"
    ignore  fan3

    set fan1_min 800
    set fan2_min 400
Thanks again.
 
Old 07-28-2009, 05:57 AM   #2
catkin
LQ 5k Club
 
Registered: Dec 2008
Location: Tamil Nadu, India
Distribution: Debian
Posts: 8,578
Blog Entries: 31

Rep: Reputation: 1208Reputation: 1208Reputation: 1208Reputation: 1208Reputation: 1208Reputation: 1208Reputation: 1208Reputation: 1208Reputation: 1208
Hello Woodsman

The analog voltages are converted to 8-bit digital values with a default of 0.016 V per bit giving a range 0 to 4.08. When greater ranges are required, as for 5 V and 12 V values, "potential divider" circuits are used at the inputs. The best explanation of these, in an lmsensors context, is on the gkrellm man page, in the "Voltage Sensor Corrections" section.

When a potential divider circuit is used an equivalent compute line is required in sensors3.conf. Ideally this is based on the values of the resistors used in the potential divider circuit. These values are seldom published. Happily designers usually follow the monitoring chip makers' recommendations when choosing values. Compute lines for chip makers' recommended resistor values can be tried and then the voltages displayed by the sensors program checked against voltages in the BIOS screens or measured by voltmeter.

Unfortunately there are no sensors3.conf files published for your motherboard. You could try compute lines from hopefully similar boards such as ASUS M3A78-CM. Full list at lm-sensors.org WIKI.

Regards your specific questions ...

in3 (labeled +5V) is scaled by the compute line
Code:
compute in3  @*1.23 , @/1.23
This gives it a maximum possible value of 4.08 * 1.23 = 5.02. It's maximum is set by
Code:
set in3_min    5 * 0.95
This is 5.25, above the scaled range maximum value of 5.02. lmsensors silently coerces it to the maximum possible, 5.02.

If in3 really is +5V then the designers are unlikely to have given it a potential divider circuit that would max out the analogue-to-digital converter at 5.02 V. The in3 compute in sensors3.conf is probably wrong.

in7 (labeled 5VSB) is saturated. Probably the mobo designers didn't earth the unused signal pin and it's picking up leakage that is maxxing it out. No use for anything so give it an "ignore" in sensors3.conf.

If 5VSB is shown in the BIOS display then it's one one of the other in* pins. You could try un-ignoring the ignored in* values and see what they look like. If one of them shows a value that is not close to either 0 or 4.08 then it could be 5VSB and, if it is, will need scaling with a compute line.

When you get it all working satisfactorily, please consider uploading your sensors3.conf file to the lm-sensors.org WIKI.

Best

Charles
 
Old 07-31-2009, 02:38 PM   #3
Woodsman
Senior Member
 
Registered: Oct 2005
Distribution: Slackware 14.1
Posts: 3,482

Original Poster
Rep: Reputation: 546Reputation: 546Reputation: 546Reputation: 546Reputation: 546Reputation: 546
Quote:
Unfortunately there are no sensors3.conf files published for your motherboard.
Yes, I looked throughout the web.

Quote:
This gives it a maximum possible value of 4.08 * 1.23 = 5.02.
lmsensors silently coerces it to the maximum possible
Okay, thanks. Part of the mystery resolved. I now somewhat understand why the MIN and MAX limits failed.

Quote:
The in3 compute in sensors3.conf is probably wrong.
Yes, that seems correct. When I restore the original sensors3.conf computation for +5V:

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

lm-sensors reports the +5V is 6.85V. That value is unrealistic, and does not match the value reported in the BIOS, which is 5.017V. Hence my effort to produce a realistic value with a new computation (although not previously knowing about the 4.08V limitation or voltage divider).

Similarly, when I remove my incorrect +12V computation (compute in4 @*3.8 , @/3.8), lm-sensors reports the +12V as 3.18V. Again, unrealistic and does not match the BIOS, which is 12.094V.

I am inclined to believe the BIOS indications.

Although the stock lm-sensors reported -12V and -5V, the BIOS does not and I configured the values to be ignored.

Quote:
You could try compute lines from hopefully similar boards such as ASUS M3A78-CM. Full list at lm-sensors.org WIKI.
The computations from that config file seems to work great for the +5V and +12V.

I have not yet got the 5V Standby (VSB) to report correctly. I could ignore VSB as that voltage is not reported in the BIOS.

Thanks much for helping!
 
  


Reply



Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is Off
HTML code is Off



Similar Threads
Thread Thread Starter Forum Replies Last Post
LXer: BSDCan 2008: Hardware Sensors Framework LXer Syndicated Linux News 0 06-08-2008 10:41 AM
Intel 830M Motherboard Hardware Sensors jrtayloriv Linux - Hardware 3 01-10-2007 12:30 PM
Hardware Sensors korozion Linux - Hardware 2 01-25-2005 10:19 PM
MSI-KT4AV-L Hardware sensors Thetargos Linux - Hardware 0 09-01-2004 09:17 PM
Just discovered sensors - near-real-time hardware monitoring BrianK Linux - General 1 03-25-2004 06:23 PM

LinuxQuestions.org > Forums > Linux Forums > Linux - Software

All times are GMT -5. The time now is 05:55 PM.

Main Menu
Advertisement
My LQ
Write for LQ
LinuxQuestions.org is looking for people interested in writing Editorials, Articles, Reviews, and more. If you'd like to contribute content, let us know.
Main Menu
Syndicate
RSS1  Latest Threads
RSS1  LQ News
Twitter: @linuxquestions
Open Source Consulting | Domain Registration