EN-X environment control

04.09.2007 21:48

EN-X is a CPU temperature regulator I've made for my server. It is a fully analog circuit with two feedback loops (one for the fan RPM and one for the CPU temperature). This is an enhanced version of the EN-2 controller which only has one feedback loop for the temperature. It is mounted in the 5 1/4 inch case from an old CD-ROM drive.

Why two feedback loops? CPU fans have hysteresis. This means that once they begin spinning you can drop the supply line to a very low voltage and they will keep spinning. But once they stop it will take almost full 12V on the supply line to start them again. This means that with the EN-2 controller with only the temperature loop I could not use the full voltage swing on the fan supply line without fear that the fan may stop and will not start again until the CPU is very hot. The second feedback loop will ensure that the fan is spinning with the speed that is regulated with the temperature loop.

Why not use a PIC or some other microcontroller? Well, I think there is enough digital electronics in an average PC already. I also like making nifty little analog circuits that will perform a task with three transistors while your average electronics engineer won't even consider a circuit that doesn't use a microcontroller with a million or two transistors.

photo

Let's start with the front. On the left is a panel meter which can show fan RPM or the CPU temperature. In the middle is a switch that controls what is shown on the panel meter. On the right is the temperature setting. The feedback loops will try to keep the CPU on this temperature by speeding up or slowing down the fan.

The background for the panel meter and the sticker were made in OpenOffice.org Draw program. They look nice, but it took forever to made them. I could probably have written a Postscript file by hand in half the time I wasted in OpenOffice.org.

photo

This is the case with all components ready to be put together. The case once belonged to an old CD-ROM drive and needed a few cuts with the dremel tool before it was usable for this project. The front plate was taken from a trash can in Cyberpipe. Thanks guys for letting me pick up your garbage. :)

photo

This is the back of the printed circuit board. It is a single layer design made with PCB. Routed by hand of course, autorouter is useless (or I don't know how to use it properly). Etched with the standard photo etching procedure and using father's etching "soup".

photo

The front of the circuit board contains all of the elements. On the left you can see the power bipolar transistor that drives the CPU fan mounted on a black heat sink. The heat sink is an overkill when driving tiny CPU fans but looks cool and who knows, maybe in a year or two we will all be using a 1 kW fan on our 10 GHz multi-core CPUs. In the middle is the LM2907 frequency-to-voltage converter IC (same chip that is used in ABS systems in cars). On the right are two double op-amps for the panel meter and the feedback loops.

photo

Here we have again the whole thing. I forgot the screwdriver inside the first time I've put it together. :) The saw blade in the background has nothing to do with this project.

photo

This is how EN-X looks when it is ready to install into the PC.

photo

Back side with all the connectors. On the left there is a small connector for the temperature sensor (KTY series thermal diode), in the middle is the standard connector for the CPU fan and the standard power supply connector.