Kamikaze CPU fan - ONLY in XP and if no 3rd party tools are installed!

T

tstaddon

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 have 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 its highest speed. If, however, I boot into XP then as the
startup screen appears the CPU fan slows down to 788rpm (lord knows
why) 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" 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 can someone
please suggest how to proceed.
 
B

Bob I

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 have 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 its highest speed. If, however, I boot into XP then as the
startup screen appears the CPU fan slows down to 788rpm (lord knows
why) 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" 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 can someone
please suggest how to proceed.

MSI should provide a fan control utility for the motherboard. Microsoft
doesn't.
 
B

Brian A.

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 have 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 its highest speed. If, however, I boot into XP then as the
startup screen appears the CPU fan slows down to 788rpm (lord knows
why) 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" 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 can someone
please suggest how to proceed.


I must be tired, your board doesn't exist according to MSI.
http://www.msicomputer.com/product/p_search.asp

Have you tried installing the software PC Alert for the board?

In the BIOS under Advanced Chipset Features is there a Delay Prior to Thermal
setting?
Under Power Management Setup is there a CPU THRM-Throttling setting?
Is there a PC Health Status setup page?

--

Brian A. Sesko { MS MVP_Shell/User }
Conflicts start where information lacks.
http://basconotw.mvps.org/

Suggested posting do's/don'ts: http://www.dts-l.org/goodpost.htm
How to ask a question: http://support.microsoft.com/kb/555375
 
P

Paul

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 have 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 its highest speed. If, however, I boot into XP then as the
startup screen appears the CPU fan slows down to 788rpm (lord knows
why) 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" 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 can someone
please suggest how to proceed.

The motherboard will have a Super I/O chip, with a hardware monitor
section to it. The hardware monitor has tachometer inputs, fan voltage
output, temperature and PSU voltage inputs for monitoring.

The minimum a BIOS will do with such a setup, is program the scaling divider
for the fans. If improperly set, the hardware monitor page in the BIOS will
see the fan speed as zero. A fan speed is also measured as zero, if there is
no tachometer wire on the fan (a two wire case fan).

The next level of support, is if the motherboard has a fan speed control feature
at the BIOS level. The BIOS is clever enough, to know which temperature sensor
belongs to the CPU. The CPU temperature is used as a control input to the
CPU fan speed setting algorithm.

On some SuperI/O chips, there is a "cruise control feature" for fan cooling.
The SuperI/O chip has enough smarts, to actually adjust fan speed, based on
the temp sensor it has been told, belongs to the CPU. That feature requires
no further BIOS code execution, and neither does it need help from WIndows.

While in Windows, users use programs like Speedfan (almico.com), to access
the fan control. You could give that a try, to set the fan higher.

The reason Windows cannot handle this, is the mechanisms used are very much
non-standard. There are lots of exceptions out there, in terms of how the
SMBUS is accessed, what address the device is at, and so on. Motherboard companies
do not provide drivers for it. And some hardware monitoring devices are not
documented (to prevent motherboard clone manufacturing). And support is so
hard, that developers of free tools eventually tire of the thousands of hours
it took, to support the tool. MBM5 is dead and no longer supported. SpeedFan
is still under development (a Vista version was in the works). If the motherboard
or computer manufacturer won't help, then Speedfan is the first one I'd try.

If all else fails, wire the CPU fan to a four pin Molex power connector. You
can get adapter cables to do that. That will feed a full 12V to the
fan and run it full speed (assuming no other speed control features). The
Intel retail fan, has a temperature sensor in the hub, and the CPU fan
speed is sensitive to the computer case air temperature. So for the
retail fan, you will find it speeds up if the case gets hotter.

For adjustment of the fan speed, if wiring it straignt to the power supply,
products like Zalman Fanmate II provide the ability to adjust the voltage
to the fan a bit. Voltages between 7 and 12V are recommended, to guarantee
that the fan will begin to spin when the computer first powers on.

http://www.newegg.com/Product/Product.aspx?Item=N82E16835118217

Paul
 
T

tstaddon

Hi,

Thanks for the replies.

Just to cover the points:

Bob: You are right, but playing devil's advocate here... Microsoft
were pushing for ACPI to become the de-facto standard for new
motherboards, a long time ago. They have a standard interface for
accessing the motherboard sensors.

For that reason, IMO it's a very surprising omission for Microsoft to
make - to develop APIs to pull sensor readings off the motherboard,
but then to avoid doing anything with them on the basis that this is
the mobo manufacturer's job.

Brian: There is a CPU THRM-Throttling setting but it's only there
because I modded the BIOS and put it in! It's one of the few
configurable options that can be made visible on this board - even H/W
Monitoring, while available in the BIOS ROM itself, is completely
locked out of the user interface. This is a manufacturer override and
to be honest I cannot for the life of me figure out why MSI did that
on boards sold to OEMs in Europe, particularly Advent and Medion, for
use in SFF PCs (which are by definition more prone to cooling issues).
Mine's a Philips Freeline LS2100 by the way. As for MSI specific
software; I've got something on there that monitors the drivers but I
haven't seen a hardware monitoring tool for this board.

Paul: Thanks very much for the detailed information.

My motherboard isn't directly supported by SpeedFan, MBM5, or CPUCool,
so the functionality of these tools is limited. Even so, I can at
least switch the fan back to full speed before the processor gets
toasted (CPUCool seems to be more reliable than SpeedFan though).

Windows on its own would merrily leave the fan idling at 7% of its
maximum speed.

Here's my beef. Even without these third party tools I can check the
CPU temperature and fan speed, and force a shutdown of my PC if it
overheats, with nothing more complicated than writing a couple of
dozen lines of VB script in NOTEPAD. Clearly there IS an interface to
these sensors... I've been using WMI/WBEM for "basic" low level
monitoring for years.

I stress again: it is ONLY XP that seems to require me to do something
as drastic as this. If I boot into DOS/Win9x, or Linux, or even into
Windows 2000 using a standard non-ACPI HAL, on the exact same PC, the
CPU fan just does what it's supposed to do - ie leave the fan running.
Only in XP do I see it slow down to a crawl and remain idling till
either I reboot the machine or it switches itself off due to
overheating.

If Windows has absolutely no hand in this whatsoever, then why is it
the ONLY operating system which suffers from this issue and is also
the only one where I have to fall back on a third party tool to solve
it?
 
P

Paul

Hi,

Thanks for the replies.

Just to cover the points:

Bob: You are right, but playing devil's advocate here... Microsoft
were pushing for ACPI to become the de-facto standard for new
motherboards, a long time ago. They have a standard interface for
accessing the motherboard sensors.

For that reason, IMO it's a very surprising omission for Microsoft to
make - to develop APIs to pull sensor readings off the motherboard,
but then to avoid doing anything with them on the basis that this is
the mobo manufacturer's job.

Brian: There is a CPU THRM-Throttling setting but it's only there
because I modded the BIOS and put it in! It's one of the few
configurable options that can be made visible on this board - even H/W
Monitoring, while available in the BIOS ROM itself, is completely
locked out of the user interface. This is a manufacturer override and
to be honest I cannot for the life of me figure out why MSI did that
on boards sold to OEMs in Europe, particularly Advent and Medion, for
use in SFF PCs (which are by definition more prone to cooling issues).
Mine's a Philips Freeline LS2100 by the way. As for MSI specific
software; I've got something on there that monitors the drivers but I
haven't seen a hardware monitoring tool for this board.

Paul: Thanks very much for the detailed information.

My motherboard isn't directly supported by SpeedFan, MBM5, or CPUCool,
so the functionality of these tools is limited. Even so, I can at
least switch the fan back to full speed before the processor gets
toasted (CPUCool seems to be more reliable than SpeedFan though).

Windows on its own would merrily leave the fan idling at 7% of its
maximum speed.

Here's my beef. Even without these third party tools I can check the
CPU temperature and fan speed, and force a shutdown of my PC if it
overheats, with nothing more complicated than writing a couple of
dozen lines of VB script in NOTEPAD. Clearly there IS an interface to
these sensors... I've been using WMI/WBEM for "basic" low level
monitoring for years.

I stress again: it is ONLY XP that seems to require me to do something
as drastic as this. If I boot into DOS/Win9x, or Linux, or even into
Windows 2000 using a standard non-ACPI HAL, on the exact same PC, the
CPU fan just does what it's supposed to do - ie leave the fan running.
Only in XP do I see it slow down to a crawl and remain idling till
either I reboot the machine or it switches itself off due to
overheating.

If Windows has absolutely no hand in this whatsoever, then why is it
the ONLY operating system which suffers from this issue and is also
the only one where I have to fall back on a third party tool to solve
it?

Weird and interesting :) I took a look in several versions of ACPI
specs (www.acpi.info), and a fan object has been in there from the
start. I never noticed it before (doc is too thick to read from
end to end).

Now, on my machine, I can find an entry in machine.inf for PNP0C0B
for fan control. Yet, if I use Everest, and list PNP objects in there,
the fan control is not listed. It is like there is some "glue" missing
somewhere. It would suggest the ACPI table may have passed the info
to the system, but it isn't being used.

In my machine.inf file, the reference to PNP0C0B, associated it with APM ?

%*PNP0C0B.DeviceDesc% = NO_DRV, *PNP0C0B ; APM FAN

When I look in Google, most of the references to this stuff, is for
Linux. There isn't much for Windows. I even tried PNP0C0B on the KB,
but didn't get anything.

Also, some comments I saw, where this stuff was working (laptops),
stated that the threshold is set way high. Which means
your computer will be dead and buried, before that threshold is
reached.

I'll have to do a bit more research and get back to you.

With so many people looking for fan control programs, it suggests that
this stuff doesn't work for at least some people. I hope some blog
somewhere makes reference to how much of this stuff is working in
desktop, or in laptops. Maybe it is a power management scheme thing,
and related to the power management scheme you select ?

Another puzzle that comes to mind, is what does the author of
Speedfan do in this situation. In a computer, you only want one
piece of software controlling hardware at a time. The very notion
of reaching down to the hardware monitor chip, fiddling the controls
and changing the fan, would violate the ownership of the resource by
ACPI. There is a disconnect here somewhere.

Hmmm. Gets more interesting...

http://www.bugtrack.almico.com/print_bug_page.php?bug_id=314

http://tamaru.homeip.net/~shingo/mobilemeter/mobilemeterreadme1.htm

"ACPI must be used for CPU temperature control. This may be true
depending on how the system is designed. This is not true in most
desktop PCs, but true in some laptop PCs."

http://www.geocities.co.jp/SiliconValley-Oakland/8259/release/0310/mm0310.zip

I tried the Mobilemeter and got nothing interesting. It lists my CPU
frequency and my HDD temperature. Nothing related to the hardware
monitor chip is shown.

Paul
 
T

tstaddon

Thanks for the info - I suppose the next step will be for me to try
out Vista and see if it suffers from the same problem - or failing
that, have another play with the BIOS.
 
B

Brian A.

Hi,

Thanks for the replies.

Just to cover the points:

Bob: You are right, but playing devil's advocate here... Microsoft
were pushing for ACPI to become the de-facto standard for new
motherboards, a long time ago. They have a standard interface for
accessing the motherboard sensors.

For that reason, IMO it's a very surprising omission for Microsoft to
make - to develop APIs to pull sensor readings off the motherboard,
but then to avoid doing anything with them on the basis that this is
the mobo manufacturer's job.

Brian: There is a CPU THRM-Throttling setting but it's only there
because I modded the BIOS and put it in! It's one of the few
configurable options that can be made visible on this board - even H/W
Monitoring, while available in the BIOS ROM itself, is completely
locked out of the user interface. This is a manufacturer override and
to be honest I cannot for the life of me figure out why MSI did that
on boards sold to OEMs in Europe, particularly Advent and Medion, for
use in SFF PCs (which are by definition more prone to cooling issues).
Mine's a Philips Freeline LS2100 by the way. As for MSI specific
software; I've got something on there that monitors the drivers but I
haven't seen a hardware monitoring tool for this board.

If you can't find PCAlert for download on the MSI site, I have it and can put it on
a web page for you to download. It's a 4,445 KB zip file.


--

Brian A. Sesko { MS MVP_Shell/User }
Conflicts start where information lacks.
http://basconotw.mvps.org/

Suggested posting do's/don'ts: http://www.dts-l.org/goodpost.htm
How to ask a question: http://support.microsoft.com/kb/555375
 
T

tstaddon

Hi,

I've got PC Alert now.

Just for fun, I've managed to visually enable the hidden BIOS options
- but only by mucking about with the BIOS menu order. This totally
screwed up the other menu options but did give me the functionality I
needed to ensure the fan doesn't slow down immediately after POST.

I'll carry on playing and update this dicussion later.
 
T

tstaddon

Hi,

I've got PC Alert now.

Just for fun, I've managed to visually enable the hidden BIOS options
- but only by mucking about with the BIOS menu order. This totally
screwed up the other menu options but did give me the functionality I
needed to ensure the fan doesn't slow down immediately after POST.

I'll carry on playing and update this dicussion later.

Well, I finally cracked it! 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. Then I got hold of a
burnt out board from another 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 (hurrah!) actually had the options all enabled on it.

So, problem solved!
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top