# PWM Voltage for a Fan?



## andrewmchugh

12v

And the leads are

Blue - Control 0.8v to 5.25 - (from t-ramp )
Yellow - Rmp speed (monitor)
Red - +12v
Black - 0v ground


----------



## Arinoth

Does it have to be 12V, from my understanding PWM is due to the pulse width that the fan gets that controls the speed of the fan, however will this still work at say 5 or 9V?


----------



## t-ramp

I pulled up a PWM spec sheet and it says 5.25v maximum? I'll do a bit more reading...

http://www.formfactors.org/developer%5Cspecs%5C4_Wire_PWM_Spec.pdf


----------



## andrewmchugh

All board fan headers are 12V

page 9 in your pdf rampo


----------



## t-ramp

He's referring to the actual PWM signal, not the fan power itself.


----------



## andrewmchugh

Quote:


> Originally Posted by *t-ramp;14508858*
> He's referring to the actual PWM signal, not the fan power itself.


5.25 then ..


----------



## Arinoth

That I am, I have no cares about the voltage in itself as the PWM controls how fast the fan is suppose to spin. According to this document http://www.formfactors.org/developer%5Cspecs%5CREV1_2_Public.pdf

PWM Control Input Signal
he following requirements are measured at the PWM (control) pin of the fan cable conne
WM Frequency: Target frequency 25 kHz, acceptable operational range 21 kHz to 28 kH
Maximum voltage for logic low: VIL = 0.8 V
bsolute maximum current sourced: Imax = 5 mA (short circuit current)
bsolute maximum voltage level: VMax = 5.25 V (open circuit voltage)

If this is true then I should be golden as the Arduino outputs 5V and has a max output current of 40mA (though I doubt it'll pull that much)


----------



## andrewmchugh

Ahh right U want to write a program to control the the 0.25 - 5.25 control line to control the speed of fans... sorry.. I didnt read the op at all I only looked at the title

I read

I am thinking of ....Voltage .... standard case fan?


----------



## Arinoth

Yep, probably was a little misleading and I apologize for that.

I want to hook up my little arduino board with the PWM lines to the fans and control how fast they spin by writing two programs, one windows side and one arduino side, to allow me to do this. Its sort of a small proof of concept project to keep me busy once my fiancee gets a job and works different hours them myself.

Once I get that working, I could look into seeing if i can accurately read the RPM from the fans, though right now I could care less.


----------



## ARandomOWL

You want an open collector output from your microcontroller (ie. an NPN transistor with base to your uC through a resistor, the emitter to ground and the collector to the fan's PWM pin). The fan uses a pull-up to ~5V, you must pull it down to ground to create a low period for the PWM signal. Your microcontroller may well have built in open-collector outputs.

Useful links:
http://en.wikipedia.org/wiki/Pull-up_resistor
http://en.wikipedia.org/wiki/Open_collector


----------



## Arinoth

Well the uC I am planning on using claims to have about 6 output pins that operate/can be used for PWM. I'll look at the board's schematic for a bit and look up some components so I'm certain what I'm dealing with

http://arduino.cc/en/uploads/Main/arduino-uno-schematic.pdf

Also from their site

Each of the 14 digital pins on the Uno can be used as an input or output. They operate at 5 volts. Each pin can provide or receive a maximum of 40 mA and has an internal pull-up resistor (disconnected by default) of 20-50 kOhms.

PWM: 3, 5, 6, 9, 10, and 11. Provide 8-bit PWM output


----------



## ARandomOWL

A PWM output is not the same as an open collector output. You will need to connect a transistor to one of the PWM outputs as I described above.

The 40mA that the uC can source/sink is irrelevant to the PWM input of the fan. It is the current sink capability of the transistor that you should be looking at for that. But at these currents you don't need to worry about it anyway.

A generic 2N2222A or pretty much any other general purpose NPN transistor will do the job. A nominal 1K resistor in series with the base will be fine to ensure the transistor switches on fully whilst not drawing too much current through the base-emitter junction from the uC.


----------



## Arinoth

Well i'll need to check out and see what transistors I have kicking around and we'll see


----------



## xXSebaSXx

I know this thread is a week old, but this still warrants posting.

You can build a controller for PWM fans with as little as $10 in parts form RadioShack... I did. You can see it in action below...

[ame]http://www.youtube.com/watch?v=wJON56VHZIQ[/ame]

You can find schematics and instructions here: PWM Controller

The whole thing is basically: 1 x TLC556, 2 Diodes, 1 x Potentiometer, a few resistors, a few capacitors and some wire...

With that setup; you simply feed the fans 12V all the time and by turning the Pot you change the frequency of the PWM signal output from the 556 which controls the speed of the fan.


----------

