Fan controller for Manson EP-613 / Jaytech MP-3082 with fan

The article Manson EP-613 / Jaytech MP-3082 improvement describes the addition of a small muffin fan to the subject power supply to improve its cooling and hence its survival.

Experience is that the fan noise is annoying, especially when the power supplies are mostly used with mA loads that do not require the fan.

The obvious solution is some kind of fan controller that operates the fan only when needed to to ensure safe power transistor operation. This article describes the implementation of the generic hcctl project as a simple thermostatic fan controller.

The solution has wider application to most fan cooled heat sinks where continuous fan operation is not necessary.


The controller uses an ordinary silicon rectifier diode as a temperature sensor. With 2mA of bias current, the diode voltage drop decreases by about 2mV/° and so can be used to sense the heat sink temperature.

Fig 1: 

Fig 1 shows sensing diode. It is an ordinary 1N4004 with some light gauge silicone insulated flex attached. Note that the least thermal mass remains, and that the wire attachment is such that if the side of the diode nearest the viewer is placed against the heat sink, the terminals will not contact the heat sink.

Fig 2: 

Fig 2 shows the sensing diode fixed to the heat sink between the two transistors using some heat sink adhesive. In a second power supply, the diode was fixed to the underside of the heat sink in about the same position.

The key thing here is that the sensor (diodes and leads) should have low heat capacity (meaning it takes little energy to raise its temperature), it should have low thermal resistance to the heat sink and high thermal resistance to the air. This ensures that the diode temperature is close to that of the heat sink, not just statically but that it also follows the heat sink temperature changes quickly. Thermally conductive electrically insulating adhesive is used to attach the diode to the heat sink, and a good thermal bond is needed to the diode terminals to give the best thermal coupling to the diode silicon.

Fig 3: 

Fig 3 shows the controller module implemented on a small piece of Veroboard. It uses very few parts, just the microcontroller, a zener regulated power supply and filter cap, a bias resistor for the sensing diode, and an FET switch to control the fan. The connectors and layout allow the use of a range of sensors (eg Si diode, LM335, LM35) depending on the parts placed on the board and the configuration data loaded to the microcontroller EEPROM. Z(An RF bypass capacitor had been omitted when this pic was taken, it is 0.001µF ceramic and goes in the bottom two traces immediately to the left of the blue capacitor.)

Fig 4: 

Fig 4 shows the underside of the board.

Fig 5: 

Fig 5 shows the controller module fitted to the base of the power supply on a pair of hex threaded pillars. The right hand connector is for the temperature sensor, and the left hand connector is for the fan. The red/brown pair plugs onto the auxiliary 12V DC supply (where the fan had previously connected).

Fig 6: 

Fig 6 shows the schematic for the controller configured for a silicon diode sensor. The 2N7000 is good for up to about 200mA in this configuration and has integral protection against voltage transients. An alternative would be a bipolar transistor with series gate resistor and protection diode from collector to ground, or a MOSFET driver chip such as TC426/TC427.

The board could be configured to use an LM35 or LM335 sensor with appropriate changes to the input circuit and EEPROM configuration.


A model was created to explore appropriate the behavior of the system. The thermal system can be approximated by a simple electrical circuit.

Fig 7: 

Fig 7 shows the model circuit in LTSPICE, and model results with 15W input to the system. Temperature wrt ambient is represented by voltage, power (rate of flow of energy (J/s)) by current, thermal resistance (°/W) by R, and heat capacity (energy/° (J/K)) by C The values of R and C have been developed from validated measurement of the real system, for example the heat sink stores 240J/K. SW1 is a voltage (temperature) controlled switch with hysteresis, and is used to bring into play the improved heat flow patch when the fan runs. (Note that his model does not emulate the minimum run time constraint that will be used in the controller.)

Note that the model assumes that the exhaust air does not raise the temperature of the air intake. Capturing hot air in the intake has the effect of increasing the power added to the system.

In the model results, the green trace is the junction temperature wrt ambient, blue is the heat sink temperature, and red is the sensor temperature. 

Fig 8: 

Fig 8 shows the effect of a sensor which stores more energy per K. The response of the temperature sensor is delayed and is weaker for a given variation in heat sink and junction temperatures. Increasing the thermal resistance of the coupling of the sensor to the heat sink, or reducing the thermal resistance from the sensor to the air have similar effects. This model shows why the sensor should have low mass (low energy storage), be intimately coupled to the heat sink and insulated from the air.

Fig 9: 

Fig 9 shows the power supply at maximum dissipation (2.5A output at 16V). Temperature rise is 135° which allows operation up to 65° ambient to stay within the rated maximum junction temperature.

Fig 10: 

Fig 10 shows the failure of the original design. Temperature rise at maximum power is 200°, which means that the power supply exceeds safe junction temperature at ambient temperature above 0°.

It is worth noting that a short circuit with current limit set to max (~2.8A) produces 65W of dissipation. Though technically outside the power supply's stated ratings, there is a real risk that a short circuit could result in 65W of dissipation if the current limit control is fully clockwise. 

Fig 11: 


Fig 11 shows the model results for the s/c at max current limit scenario with the fan disabled. Temperature rise is 215° which at a modest ambient temperature of 20° will significantly exceed the transistor's ratings and almost certainly damage the power supply. This questions Manson's ability to design rugged power supplies.


Diode sensor

Individual calibration is advised for best accuracy when using a diode sensor. Two controllers were calibrated using the following procedure and they were 3.4mV (equivalent to 1.7°) different to each other. The diodes were from the same batch, greater variation can be expected from random diodes.

The firmware contains a feature to capture the current temperature (PV) to EEPROM.

In this case, the EEPROM was configured with the special value -1 in the tos (offset) location, and when the controller is powered up, it will read the temperature sensor and store its value in tos in EEPROM which can be read back with the device programmer. The heat sink temperature was stable and measured at 23.7°, and the tos value after power up.

One could configure the other values relative to this offset, or in my case I adjusted to offset to 20° equivalent by making tos=tos'+(24.2-20)*0.002/1.1*1024=0x246+8=0x24e. The EEPROM configuration was edited to set tos=0x24e so that the other settings were offsets from 20°.

Alternatively the ton value for 40° could be calculated with offset as  ton=tos'+(24.2-40)*0.002/1.1*1024=0x246-29=0x21d and tos field could be set to zero.

Choosing the set point

The set point is chosen differently in this application from 'normal' temperature controllers which try to maintain a narrow objective around the set point. Rather in this application the set point is chosen to divide two regions of fan off operation and fan operation with a narrow band where the fan may cycle on and off.

The set point could be as high as 140° and still achieve the objective of protecting the power transistors from excessive junction temperature (200°).

Whilst the principle objective is to not run the fan when it is not "necessary", there is benefit in keeping the internal temperature of the power supply lower and so, given the use where most of the time the power supply is used under conditions where the power dissipated by the power transistors is 4W, the temperature rise of the heat sink will be 10° and at 25° ambient the set point should be 35°. The design of the controller requires specification of the turn on temperature (set point + half of the differential), so that would be  27.5°, rounded up to 30°. The differential of 5° is chosen to minimise short cycling based on experience, but is supplemented by specification of a minimum run time of 180s.

So, depending on ambient temperature, at loads below about 10W steady dissipation the fan will not run, at loads above 20W dissipation the fan will run continuously, and between 10W and 20W the fan may cycle on and off.

Variable Meaning Value Comment
ver version 1  
opt options 0x05 heating mode (due to inverting control loop), 1.1V ref
tos temp offset 583 @ 20° 583/1024*1100=627mV
tal temp alarm -140 95° relative to tos, -ve due to diode -ve temp coefficient
ton temp on (set point + diff/2) -40 21.5° relative to tos, -ve due to diode -ve temp coefficient
diff temp diff 10 5.4°, always +ve, handled by heating/cooling mode
ion min interval on 720 720*0.25=180s
ioff min interval off 0  

The table above shows the EEPROM configuration data in one of the controllers. The tos value is a calibration constant dependent on the diode sensor, here it is the ADC value when the diode is at 20°. The ton value is equivalent to 20+21.5° and differential 5.4°. The alarm setting corresponds to 95° but the alarm outputs have not been used.



Version Date Description
1.01 02/12/2012 Initial.

© Copyright: Owen Duffy 1995, 2021. All rights reserved. Disclaimer.