I have an automotive cooling fan which is nominally 12v and draws about 15-25A with a BIG inductive spike at startup (will happily blow a 30A fuse).

These are traditionally wired via standard automotive relays, but I'd like to drive it from a FET or similar solid-state circuit, possibly PWM but that's a glory job for later, for now let's just switch it on & off with minimal magic smoke escape ;)

This device presents a few challenges:

  • Big inductive spike at startup / switchoff
  • When the vehicle is moving but the fan is NOT powered, we need to allow it to freewheel.
  • When the vehicle is moving AND the fan is powered, it may be driven "overspeed" by the motion of the vehicle, again we want to either disengage (freewheel) it, or at least not try to brake it.
  • In both cases the driver circuit will have to tolerate the conditions (freewheeling open-circuit the motor may generate far more than 12v, for example) as well as switch between them without letting the smoke out.

I haven't started doodling circuits yet as I suspect the answers to this question will dictate things like device choice & circuit topology. I'm assuming the freewheeling requirement will mean going down the H-bridge route (or at least half an H-bridge, there's no real call to reverse the rotation of your cooling fan!)

I mentioned that PWM control would be nice, other niceties would be soft start (to avoid the massive startup kick) and over-current protection (if the fan tries to kick in when something's jammed in it, the vehicle is 4x4 so the fan could easily be full of mud/sticks/squirrels at any given moment).

So, I'm looking for guidance on what sort of topology I could use to drive it, which families of devices would be most tolerant of this sort of situation, parameters/configurations to look out for or avoid, and what's achievable or a right pain from the "wish-list".

  • \$\begingroup\$ I smell some xy problem here... why do you want a solid state route when relay options are industry tested already? purely for playing around? or is there a real need for it? There might be other options if you tell about the background of this. \$\endgroup\$
    – PlasmaHH
    Jun 15, 2015 at 12:55
  • \$\begingroup\$ I see no reason why you would need a bridge (half nor full). The current relay solution is also not a bridge or is it ? I see problems with the freewheeling as normally you would want to protect the transistor with a flyback diode but in this case that might short the freewheel current causing a lot of dissipation (?). I know that there are solid-state starter motor relays, maybe these can give a hint how it's done. \$\endgroup\$ Jun 15, 2015 at 13:17
  • \$\begingroup\$ @PlasmaHH - The mechanical layout of the vehicle dictates using one large electric fan in place of the standard mechanical (engine coupled) one, but switching one big fan ON/OFF creates undesirable bursts of "full power" cooling rather than a nicely controlled setup. I have twin fans relay-switched series/parallel to give off/slow/fast on my other vehicle but that doesn't fit here, so making one fan able to have, say, 50% and 100% speed would be desirable. A continuous PWM-controlled setup in a PID style would be super lovely to avoid thermally cycling the engine block. \$\endgroup\$
    – John U
    Jun 15, 2015 at 13:29
  • \$\begingroup\$ @Rimpelbekkie - true the relay is not a bridge, but relays don't really care if a freewheeling fan creates +/-200v on their contacts. I haven't seen solid-state starter relays, will investigate. \$\endgroup\$
    – John U
    Jun 15, 2015 at 13:31
  • \$\begingroup\$ I agree that a relay is OK with the +/- 200 V but using a bridge will not help you solve this for a solid state device unfortunately. There are MOSFETs that can handle like 600 V but there is no guarantee that the voltage will stay below 600 V. Unless clamping it would be an option, like a 300 V zener diode (assuming it exists and that it could handle the power). \$\endgroup\$ Jun 15, 2015 at 13:36

2 Answers 2


We make DC fan controllers for large earth-moving machinery. There are 8 or 10 large fans (depending on the machine) running from the nominal 28 Vdc power supply.

Inrush current is large - more than 50 Amps per fan. The people who contracted us to build their controllers told us that any relay-based controllers they attempted to build had very short lifetimes, usually ending in violent death.

We built controllers that handle the fans in pairs - two fans per controller output. One model has 4 output channels, the other model we build has 5 output channels.

We used sense-FETs from IRC - IRCZ44. I don't even know if those parts are still manufactured - our controllers are a very old design. Nowadays, I'd use much beefier FETs with hall-effect current sensors from Allegro.

We always ramp the fans from full off to whatever the desired speed is. PWM rate is relatively-high at 25 KHz. Each PWM stage is followed by a large LC filter intended to keep the switching edges from radiating into the communications radios on the machine. Each FET is protected with a large Schottky diode.

The combination of FET, diode, inductor, output capacitor forms a classic buck-converter power stage.

The inductors also helps with detecting over-current conditions - short-circuit current rise time is slowed sufficiently that the system can turn the FETs off before they are destroyed. Wiring shorts are a common problem on the machinery and it is important to protect the controller. This is also one of the benefits of splitting the controller into multiple channels - if one channel shuts down, the remaining channels still operate.

We've learned a lot over the years with this project - this machinery has extreme levels of vibration under extreme environmental conditions. The controller boxes have been quite reliable and the most common failures are with the actual temperature sensors that mount into the engine and transmission on the machine. The mechanics who service the machines tell us that is normal - they are replacing sensors on a regular basis for both our controllers as well as the machine controllers.

The main take-away from our experience is that FET-based controllers are reliable but you must use PWM to get the fans spinning.


I realized that I didn't address your concerns about free-wheeling and free-wheel over-speed.

Because this is a simple buck converter, the fan is free to free-wheel whenever there is sufficient airflow to cause the blades to spin. The circuit does not add any drag to the fan while the fan is supposed to be off.

Over-speed is controlled by the Schottky clamp diodes in the PWM stages. If the fan begins to spin too quickly, the voltage generated by the fan rises to the battery voltage, When the fan speed causes the generated output to exceed the battery voltage plus the Schottky diode drop, the fan starts supplying energy into the vehicle electrical system.

This controls the fan speed - the speed will rise to that point and then the drag causes by the electrical load of the vehicle causes the fan to not exceed that speed.

  • \$\begingroup\$ Awesome, that's great info from a very relevant field too. Thanks! \$\endgroup\$
    – John U
    Jun 15, 2015 at 15:03

NOTE : I am not attempting to answer the whole question.

The startup spike is not an inductive spike : that will come when you switch it off.

The startup spike is purely resistive : the 12V source divided by the motor's DC resistance. Measure that accurately (several times, rotating the fan between each, and picking the lowest) and you can calculate the stall current, which will also be drawn momentarily, until the fan starts spinning, so the motor can build up back-EMF.

If the normal operating current is 15A, the stall current could be in the region of 100A. Knowing the actual current will help you pick suitable MOSFETs or solid state relays for whichever solution you choose.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.