NETGEAR GSM7224 less noisy with temperature regulated fans

My Netgear 24 port gigabit switch was quite noisy, so i decided to add temperature control for the fans.

As I did not have any temperature sensors at hand, I thought, why not use the base-emitter pn-junction temperature dependence. So i cobbled together the very simple schematic below.

Schematics and the two completed controllers

The BC547 acts as the temperature sensor and the BC140 is a power amplifier, any 1 Amp npn transistor should do. The trim-pot sets the temperature. As the starting current for the fans are higher than the running current (at low speed) the BC140 will heat the BC547 some to improve the starting behavior.
The 470uF capacitor sits directly over the fan to smooth the current draw, it is not shown on the schematic as it was added later.
To adjust the temperature you will need hot room such as a sauna or a hot air blower or similar

Component side of prototype board controller

Solder side of prototype board controller

The fan controllers installed in the GSM7224.

Detail of the installed fan controllers

When testing the controllers I found a problem. One fan will start before the other and then run at a rather high speed creating more noise and the other one would stand still. So it would be better to just build one controller and replace the BC140 with a 2 amp or larger transistor with a small heatsink.
However, since I already built two boards i opted for a seconds solution: Connect the outputs of the two boards together via a 7.5 Ohm resistor (any value between 4.7 and 10 Ohm should probably work). I then trimmed the set-temperatures so that the voltage over the 7.5 Ohm resistor was less than 100mV when the fans were running at low speed. After this fix the fans regulated fine.
This simple circuit will of course only work with a stable supply voltage as in the GSM7224.