Go Down

Topic: Thermistor PWM Fan Controller (Read 81 times) previous topic - next topic

reever

I am trying to make a PWM fan controller for my computer, unfortunately there are only two 'True' PWM headers on most motherboards, those being the CPU header and the CPU_OPT headers (CPU_OPT name may vary), and although I have a PWM splitter that allows me to connect 8 PWM fans to one header, it does not allow me to control those fans individually, nor monitor their speeds (which is crucial, given that two of my 'fans' are actually coolant pumps)

So I turned to Arduino, since the 4th signal wire on PWM fans is just 5v modulated, and the fan controls the speed from within, based on that signal. It seemed so easy to me, set the PWM to a value, and the fan speed would vary based on that... Not so much it seems.

I have tried using the FADE sketch as a starting point, and although it does change the speed of the fan, it only hits about 1/3 of the max at ~600RPM (The specs claim 800-1,500). Although the fan increases pretty linearly, and actually has a minimum of ~70RPM (or so my fan monitor claims)...

I ended up finding out that the signal is not so simple as I thought, apparently the signal is supposed to be between 21-28kHz, with optimal being ~25kHz.

I have tried many different bits of code in an effort to get the full range of fan speed, and I suspect that the 21-28kHz claim is not entirely accurate, since I am able to change the fan speed with just the standard PWM control of the Arduino.

I also found some code that actually changes the frequency, but in attempting to use the code it still did not hit the 100% speed of the fan, and nothing I do goes past that ~650RPM mark... Here is the post involving that code: Arduino PWM Frequency

If anybody can help me to better understand what exactly I need to do in order to reach the full 100% speed of the fan I would be infinitely grateful!

liudr

How did you connect your fan to arduino?

reever

How did you connect your fan to arduino?
Only the PWM/signal wire was connected. To pin 3 (Digital PWM), however I did change the pin in accordance with the various codes that I used, the voltage, ground and signal wire are connected to the motherboard as per usual.

liudr

Did you connect the grounds? That's required.

Go Up