Recently I had the problem some expensive components did overheat in my server rack. The ventilation was not optimal and I had to install additional fans. Because this rack is in my office and I like a quiet working place, the ventilation had to be as quiet as possible.
First I thought about buying a off-the-shelf product, but then I realized: If this controller does not work as I expect and the fans will spin too fast/loud, this will drive me crazy over time. So I decided to build a own fan controller. A very simple one, where I can write own code and tweak it until it runs as I like.
This project page describes how I built this particular controller. It is not meant you really reproduce this same controller exactly as shown, but maybe understand some basic principles to build your own controller.
For the start, here a photo of the final controller, without the case. You can see the display, with custom characters, the power wire on the left, two sensor wires on the right and one wire for where the fans and the PWM signal is connected. You can also see the SD card on the left side, where all values are recoded.
- Arduino Uno
I am using an original Arduino Uno revision 3 board with the
ATmega328Pchip on it. I have chosen this board because it can be powered with a 12V power supply which is required for the fans. Also I had already the two shields, which were only compatible with the Arduino Uno.
- 2× PWM Controlled PC Fan
For my setup I use two very quiet Noctua 80cm NF-A8 PWM fans. They are very powerful but almost make no audible noise. They especially keep that quite over their lifetime. Using the PWM input I can control the speed of the fans very precisely.
- Ad a fruit Data Logger Shield
This shield contains a RTC (real time clock) and a slot for a SD card. There is also a level converter which provides the required 3.3V for the SD card. It also contains a prototyping area, where I added required components and sockets.
- Ad a fruit LCD Shield
A very comfortable LCD shield which can be accessed over I²C. It shares this bus with the RTC. Beside of the display, there are also a number of handy buttons which can also be accessed over the same I²C bus.
- 2× DHT22 Temperature and Humidity Sensors
I used this sensors for many other projects. They are not cheap, but quite precise. The only downside is the very slow readout, but for this project absolute no obstacle.
Read More: PWM Fan controller