After several years of running this custom fan controller in my main PC I've eventually decided to retire it.
The main reason for this is because I need to reduce noise levels even further. The known downside of using PWM
for fan control is that it introduces vibrations into the case which can increase noise levels. The vibrations
from the PWM can also cause resonances within the case which I've noticed when changing the fan duty cycles.
In a email response so 'Eaglespirit' who sent me an email not too long ago asking about PWM I had the following
PWM does cause extra vibrations in the fans which can also lead to extra noise if the fans transfer this vibration to the case. It does depend on the PWM frequency. My controller uses quite a low frequency (I can't remember right now what that is - but its quite low - check the firmware source code). I played around during prototyping with different frequencies to try and reduce vibration and noise and got it down to a reasonably quiet level - lower was better. But yes, PWM does cause extra noise, but its quieter than running fans at full RPM! Linear fan control is obviously ideal in terms of noise, but the power dissipation is higher and it's less efficient.
I'm not planning on making design improvements at this stage but I have some ideas for future improvements:
And many others...
- Filter fan drive outputs using a low pass filter with a very low cutoff frequency, leaving basically just the DC
component. In this configuration the controller will be a PWM to voltage converter which would be a simple way of
changing the existing design to perform linear fan speed control (by voltage).
- Add a feature to the firmware that will drive the fan speeds to default (same as startup speeds) when
communication with the host application is lost.
- Port the controller host application to Linux.