# Variable current amplifier for fan control

I'm working on a project where I need to vary the current supplied to a DC fan. I am currently trying to use a BJT as a current amplifier to amplify a low current analog output (0 to 100 mA) to vary the current received by the fan unit at 12 V.

Schematic below.

In short, the circuit below I can get working for a low current fan (nominal 12 V at ~80 mA) but not for the high current equivalent.

My BJT is overheating to the "too hot to touch level". If I wait for the BJT to cool, I can sometimes get this circuit working, but only if I spike the analog voltage up rapidly to the max output. If I slowly ramp it up I'll get a low current draw on the fan (~70 mA) and then nothing.

I have measured a voltage drop of 11.6 V across the BJT consistently.

Fan specifications:

• 12 V, 640 mA nominal operating current
• Max of a 900 mA startup current draw before settling to ~600 mA
• Varying current between 200 and 640 mA

BJT: Is the 2N2222A NPN transistor.

My current schematic:

simulate this circuit – Schematic created using CircuitLab

Any thoughts on a better way to design this circuit or what is causing the problems I'm seeing?

• The effective resistance of the fan is about 19 Ohms, no the 26K you show. Commented Apr 1, 2019 at 1:48
• "I need to vary the current supplied to a DC fan" - Why? Commented Oct 30, 2020 at 4:27
• "I need to vary the current supplied to a DC fan" - That is not the way to control the speed of a fan. Commented Jul 19, 2021 at 1:21

You're using the BJT to drop significant voltage while passing significant current. The power it dissipates is determined by Watt's Law: $$\P=EI\$$. A better option would be to use a switching converter. Motors are inductive and can function well with pulsed voltage, so they are often driven with PWM, where pulses of full voltage are used to simulate a lower voltage. When the switch is only driven in hard-ON and hard-OFF modes, it does not dissipate significant power so long as it is chosen to switch quickly enough.