Link to home
Start Free TrialLog in
Avatar of tstaddon
tstaddon

asked on

XP forces CPU fan to slow down even under high temperatures

Hi,

Before I progress I'd just like to say I am an IT consultant with over 12 years of PC building experience and amongst other things assisted Microsoft with troubleshooting WDM driver issues affecting Conexant TV tuner cards when Windows 98 came out. I am not a newbie, so please feel free to be over-technical.

I am currently tinkering with an MS-7046 motherboard with latest BIOS, and XP with latest Intel chipset drivers (and all others up to date).

If I boot the system up in DOS, Linux or XP (in safe mode) the CPU fan stays on at full speed and temperatures are fine. If, however, I boot into XP then as the startup screen appears the CPU fan slows down to a near-silent 788rpm (lord knows why that's the speed but this is what SpeedFan tells me and I've yet to find anything else that suggests it's not) and it stays in this "quiet" mode until I shut the machine down.

As long as the CPU is near-enough idle this is not a problem; the temperature of the processor (Intel Pentium 550) stays somewhere between 45 and 51 degrees C; perfectly adequate when playing movies, word-processing and the like.

If I put the CPU under >50% load though, the temperature gradually goes higher till the system panics and shuts down as the CPU exceeds 75 degrees. And the fan doggedly stays running "quiet" (ie slow) even though it's perfectly capable of speeding up under load.

I downloaded several fan monitoring tools (MBM and Speedfan for example) and all of them are reporting the temperatures the same, and I have even had some success with modifying the CPU fan to come on if the CPU load goes up - so clearly the functionality is there to do it. With these tools I can get the CPU fans to rev up if the temperature goes over 60, but they only do so for about a minute - something else seems to interfere with the process and slows the fan down again.

I do not have these third party utilities on the machine, and try something overly clever like playing Civilization 4, give or take half an hour my PC will throw a wobbler and shut down because the fan just won't speed up like it should.

MSI decided in their infinite wisdom to completely disable *all* the CPU temperature monitoring and control settings in the BIOS and render them invisible, but I manually enabled the "emergency shutdown temperature" option at 75 degrees using Modbin, and by some sheer fluke this actually works even though that setting is still not visible in the BIOS. This is how I know that if I leave Windows to manage the fan, only a keen bit of bios hacking is saving my CPU from reaching seriously high temperature.

I have replaced the HSF with a fairly decent cooler, and used Arctic Silver 5 for both the HSF and Northbridge coolers; these are not at fault.

I can only conclude that this is a Microsoft issue. So, questions:

1. Assuming it'll work would switching XP and the BIOS to non-ACPI mode ensure the fan runs at a sensible speed?

2. If so, would I be able to slow the fan down manually?

3. Any other ideas?
ASKER CERTIFIED SOLUTION
Avatar of gurutc
gurutc
Flag of United States of America image

Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
SOLUTION
Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Avatar of tstaddon
tstaddon

ASKER

I've seen that computing.net article before; unfortunately for the motherboard I have this isn't an option - it's out of warranty.

I might give it a try with non-ACPI mode but before I do that I found a speedfan profile for a motherboard that has the same sensor, northbridge and southbridge as mine which might be worth importing.

There's got to be an issue with XP if a third party opensource offering can adjust the fan speed using API calls but the OS itself doesn't do it properly.
what about the other case mentioned there, the RAMs?
did you checked them?
It's new memory, which checks out fine with memtest. I've also tried running it with seperate sticks and in both dual-channel and standard configurations.

The system is fitted with 2x512MB DDR PC3200/400MHz Memory Non-ECC CL3 Unbuffered 2.6V sticks; the motherboard itself supports DDR400/DDR333.
Avatar of Mark Poirier
For clarification please.
Is this motherboard from a brand name computer, if so what is the model.
According to the MSI manual for this motherboard http://www.google.ca/url?sa=t&ct=res&cd=2&url=http%3A%2F%2F217.110.237.67%2FManuals%2F7046-engl%2520v1.0%2520-%2520MS-7046.pdf&ei=0TS3RtGIG4-IebruiNMK&usg=AFQjCNGXUeHdWu_AvTWHz_T69venNJS6oA&sig2=gmF55hFifsVpNPHcKnTtDA

Pg 2-14-->If the mainboard has a System Hardware Monitor chipset on-board, you must use a specially designed fan with speed sensor to take advantage of the CPU fan control.<--

What CPU fan is installed?
Have you changed out the CPU fan at some point?
Does it have 3 or 4 pin connector?

and
pg 3-20 -->Monitor function is available only if there is hardware monitoring mechanism onboard.<--

If there are no hardware monitoring mechanisms, this may be why the H/W monitor settings are greyed out.
If this is an OEM motherboard from a brand name manufacturer, it may very well have no sensors onboard(cost savings)and if you have changed the CPU fan, then it may be that the original fan had a temp sensor on it to control the fan speed.


That's the right motherboard - MS-7046 rev 1 installed in a Philips Freeline unit (SFF) as per

http://news.designtechnica.com/images/news/philips/Philips-Freeline-product-hi.jpg

The HSF is one of these...http://www.ebuyer.com/UK/product/108115. With the 4 pin PWM connector. The heat sink itself seems to be performing OK, if the CPU's idle the temperature stays under 60% even if I take the fan off. The fan is located directly beneath a meshed hatch in the side of the case so the hot air is expelled straight out. At the bottom of the case is a space for an 8cm fan sucking air in.

At present though case air flow is not presenting an issue as I have gutted the innards out, so inside the case it is quite literally just the motherboard, PSU, HDD and graphics card. There is no TV tuner or other PCI card.

As for the hardware monitoring being disabled on the motherboard, I thought this might be the case, but apparently not - I can monitor and control the fan speed and CPU temperature both over the ISA bus and through SMBIOS.

The functionality to access these options directly seems to be crippled in the BIOS, but I have definitely managed to enable the shutdown facility through it - and believe me, it is working - within seconds of the CPU hits 75% the computer powers itself off; before I flashed the BIOS the temperature would quite easily sail into the 80s with the fan still happily spinning at (according to SpeedFan) 7% of its maximum speed!
Is it the original CPU fan or a replaced model. Some OEM's used a fan with a thermistor directly on the fan body to check air temp and to regulate fan speed.
It's a replaced fan.

Just out of pure interest I've tested out another fan utility - cpucool - and this seems to be doing exactly what I need it to do although the readings are somewhat different to those from other utilities.

The fan is reporting as silent at 1500RPM which is apparently what it's idling at, but ramps up to 3500rpm if the temperature goes above 50. When I forced it to stay in cooling mode permanently, the temperature bottomed out at 38. The temperature readings are consistent with SpeedFan though, it's just the fan speed that's reporting different.

SOLUTION
Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
I'll give it a look when I get home. BTW, I switched the HAL and something is still suppressing the speed. Still a bit bemused as to why XP is the only OS where this is an issue though.
Ooooh, sparkmaker may be on to something.  I've seen that before.

- gurutc
Which HAL are you using now, and what method did you use to change it. Full reinstall?
Standard PC HAL, with full reinstall.
And I assume the previous HAL was ACPI.
The linux distros probably evaluate the hardware differently and would apply a common sense approach as to running the fan at max speed rather than assume as XP does that it can CONTROL the fan.
Is the XP an OEM version that was installed by the manufacturer or a retail version.
It's not an OEM version; the system came without any HDD. It is fully legit.
The reason I was wondering if it was OEM, maybe they had a software that they installed to control the CPU fan. As you have found that CPUCOOL works, perhaps the manufacturer also had a software utility.
SOLUTION
Link to home
membership
This solution is only available to members.
To access this solution, you must be a member of Experts Exchange.
Start Free Trial
Zubin,

No, it's never a silly thing to say! However the BIOS (Phoenix Award) in this case is severely crippled. Quick Fan is not available, neither is the H/W monitoring option.

To give you an idea what I mean, it looks like this - http://techreport.com/reviews/2006q1/msi-k8n-neo4platinumsli/BIOS.jpg

But with H/W Monitorand Cell options not available (even though I have patched the ROM to make them visible).

The MS-7046 Rev 1 is an OEM board; one of the closest retail boards I've managed to find is the Albatron PX915P-2V; I'm tempted to try comparing the BIOSes and if the functionality is enabled in that one I might try to patch the BIOS on my board. Pretty dangerous though.
Should clarify - the only "hidden" BIOS setting that seems to make a difference if I force-enable it within the BIOS image, is the CPU Shutdown Temperature.

The computer shuts down as told if it overheats past 95 degrees, if I've switched the option on (although it's still not visible in the BIOS screen) but if I turn that option back off the computer carries on running well past 80 degrees.

I use the very latest versions of Modbin6 and CBROM, to patch the bios update.
Hi tstaddon,

Nothing to add except thanks for your persistence in this issue.  Hat's off to your ongoing patience.  It is always disappointing when an asker gives up while experts are still trying to help.  You are staying in the game, and that's commendable.

Also, thanks for your expertise.  Few askers go so far to dot the i's and cross the t's both before asking and also in trying what the experts suggest.  Speaking for myself, I am learning from this dialog and mostly from you!  And I think I'm pretty smart!

Good Luck,
- gurutc
Thanks!

I'm chugging along with various different things at the moment - and what with SSO, Federation and Virtual Directory taking up most of my daylight hours (consultancy's my day job) it's not always easy to stay focused on "home" computing.

But this is one of those issues that's going to be really good fun to fix, and I expect copious amounts of joy-joy feeling if I fix it!
On that note, have you checked that the patched BIOS is not over/under clocking the core
The reason being, my experience is that underclocked core's will cause the V+ voltage to stay pretty low, which may deceive chipset to believe cpu is running slow, when in reality, the cpus is still being used & the fan needs to turn. This i believe is set based on the little diode & resistor somewhere on the board. They decide how much current is flowing through to estimate RPM required.
So then, could also mean a hardware problem with any form of smart stepping being turned on?

Not sure of the above though, more of a speculation
I'm not overclocking or underclocking the core and the clock speed's only ~3mhz away from the official spec, so it's not very likely.

Interesting turnup - I was able to both enable and modify the hidden menu options by moving the menus around. This has admittedly stuffed up the other menus in the BIOS but I have at least been able to:

1. Enable the CPU Temperature Warning and shutdown settings (to 60 and 75 degrees respectively)
2. Enable THRM-Throttling (at 50%)

So, that's progress - it at least proves the functionality IS there but somewhere along the line, the BIOS vendor / OEM made a conscious decision to stop people using them.
I think we can safely surmise that the control mechanisms for the H/W monitor are on the motherboard. That leaves the BIOS as the culprit. I wonder if you have a dysfunctional bios rather than a crippled one.
tstaddon, You pointed out in a previos post the retail MSI model closest to yours.. What if u download that BIOS & patch it on ur chip? I dont think it should kill it, if not solve the problem. Excuse my laziness, I havnt checked to see if urs is a dual bios board? if yes, then are both chips vers in sync? Also, if its dual, ur pretty safe to play with 1 of the chips...

sparkmaker,

I went onto a bios modding forum and one of the experts there has looked at the BIOS image provided by Medion, and he's confirmed the control mechanism idiosynchracies are contained in the BIOS .BIN file.

So it doesn't really matter if it's a cock-up or conspiracy - fact is if I use any of the OEM's official BIOSes then the fan control and CPU temperature at BIOS level is all over the shop - and although the functionality exists on the board for me to manage these options properly if I hack about with the BIOS menus the inherent flaws within that ROM image mean that I can't enable them without breaking something else.

Zubin,

The motherboard I referred to does not have firewire capability, amongst other things. It does however have exactly the same chipset, clock control, timer etc. So there's a possibility I can port the menus over but I would probably lose functionality.

The board does not have dual BIOS so I am erring on the side of caution throughout.

 
Any news on the old CPU fan and thermistor?
Better than that!

After trying all variants of the BIOS I was able to source off the web I started playing with the BIOS itself. I was able to enable the functions I was looking for but only in a manner which knackered the rest of the BIOS menu.

Over the weekend I got hold of a burnt out board from another Philips Freeline unit and had a look at the BIOS chip on it to see if that was still working.

By sheer good luck it was - but not only that, it had a Philips branded variation of the BIOS which I've never seen before. And by an even bigger stroke of luck, it actually had the options all enabled on it. So it's quite likely that the board in my Freeline had been replaced with a generic OEM board, not one from Philips.

On top of that, this BIOS is reading the temperatures correctly, where all the other BIOSes didn't. It's idling nicely at 45º with the CPU fan at 1000rpm and tops out at 62º with the fan at 100% (3600rpm).

So, problem solved! I can now take my time over pulling that BIOS to bits and seeing what's different between that and the MSI/Medion versions of the BIOS which patently don't work half as well.
Awesome news!

But... you have to keep us updated on the new, productive detective work.

Hmmm...  you got your own blog to post the latest?  You could always keep posting to this question, even if it's closed.

Anyways, lots of brain surgery and rocket science going on here.

- gurutc
Hi,

It's probably out of the scope of this E-E question given that it'll probably take a few months to get to the bottom of it, but there's a possibility I might be able to discuss my progress on the Rebels Haven forum (which is where some real low-level BIOS wizardry is being discussed).

Cheers for the help, everyone.
I've closed the question and allocated points in what I think's a fair manner based on contributions to the discussion.

Even though technically I solved the issue myself (by rather unorthadox means!) I think you all covered the majority of things that anyone's likely to have to think about when tackling a problem like this, so I've suggested it be added to the Knowledge Base.

Thanks to all!
I will update this Q if I get a definitive answer, though!
What is the model # of the freeline motherboard you picked up.
The fact that the other BIOS has been identified as a Medion BIOS seems to point towards your suspicions that the motherboard has been replaced.
I have to ask-->Did the old fan have a thermistor?
Yes it did have a thermistor and it does react to temperature fluctuations (if I slow the fan down, it increments exactly as I would expect). To all intents and purposes, the readings are ~30º lower with the Philips Freeline board.

The model number is EXACTLY the same on the Philips Freeline board I picked up, as was on the replacement board. Only the BIOS (Medion) was different.

Both are MS-7046 Rev 1 boards, and look exactly the same as shown here (even the text labels are the same).:

http://www.bss-computer.de/eBay_Sachen/e_Bilder/Boards/7046%20Sockel%20775/MS7046%201.jpg
Interesting, The thermistor explains the lack of BIOS settings but weird how the two boards have different BIOS's.
Thanks for the points, you never know where these questions will lead.
Thanks for the points tstaddon,
Could you please point me to the sites you got the info on how to customize BIOS menus.
Cheers
Hi,

A good place to start is here:

http://www.rebelshavenforum.com/sisubb/ultimatebb.php

Go into the BIOS workshop and you will find out a lot about the various tools and tips. Bear in mind that wizardry of the highest (and proudest) order is going on in there - some of these guys have even injected brand new features into their own BIOSes.

Me being a bit of a safety-conscious geek who's fairly new to the game, I've only got as far as changing the menu orders, putting in my own fullscreen boot logos, and embedding a DOS boot routine into a BIOS. All on a system which is past its sell-by date. All this can be done without the use of a hex editor, but as always when it comes to faffing with the BIOS, err on the side of caution, and always  have a spare BIOS chip kicking about. After all, you can't rely on a bootblock with a working floppy disk drive (and disk!) these days and if you don't have a spare BIOS chip then that's your only alternative.

As a very quick primer:

Modbin is the tool through which you can enable existing BIOS options. If it's a Phoenix / Award 6 BIOS then you would use Modbin 6 v2.01.01 but there are older versions if the system has a 4.x BIOS.

CBROM allows you to "unzip" the BIOS.

Award BIOS Editor is a defunct Windows app which will probably not be very good for menu editing unless it's a very old BIOS. But even with the latest BIOSes you can open up a BIOS image file and have a look at what's in it.

I have a thread on there myself, primarily for the benefit of other people who are looking at the different OEM BIOS variants I encountered....

http://www.rebelshavenforum.com/sisubb/ultimatebb.php?ubb=get_topic;f=52;t=000105