Intel's 4-pin "PWM" Connector

DIY Fan Controller for PWM Fans

Add Your Comments

Intel's 4-pin "PWM" Connector

Intel's 4-pin "PWM" Connector

Introduction

I’m sure that most hardware enthusiasts are no strangers to dalliances with DIY, whether it be case modding, component modding, or custom cooling.  However, when it comes to building parts of your computer from scratch, the tally of enthusiasts who can claim this prestige most certainly diminishes.  Fortunately this neat fan controller project requires only a little time, expense, and commitment, and the circuit is relatively easy to build and very satisfying to use!

First Things First…What is PWM?

PWM stands for Pulse Width Modulation and is, among other things, a very clever means of controlling power to electrical devices: in our case a DC (direct current) fan motor.  Although you don’t need to understand the ins and outs of PWM, it helps to have an rough idea about how PWM works, so here’s a very quick explanation.

Think of a PWM signal as if it were a beating heart.  Rather than being powered by a continuous supply of power (which would ordinarily be the case) our DC fan motor is being fed with pulses of power; it is essentially being switched on and off very rapidly.  These on-off pulses are delivered to the motor several thousand times per second, and because the intensity (or width) of each pulse can be changed, so the speed at which the motor turns can be changed.  The image below shows how different pulse widths affect the resulting power of the PWM signal:

Three different PWM signals showing average voltage

PWM Controllers vs. PWM Fans

There are PWM controllers and there are PWM fans, but the way in which PWM is implemented in each differs greatly:  a standard PWM controller modulates the 12 V supply line of an “ordinary” 12 VDC motor. Conversely a PWM controller for PWM fans – such as the one featured in this article – doesn’t modulate the 12V supply line but instead sends a PWM signal along a different supply line (the magic “fourth wire”) to a more advanced 12 VDC motor, leaving the 12 V supply line uninterrupted.  Designated PWM fans not only have internal circuitry which differs from that of standard fans, but because they are designed with speed control in mind the motors themselves are usually more advanced (and expensive).  So, PWM speed control of a standard fan is indeed very different from PWM speed control of a PWM fan…  Nidec even goes so far as to say that modulating the main supply voltage is not advisable:

Pulse-width modulation of DC operating voltage to modify fan speed is not recommended. Transients generated by that approach can irreversibly damage motor commutation and control electronics and dramatically shorten the life of a fan.

The Circuit

Here is the circuit which was originally obtained from Nidec’s website, although I found it in the overclockers forum:

Nidec's Simple PWM Circuit

Nidec's Simple PWM Circuit

Components

  • 555 Timer IC (Integrated Circuit)
  • Capacitors:  C1 0.01 μF; C2 680 pF; C3 10 μF; C4 0.1 μF
  • Resistors:  R1 1k
  • Potentiometers:  P1 100k
  • Diodes: D1 & D2 1N4148

Building the Circuit

Now before you allow yourself to become intimidated by the above schematic and all these different components, make sure you are taking a calculated approach to the process of putting the circuit together.  The best thing to do is to take it one step at a time. Having done it myself (several times),  these are the steps that I find most conducive to hassle-free workflow:

  1. Plan your circuit on a piece of paper, familiarizing yourself with each component (learn what it looks like and what it does) and the layout of the circuit, and taking time to arrange it in such a way that it is clean and clear.
  2. Working from your plan, carefully assemble the circuit on a breadboard.
  3. Check and re-check all the connections.
  4. Connect the circuit to a power source – preferably a spare power supply that is not hooked up to a PC – and check to see if it works.
  5. Debug (identify problems and deal with them) if necessary.
  6. Again referring to your circuit plan, assemble the circuit on stripboard.
  7. Work on the presentation of your controller – eg., put it in a project box or into a drive bay.

Step 1:  Organize Your Components and Print a Plan of the Circuit

These are all of the components you need for the circuit

These are all of the components you need for the circuit

So, now you know what each component looks like.  Once you have your components arranged spaciously on an uncluttered flat surface (as above), get your breadboard ready!

Step 2:  Breadboarding

Components set out ready for breadboarding

Components set out ready for breadboarding

The wonderful thing about breadboarding is that it doesn’t have to be neat or tidy…or even compact.  The point of breadboarding a circuit is to give you, the “beta tester”, easy access to each and every component and connection, allowing you to quickly sort out problems and get your circuit up and running without having to worry about making permanent connections.  Here are a few simple pointers:

  • Take your time and keep your work area uncluttered.
  • Make sure your hands and fingers are clean before you start.
  • Use single-core wire for good connections to the breadboard tracks.
  • Leave some room around each connection/component to reduce the risk of shorting.
  • Remember to firmly press (but not force) the components and wires into place.

Step 3:  Check and Re-check the Connections

Carefully check that all terminals and pins are seated correctly

The reason this step is so important is that you are checking the connections solely with the power of observation; the breadboard should not be connected to a power source yet, and it is crucial that you carefully check each connection before the circuit gets anywhere near live wires.

Step 4:  Connect the Circuit to a Power Source and Test with a Fan

Breadboarding done and testing in progress!

Breadboarding done and testing in progress!

Connecting the breadboard to a live power source is, and always should be, the last thing you do (especially if you are a n00b, like me).  It is also advisable to use a spare/unconnected power supply, because if you happen to be so unfortunate as to cause a short circuit using the PSU that is connected to your computer, it may seriously damage the PSU and/or one of your PC components.  I can attest to this – my first attempt at a fan controller some weeks ago fried my treasured £300 Foxconn motherboard.  The PSU is fine (and has survived at least three further short circuits), however my experience tells me that even a good PSU like mine which has commendable SCP (short circuit protection) doesn’t guarantee the well-being of your components.  You have been warned!

And remember:  This circuit uses 5v, NOT 12v.

Step 5:  Debugging

Digital Multimeter - a must for testing circuits and components

Digital Multimeter - a must for testing circuits and components

Circuits generally don’t work the first time around, so be patient and acknowledge that you will probably have to do some debugging somewhere along the line.  It’s not a big deal, and although it may involve a fair bit of work, don’t worry about it – I had to debug my circuit (and in some ways I am still debugging it), and I had the overclockers.com forum community helping me every step of the way as I’m sure they will help anybody else who seeks assistance.  To make your life is a lot easier, get a digital multimeter if you don’t already have one.

Step 6:  Stripboard, Solder, and Sweat

My stripboard layout, created in MS Paint

My stripboard layout, created in MS Paint

When the time comes to make a proper circuit using scary grown-up tools like a soldering iron and a pair of wire cutters, it is definitely worth your while planning the layout of your circuit once again and trying to make it as compact as you can.  If you have space on your stripboard you might want to consider soldering a 4-pin fan header onto it to keep the controller tidy and practical.

The layout that I chose (above) is almost identical to the schematic of the circuit, which helped a great deal when the time came to put the circuit together and make sure all connections were made in the right place.  Stripboard has copper tracks that run along the underside of the board, so you must plan your circuit to accommodate these tracks and remember to break the tracks where necessary.  Here is a picture of the underside of my stripboard where the 555 IC is, hence the broken tracks:

Breaking tracks in the stripboard

Breaking tracks in the stripboard

Here is a picture of what is possible if components are extremely well laid out – this particular circuit was built by Martinm210 at overclockers.com forums and features a slightly different PWM generator using a 556 IC (two 555’s in one package) – see below for a schematic of this circuit:

Martinm210's PWM generator

Martinm210's PWM generator

Step 7:  Presentation

This is the icing on the cake.  You have finished your controller, but you don’t like the bedraggled morass of wires and terminals sitting beside your uber-modded and meticulously maintained gaming rig… so what should you do?  There are a number of answers, and it really comes down to what you want to use the controller for.  I use my controller for testing (well, playing with) very powerful PWM fans, so I packed it up inside a neat little project box to make it look a little more sophisticated and to make it more practical too:

The finished PWM controller

The prototype PWM controller

Project in a project box

Project in a project box

Developing the Circuit

As it is, the circuit should work well with most if not all PWM fans that you are likely to find in a hardware enthusiast’s box of tricks.  If, however, like me (and a few others) you want to engage in some turbulent tomfoolery with ludicrously powerful 12VDC fans (see below), you will need to boost the PWM signal or create a different PWM generator altogether which uses a 556 timer instead of a 555.  The circuits described below are featured in this exciting thread at overclockers.com forums.

Using Two 555 Timers

Here is a schematic of the dual-555 PWM generator.  This circuit boosts the existing PWM signal using an “inverted schmidt buffer” which was suggested by bing at overclockers.com forums:

A more powerful PWM generator

A more powerful PWM generator

Using the 556 Dual Timer

The 556 timer is a single 14-pin package which contains two 555s.  If you would rather build the more powerful 556-based PWM generator like the ones Martinm210 and Brutal-Force put together, here is the schematic (again, courtesy of bing):

556 Dual Timer circuit

556 Dual Timer circuit

(Components are identical to the 555 circuit but are labeled differently in this schematic:  C1 = 680pF; C2 = 0.01 μF; C3 = 0.1 μF; C4 = 10 μF, polarized.  There is also an extra resistor (R2) which has a value of 10K.)

The 556 Circuit on the breadboard

My 556 Circuit @ breadboard

Complete 556 circuit on a stamp-sized piece of stripboard

Complete 556 circuit on a stamp-sized piece of stripboard

Simple 4-pin Molex interface for the PWM controller

The box for the 556 circuit, complete with stylish aluminum pot and Molex connector for convenience

Two 4-pin fan headers for now

The business end of the controller - for me, two fan headers are plenty

Monstrous 260CFM 48W San Ace PWM Fan

Monstrous 260CFM 48W San Ace PWM fans

Final Thoughts and Video

First and foremost, make sure you take your time if you decide to build this (or any other) circuit for use with your system – working with electricity is hazardous (and if not for you, certainly for your hardware!) so be careful.  I’ve shorted my PC (yes, my entire system) no fewer than FOUR TIMES since I started messing around with DIY fan controllers, and unfortunately one of these shorts fried my prized Foxconn X58 motherboard.  Suffice to say, I have been more cautious since.

On the plus side, these fan controllers are a lot of fun and can be very useful if you regularly benchmark your system and require powerful cooling at the touch of a button (as I do).  Here’s a short video which shows the capabilities of the 556 circuit when paired with some seriously powerful 120mm fans…

Thanks

Primarily I’d like to thank I.M.O.G. for playing such an important role in my PWM fan projects (he organized the purchase and international shipping of the San Ace fans for me – top dude!) and for giving me the opportunity to write this article.  I’d also like to thank Brutal-Force for his videos and his thread which inspired me to make a PWM fan controller in the first instance, and resident electronics expert, bing, who freely shared his electronic expertise and offered valuable assistance throughout the learning process.

– Dave (LennyRhys)

Leave a Reply

Your email address will not be published. Required fields are marked *

Discussion
  1. kennyevo
    It's a good idea to ask a company to build a pcb for you, but I don't know any in my country :/

    Now that the circuit is working, the only question I have in my mind is: How can I flip the work of the potmeter, so it increasing to the right?

    Thanks in advance :)


    Zot Engineering in Scotland build my surface mount stuff on pick and place assembly machines that test the components as they are assembled and also use vapour phase reflow for soldering, pretty cool, Both In the sense that it is nifty and very precisely temperature limited by the phase change of the liquid medium used in the reflow oven. Your components don't get cooked, reduced thermal shock blah blah etc....

    If you give them a bill of materials they source all your components for you aswell as using their buying power in China to get a favourable price.

    They make Printed circuits for you too.

    The best thing is that they do low volume work so you can prototype stuff without committing to a big batch.

    I'm not sure what kind of volume you were thinking but making ten circuits costs about the same as making 500, you just do more panels.........

    The Sheetmetal Division can make you enclosures or a bit of bent metal for a drive bay if you want.

    Its kind of a one stop shop for this kind of low volume work.

    http://www.zot.co.uk/

    I'm very interested in getting hold of some cheap and reliable PWM controllers for high amp (3-5 amp)fans. The market is there its just not big enough for Corsair or whoever to bother with. Why do think you find so many little threads all over the internet that talk about 555 timers and DIYing TRUE PWM controllers, not the crappy low amp per channel fake PWM over 3 pins people are trying to flog you all over the place.

    I suppose it might be fun to get together and do a refined design and sell a few, see how it flies?

    Anyone up for it?

    lol.

    :)

    Hmmmm, Britain is leaving the EU.......
    NiHaoMike
    Try connecting the fans directly to the output of the 555?


    I played around with the C2 capacitor value a little bit and noticed that my fans had a wider range with lower values. I ended up using a 100pF capacitor instead of a 680pF or even a 470pF. It must have something to do with frequency and the number of fans that I have. Who knows.
    I'm using 4 San Ace 40mm x 40mm x 56mm counter-rotating fans that I pulled from an old server. My fans are each 12V, 1.2A and are powered by a 12V, 8.3A power supply. The fans are running in parallel.

    I set up this circuit using the dual 555 timer setup. It is powered by a 5V, 0.5A USB power supply. In theory, the only difference between my circuit and the one shown is the the 680pf capacitor. I used a .01 uf capacitor because I could not find the 680uf at my store and didn't feel like paying shipping for one component.

    The setup works great when I have the PWM signal going out to a single fan. With the potentiometer dial all the way to one side, I can get full RPMs. With the dial all the way to the other side, I can get very low RPMs.

    When I add a fan in parallel, I can run both fans at full RPMs with the dial turned all the way to one side, but the fans cut out before I'm able to turn the dial even half-way towards the other side. In other words, with two fans in parallel, I am not able to use the full range of the potentiometer without the fans stopping. I also noticed that the the further I turn the potentiometer's dial away from full RPMs, the less constant the RPMs of the fans seem to be. There is a consistent audible change in fan pitch.

    My best guess is that I (1) screwed up the circuit is some minor way, (2) don't have enough current for the PWM (which seems very unlikely), (3) grounded the PWM circuit incorrectly, or (4) I am not truly in parallel like I thought.

    Does anyone have any ideas?

    EDIT: Perhaps the PWM signal is degrading too much when connected to two fans. This is strange to me given that the connections are in parallel.
    aqd
    Hi, I've ordered all the required parts to create the multi-fan PWM signal generator using the 556 IC. I'm actually modifying an entertainment center to have variable speed cooling fans for a console replacement/HTPC ITX build. I'd like the fan array to run off of a 12V power power adapter plugged into the wall instead of a molex from the PC. My question is, can I use an L7805 5V regulator to step the voltage down for the PWM circuit running in parallel with the 12V fans. Would there be any issue tying everything back into the common/ground on the 12V wall adapter?

    Thanks for your help!

    Edit: My latest post in the original thread contains more specific questions and a circuit diagram made with MS Paint!

    http://www.overclockers.com/forums/showthread.php/641111-Building-PWM-Controller-for-4-wires-PWM-fan/page108


    Search for "common ground" in my recent posts.

    --

    I got so carried away by the fact that my entire controller works (except for that one PWM fan) that I forgot to post the final version of it! Here it is!

    1 through 4 are pot-controlled, P1 through P3 are PWM-controlled. The big knob on the right is for RPM readout selection (from which fan the PC reads the RPM signal). Enclosure from an old modem-router, vector graphics done in Inkscape, printed out on a regular office paper and laminated :)
    kennyevo
    It's a good idea to ask a company to build a pcb for you, but I don't know any in my country :/

    Now that the circuit is working, the only question I have in my mind is: How can I flip the work of the potmeter, so it increasing to the right?

    Thanks in advance :)


    you can flip the two diodes direction,

    or simply flip your pot connection
    WhitehawkEQ
    :rofl: There are 3 rules to breadboarding, 1. Check connections, 2. Check connections, 3. Check connections :rofl::chair:

    - - - Updated - - -

    Trim the wires and component leads so they don't get bent down and short on something else.

    p.s. Go back 2 pages and look at my board :rofl:


    It's a good idea to ask a company to build a pcb for you, but I don't know any in my country :/

    Now that the circuit is working, the only question I have in my mind is: How can I flip the work of the potmeter, so it increasing to the right?

    Thanks in advance :)
    WhitehawkEQ
    This got started way back in the 1800's when batteries were fist made, people thought that current went from + to -, when vacuum tubes came about, they found out that it went from - to +, but some people did not want to change their way of thinking, so we now have Conventional current flow (+ to -) and Real current flow (- to +).


    Blame Ben Franklin...while electrons flow from - to +, Ben created the "standard" that current flows from + to -. Electrons flow the "opposite" way through a diode, but by "standard" current flow, it goes in the direction of the arrow on the diode...anode (+) to cathode (-).

    Also, the electrolytic cap will not filter out all of the noise by itself (it doesn't look like a cap at higher frequencies). You usually put a 10 uF and 0.1 uF in parallel...the 10 uF for low frequency droops, and the 0.1 uF for high frequency noise.

    Also, if you are having noise problems, try twisting the power supply input wires to get as many turns per inch as you can (I used a drill in the old days). This will help cancel out noise from the power supply to and from the circuit.
    kennyevo
    Unfortunately I don't have the extra components this circuit needs, and the shop is closed by now :/

    I'm pretty sure that the breadboard circuit is good, but it just doesn't work. The fan connected to +12 and gnd, and the blue wire (pwm) goes to the pwm out.

    I could only make it change if I remove the 680pF capacitor and just connect that part to GND, :/ (I can switch the fan between two states with the potmeter)

    - - - Updated - - -

    OMG, I forgot to connect the PIN1 of the 555 to the GND -.-

    The breadboard circuit is working, time to find the issue with the stripboard version :D

    Thank you for everyone for the help!!!


    :rofl: There are 3 rules to breadboarding, 1. Check connections, 2. Check connections, 3. Check connections :rofl::chair:

    - - - Updated - - -

    kennyevo
    I'm not sure :D


    Trim the wires and component leads so they don't get bent down and short on something else.

    p.s. Go back 2 pages and look at my board :rofl:
    inVain
    if you happen to have two of the 555 (the 556 consists of two 555),

    I suggest you try the circuit here:

    http://www.overclockers.com/forums/showthread.php/641111-Building-PWM-Controller-for-4-wires-PWM-fan?p=6473318&viewfull=1#post6473318


    Unfortunately I don't have the extra components this circuit needs, and the shop is closed by now :/

    I'm pretty sure that the breadboard circuit is good, but it just doesn't work. The fan connected to +12 and gnd, and the blue wire (pwm) goes to the pwm out.

    I could only make it change if I remove the 680pF capacitor and just connect that part to GND, :/ (I can switch the fan between two states with the potmeter)

    - - - Updated - - -

    OMG, I forgot to connect the PIN1 of the 555 to the GND -.-

    The breadboard circuit is working, time to find the issue with the stripboard version :D

    Thank you for everyone for the help!!!
    kennyevo
    Okay, assembled the thing on a breadboard, if I remove the C2 capacitor it adjusts the fan but just a little :S


    if you happen to have two of the 555 (the 556 consists of two 555),

    I suggest you try the circuit here:

    http://www.overclockers.com/forums/showthread.php/641111-Building-PWM-Controller-for-4-wires-PWM-fan?p=6473318&viewfull=1#post6473318
    kennyevo
    Hi!

    I don't have a big breadboard, so I tried my luck with the stripboard :D

    I've followed the layout on this picture:

    Then cut the stripes on the back to make the connection as on this circuit diagram:

    I'll go to the nearest city and pick up a big breadboard, then try it again, I have enough components to make two of this simple 555 pwm generator.


    I hope your soldering is better than this:

    :rofl::chair:
    Bucic
    I'm a noob too but I did my share of troubleshooting this project. I'd gladly help but what you have posted is really hard to follow. Could re-create exactly the same physical connections using breadboard or Fritzing? Did the circuit work using breadboard?


    Hi!

    I don't have a big breadboard, so I tried my luck with the stripboard :D

    I've followed the layout on this picture:



    Then cut the stripes on the back to make the connection as on this circuit diagram:



    I'll go to the nearest city and pick up a big breadboard, then try it again, I have enough components to make two of this simple 555 pwm generator.
    kennyevo
    Hi!

    I've assembled the controller on a strip board, but it seems that the pwm signal doesn't change :/

    I'm using an AC Freezer64 Pro from a 12V source, and a step-down to supply the 5V to the circuit, if I plug the fan in it spins at max, when I plug in the pwm pin it slows down to minimum (I think), but there's no change when I adjust the potentiometer :/

    Any advice on how can I debug the circuit is welcome, I'm a total newbie in terms of circuits and soldering :(

    Here are some photos of the board and the setup, I've cut the lines with a yato knife.

    http://imgur.com/a/GsPMc


    I'm a noob too but I did my share of troubleshooting this project. I'd gladly help but what you have posted is really hard to follow. Could re-create exactly the same physical connections using breadboard or Fritzing? Did the circuit work using breadboard?
    Hi!

    I've assembled the controller on a strip board, but it seems that the pwm signal doesn't change :/

    I'm using an AC Freezer64 Pro from a 12V source, and a step-down to supply the 5V to the circuit, if I plug the fan in it spins at max, when I plug in the pwm pin it slows down to minimum (I think), but there's no change when I adjust the potentiometer :/

    Any advice on how can I debug the circuit is welcome, I'm a total newbie in terms of circuits and soldering :(

    Here are some photos of the board and the setup, I've cut the lines with a yato knife.

    http://imgur.com/a/GsPMc