Electronic – PC Fan PWM signal circuit using 555 timers: Can anyone explain this circuit to me

555fanpwm

I'm looking at building a 4-wire PC fan PWM circuit. The goal of such a circuit is to send a PWM control signal to a 4 wire PC fan, so that the fan can modulate it's speed (NOT to pulse the 12V supply).

One circut for this that is widely cited is the 556 based circuit located far down on this page. The circuit looks like this:

enter image description here

I can't for the life of me see how this circuit can work. My understanding of the goal such a circuit is (per the specs here) to produce a stream of pulses at 25kHz, and to vary the width of each of those pulses.

This circuit has the pot tied into Trig1, so as far as I can tell it'll vary both the width of the pulses as well as the frequency of the pulses? Or do I just not understand it (won't be a shock).

I would have assumed that one should build an astable 555 triggering at 25kHz, and then feed that into a monostable 555 that varies the pulse width?

Side note: If this circuit isn't the best approach for a fan PWM, can anyone recommend a better one?

Best Answer

One of the 555 timers in the 556 is used as a typical PWM generator. The second 555 is used to buffer the output according to that article. You may only need the single 555 circuit detailed in the first part of the article.

The effect of the pot is to vary duty cycle from about 5%-95%. The frequency will be based on the resistor, pot, and cap values, and held fairly constant (although there will be some slight frequency variation as the duty cycle changes). The diodes types (forward drop) will affect frequency also. This article may explain the operation more clearly.

You could set up two 555s (or a 556) as you described to maintain frequency if needed. I think a fan would work fine with the frequency changing over the range produced by the circuit as shown.

There are more elegant solutions to this (a microcontroller would probably be best), but 555 is most likely the simplest solution you would fine, and probably more than sufficient for the application.