3-Wire PC Fan @ 5Volts + PWM

Thread Starter

Mad Professor

Joined Apr 15, 2009
133
Good Day All.

I want to control the fan speed of my server with ref to the internal temp, but I have come across a problem.

The server monitors the fan speeds at all times, if the fan(s) stop or start giving strange readings the server will shut down, this can not be adjusted in the servers bios.

Wile testing I have been able to lower the fan speeds right down by using the 5v rail and not the 12volt rail, the server has no problem with this.

As I want to control the fans speed with ref to the temps, I tried running the fans via PWM, The fans do run fine, but you can here a high pitch squeel form them, but the server does not like this and shuts down.

So is it possible to hold the fan at 5volts, and then using PWM to give me a range from 5-12volts, so that the fan has always go at least the 5volt when the PWM switches off.

Thanks for your time.

Best Regards.
 

BMorse

Joined Sep 26, 2009
2,675
From my experience, letting the bios control the fan speeds is the way to go, usually you can set a "Smart Fan" feature and the mobo will monitor the fans according to system temperature automatically.

Or you can swap out your fans for some more "silent" ones if noise is the issue....
 

Thread Starter

Mad Professor

Joined Apr 15, 2009
133
BMorse: Thank you for your reply.

Yes you are right most modern computers / server do indeed had Smart Fan, but this is quite an old server so does not have that feature.

As for changing fans that is possible, but as this is a U1 Rack Server and the fans are quite small 40x40x28mm, 9500rpm, 41.9 dBA, and has a total of 3 fans, so when fired up is very noisy.

I could go for some lower rpm fans, but I don't want to take the risk of over heating, that is why I want to keep the standard fans, and use temp based pwm.

I am going to be using a PIC chip to monitor the temp of the CPU, HDD's and air temp inside the server, and then control the fans via PWM.

But I don't know how to go from a 0v-12v pwm, and have a 5v-12v pwm, so even when there is no pwm the fan is still getting it's 5volt and running at a low fan speed.

Can you please advice?

Thanks for your time.
 

BMorse

Joined Sep 26, 2009
2,675
is there anyway you can disable the fans in the bios (cmos settings)? that way you can fabricate your own Temp based PMW fan driver circuit, since you said you will be using a pic, this should be simple enough to implement if the fans can be disabled in the cmos, then you can just disconnect the fans from the mobo, and connect them to your own circuit. You should be able to draw the 12 and 5 volts from an extra 4 pin molex power connector from the servers PSU.

here is a basic circuit based on a LM56 by National Semiconductor >>>http://www.edn.com/archives/1997/092597/20di_04.htm#Figure 1

and here are some examples based on Maxim's MAX1669 fan controller IC >> http://www.maxim-ic.com/app-notes/index.mvp/id/1784

Hope these would help......

My .02
 

Thread Starter

Mad Professor

Joined Apr 15, 2009
133
BMorse: Thanks again for your reply and time.

The server in question is not a PC based server, so does not have the standard kind of bios that you can just into and adjust.

The only kind of bios this server has is via the serial console port, and only adjusts the boot drive ect, So there is no way of disableing the fan monitoring.

When the server is running you can log into the web based GUI and see the current CPU, and all three fan speeds.

I have just been looking at the mainboard of the server, and can confirm what all the fans are powered directly to the ground and 12v rails.

But also wile looking at the board I can see that the board is using a Analog Devices ADM1029A (Dual PWM Fan Controller and Temperature Monitor).

From what I can see, it looks like they are only using the monitoring side of this chip, So it might be possible to interface with this and get PWM fan control.

But the 1st thing I have noted is that I have 3 fans in the system and this ADM1029 is a Dual Fan chip, and all 3 fans are monitored in the web based GUI, So I am not sure what is going on there.

So I need to try and work out what is monitoring the temps, and what is monitoring the fan speeds.

Thanks for your time.

Best Regards.
 
Last edited:

Thread Starter

Mad Professor

Joined Apr 15, 2009
133
I have just scoped the two tach pins on the ADM1029A chip, and it does not look like is it monitoring any of the fans, so I don't know what this chip is doing.
 

Thread Starter

Mad Professor

Joined Apr 15, 2009
133
After thinking about this some more, it does not seem possible to monitor the system temp or control the fans with the moding hardware in the server.

The only thing left to do it make an add-on card that monitors the system temps and controls the fans.

I have been looking around the internet to see if anyone on the UK sells the 4wire PWM Fans in 40x40x28mm size, as this would be easier to control, but as of yet have been unable to find anywhere.

I am going to have to keep to the 3wire fans that are already fitted.

Also the servers are U1 in size; the room inside the units are very limited so my new control PCB has to be the max size of 70x50mm.

I was going to have three temp sensors, one controlling each of the fans, but I have decided to still use three sensors, but to control all the fans at once based on the highest temp reading.

I am looking at using a Picaxe 18X (PIC16F88) to do all the work, as this has three ADC inputs and a single PWM out port.

If I was to do simple low side switching this would be easy, but as said before I need to hold the fans at 5volts or just over so it is always powered, and just spinning to get the server a stable tach signal.

So I have to do high side PWM switching of 5-12volts instead of doing the normal 0-12volts.

So far this is the design I was going to use.



I was going to have a driver output for each fan, but as said above I only have 70x50mm max of PCB space, so I would like to drive all three fans with only one output driver.

What do you think is the best way I should now go about this?

Thanks for your time.
 
Last edited:

BMorse

Joined Sep 26, 2009
2,675
what about using some IC's like the DS1721 Digital thermometer (or similar, I am sure they have something newer for this application) inside the case to monitor temp and control the fans??
 
Top