Building a 300W Fan Controller from an ATX PSU

What do you if you have more than 20x high speed fans in your PC and want to control them through an easy front-end? Build your own fan controller of course! In this tutorial we show you how to convert that old 300W ATX PSU into the most powerful rheobus you have seen.

SG6105 IC analysis

SG6105 IC analysis

With switching PSU's the duty cycle of the switching FET's (duty cycle = time on versus time off) is controlling the output voltage of the PSU, in order to make the 220V AC mains voltage regulable we have to convert it into DC voltage first before we can chop it on and off. The more output voltage you want, the longer the FET's have to be switched on. This is all not too important too know, it's just good basic knowledge you may need whenever working on ATX PSU's. The fact that only one IC regulates the entire voltage range is quite interesting for us, let's us have a closer look at the System General controller and find out how it does all that:

Via a feedback circuit existing out of resistors the controller is reading the high power +5V and +12V output voltages. Thus, for us, most interesting is the Pin 17 labeled "IN", since it's this part of the circuitry that we have to modify to change output voltage. If we alter the voltage at pin 17 the controller will think that the output voltage is changing, while in fact it was not. This will cause the controller to adjust the duty cycle of the high side Q1 and Q2 FET's and so the output voltage of the PSU will change. What I did was disconnect the pin 17 from the PSU PCB so that I could place a variable resistor in between, making it possible for me to adjust the voltage at the pin 17 and thus also the output voltage of the PSU. Yes, it has become a fancy rheobus now!

Downside here is that the old PSU design features only one power transformer for all the voltage levels, thus changing the duty cycle at the primary side will change all voltage levels, not only the 12V level for example. Another interesting fact is that the controller is able to read live voltage without any kind resistor feedback circuit. Pin 2, 3 and 7 are being use to check the 3,3V, 5V and 12V lines. These are however not feedback circuits like with pin 17, these are protections circuits used to check if the live voltages are in between certain boundaries, in between -10% and +10% for example. Very nice to have whenever the PSU is no longer able to maintain it output voltage, the PSU will sense too low voltage and thus shut itself down for safety reasons. This however makes our PSU-Fan controller only good for changing very few percentages and so we have to get rid of this protection circuit.

What I did was building a second low power circuit which transforms the 220V PSU supply voltage into 12V, 5V and 3,3V. Then I disconnected pin 2, 3 and 7 from the printed circuit board and hooked up my self made low power circuit, now the SG6105 would always see the ATX PSU voltage lines in between the boundaries and never shutdown. Never really means never though, if the PSU would go into error causing the output voltage to fluctuate heavily then the PSU will not shutdown either. That's why I decided to add a panel volt meter to the PSU, it's handy to adjust voltage this way but it is also handy to check if the PSU is still running good.

When I tested the PSU I noticed that at around 9V the PSU would shut itself down once again… I forgot to remove the negative voltage protection! Negative line voltages are being monitored at the NVP pin 6. Here the voltages are not read live, but again through a resistor network and an internal current source. A comparator will check if the voltage at pin 6 is lower then a 2,1V reference voltage, if not then the comparator will enable a PSU shutdown. Altering the voltage level at the pin 6 via an added resistor didn't work out too well, but since this is a low current source I took the chance of grounding the pin. This worked out pretty well, my Frankenstein was finally alive! Let's have a look at how the PSU now looks like internally ->

Hi there, it was me that made that request, and THANKS for helping me out, i really appreciate it. .

I have tried to hook the vIN/vOUT (your brown&white) wires to have a reading,
and I am unclear as to the proper way to do this.

(as with a Ammeter hook up, one runs a +Positive lead to one ammeter and then back out the other ammeter lead - to your device, and that works)

I have not had luck reading a steady voltage, or one that i would count as being accurate when trying to hook this LEDPM/5 Voltmeter up the same way.

Am I trying this correctly? or do i got something mixed up.. *Thanks!

(maybe if you could just tell me where you have your brown & white leads coming from your LEDPM/5 (vIN & vOUT) to/from your device? power? or ground? or both? ? ?

Thank you for taking your time to show this. .

Cheers,
thenextgeek

Comment
from geoffrey@ 2008/11/05

Don't forget you have to add a resistor on the circuit, you can easily spot what I'm talking about, it is on the right side of the LCD controller

Brown/white is used to read voltages on my picture. What you do is connect the two in between a potential difference. For instance you can try reading a 9V battery by connecting the VIN pin to one of the battery terminals and the VOUT pin to the other battery terminal.
You can also read the supply voltage source, you can connect brown to red and white to white and read the voltage source voltage. In my PSU I connected brown with +12V (ATX: yellow) and white with ground (ATX: black).

Comment
from thenextgeek@ 2008/11/05

AhhhhhHA! I bet that's the problem, I don't have that resistor on there!

hehe, sorry so newb at this, the unit i received (locally) had no manual, (or at least one that I could read so it has been kind of a trial and error,

until now..

THANKS a lot for taking the time, I will put a resistor on as your picture indicates it should be...

Cheers!
thenextgeek

Comment
from thenextgeek@ 2008/11/06

Did you just remove (desolder) the small black square part that you put that resistor to? (#RA?) I circled it in red with an arrow for referral

Sorry I don't know the name of what that is.. I have that Resistor, but it *looks* like you removed the original part then put that resistor on?

Thanks again for all your help.

Cheers,
thenextgeek

Comment
from thenextgeek@ 2008/11/11

Hey, sorry if i'm cluttering your forum here, you can feel free to delete the posts if it looks bad, not a problem...

The place you put the resistor (RA / RB) as described in the manual. .

I have put the resistor on there as yours shows, but it *looks* like you may have also cut the other circuit resistor (RB? - the other one). .

Is that so? I dont want to cut those little things, as i know i would NEVER be able to put it back on, way to small.. hehe

Ok, well thanks if you can make any suggestions, i appreciate it !

I am asking this detail, because i am getting "unstable", and usually what would appear to be "inaccurate" Voltage readings, ie; even from a fully charged 9volt batt., a DC Wall adapter (universal), etc... it dosen't seem to read, usually about 1-2 volts different, although, I can use a voltage adjuster and see the changes, they don't seem accurate enough...

afaik, i also used the correct resistor, but i'm willing to double check.. but pretty sure.

THANKS SO MUCH for your site, and your suggestions...

Cheers,
thenextgeek

Comment
from geoffrey@ 2008/11/12

Quote:

Originally Posted by thenextgeek

Did you just remove (desolder) the small black square part that you put that resistor to? (#RA?) I circled it in red with an arrow for referral

Yes that one is removed.

Quote:

Originally Posted by thenextgeek

I have put the resistor on there as yours shows, but it *looks* like you may have also cut the other circuit resistor (RB? - the other one). .

Yes there is one, label: 106. I don't know if that is the original one or not.

Comment
from thenextgeek@ 2008/11/19

wow, ok, somehow. . lucky you.

I talked to velleman, via email, they sent a diagram showing that RB is the one to be removed, and RA should *not* be removed (the one you have your resistor on). .

and of course the resistor/s "should" be inserted into the wholes located top and bottom on there, but I often have done it differently as well.

Anyways, I am seeing how to fix mine now.. heh I need to put the RA resistor (the little black one) back on it... *i think*, unless there's an easier way... hopefully Radio Shack has this part or something... i dunno.

Any ideas?

it almost *seems* that your RB resistor WAS the resistor that USE to be on RA.. #[106], because RB is [D] (or [O]), and RA on mine was [106]

Jfyi?..
did you buy yours first hand/new? Mine was a new unit.

Thanks,
thenextgeek

Comment
from geoffrey@ 2008/11/19

New one here too, yes I remember resoldering one of these SMD's, use tweezers, it's not that hard.