I connected the circuit below, a transistorized ignition circuit, and it worked for a couple minutes, then it stopped working (engine quit, wouldn't restart). When it stopped working, I couldn't feel anything that had clearly overheated on the board, and didn't observe any smoke.

I took the board into the lab, hooked it up to a power supply and tested the voltages at various nodes for the points breaker switch being open and closed. I used a 20 ohm load in place of the coil.

I found that the TIP31 was turning on correctly when the points switch was open such that \$V_c=.02V\$ (collector voltage of the BJT/gate voltage of the IGBT) and Q1's base voltage = .63V, so the TIP31 appears to be working properly. The IGBT should be "Off" with a gate voltage of 0.02V, but instead I'm measuring a 4.3V drop across the 20 ohm load resistor (which is in place of the Coil shown in the schematic), meaning the IGBT is conducting .21A given a 20ohm load.

I can only speculate why the IGBT failed, and I'm hoping someone that has experience can give me a better idea. I was to understand that IGBT's were very well suited for inductive load switching. Did I choose an IGBT that was poorly suited for this application? Could it have just overheated and burned out without me noticing? Most importantly, is poor conduction a typical failure mode of IGBT's?


simulate this circuit – Schematic created using CircuitLab

  • \$\begingroup\$ Regarding switching inductive loads, IGBTs are heavily used in consumer HEV/EV motor drive applications, which should be some indication. How much current were you expecting to flow through the coil? Which IGBT package are you using? \$\endgroup\$ – Scott Winder Oct 24 '13 at 12:58
  • 2
    \$\begingroup\$ You need to measure/calculate the current spikes to properly diagnose the problem - especially when turning off the coil and the IGBT's anti-parallel diode is in full conduction. \$\endgroup\$ – apalopohapa Oct 24 '13 at 13:04
  • \$\begingroup\$ @ScottWinder: I linked the data sheet in the text, but it's an STGB7NC60HD. I haven't found too many sources for coil current. This purpose built IGBT is rated at 20A, but the circuit I borrowed the design from was using an IGBT that looked to be purpose built and rated at 15A. Mine is rated at 14A, 600V, so not too far off. \$\endgroup\$ – Bob Oct 24 '13 at 13:06
  • \$\begingroup\$ @Bob: I should have been more clear. According to the datasheet, the part with that number can be either TO-220, or TO-220FP. If you're using the FP variant, the current rating goes down to 10A @ 25C, 6A @ 100C. \$\endgroup\$ – Scott Winder Oct 24 '13 at 13:16
  • \$\begingroup\$ @ScottWinder: it's the TO-220, not the TO-220FP. \$\endgroup\$ – Bob Oct 24 '13 at 13:30

I think there may be two reasons. First, here's a transistor that is specified for use in ignition systems and note that it has a protection circuit built in that will turn the transistor back on (thus protecting itself) if the voltage at the collector exceeds 350V.

enter image description here

Normally, car ignitions won't generate much more than a 300V spike and to demonstrate this here's another picture taken from this site: -

enter image description here

That site also explains something else which may have resulted in the failure of the IGBT. Dwell angle is the time period that the contacts are closed before opening to "generate" the spark. On the diagram above this is about 3ms (note the lowest part of the trace just before "firing". In this time period, the current in the coil (from the battery) builds up to about 8A - this 8A is deemed the right amount of current to generate the correct amount of energy to produce a decent spark.

If you doubled your dwell-time (ignoring coil resistance) you'd get 16A - it's a time-linear thing and if of course your points breaker was just an old-fashioned breaker that could take a gazillion amps it wouldn't care much about dwell angle and this means you've probably exceeded the current rating of the IGBT and it's fried without you knowing about it.

Here is an interesting reference article to building your own car ignition using a 555 timer - it, I suspect sets the dwell angle.

  • \$\begingroup\$ Thanks for the insight! I had heard about dwell angle, but I didn't really give it much mind in this application; I'm hoping to do an advance/dwell time MCU project with hall effect or optical timing in the near future, but pretty much spaced on dwell time causing higher voltage spikes for this application. Thanks for taking the time and writing a great answer! \$\endgroup\$ – Bob Oct 24 '13 at 13:55

Most likely, the IGBT was killed by inductive kickback from the coil. Most of the energy from the primary should have been transferred to the secondary, but there is always some leakage inductance. This leakage inductance is the inductance of the primary that is not coupled to the secondary, so looks like a plain inductor in series with the part of the primary that is coupled. This inductor can cause kickback if turned off abruptly.

The symptom you see is exactly what you'd expect in this situation. The transistor takes it for a while, but eventually the high voltage pulses damage it, so the circuit stops working. The fact that the transistor now has significant off leakage is good evidence of this. That is a common failure mode resulting from short overvoltage spikes.

As I said before, a IGBT is not the best choice here. There is no reason you need a FET to drive the NPN inside the IGBT for you. You can modify the circuit a bit to drive a NPN directly.

Whatever you use for the switch, it should be rated for fairly high voltage, like a few 100 V, or you need to clamp the kick back voltage somehow.


I said this in a comment, but it really belongs here in the answer. 600 V is a reasonable rating for the switching element, but you still need some sort of clamp. In normal operation, most of the energy in the magnetic core will go out the secondary and cause a spark at the sparkplug. However, if the secondary was ever disconnected, all you have is the primary acting as a plain inductor. All the energy would then come back into the driving circuit, which can easily cause more than 600 V accross the switch.

Without a clamp, you are relying on unreliable characteristics. Some sort of clamp at 550 V or less is required. One way to acheive this is to use the switch transistor as the clamp. Have something force it back on when the voltage gets to 500 V or so. That is still plenty high enough voltage on the primary to cause the necessary high voltage on the secondary, but it protects the driving circuit from the leakage inductance of the primary, or when the secondary is disconnected altogether.

Your circuit is basically guaranteed to fail if the sparkplug is ever disonnected from the secondary.

  • \$\begingroup\$ Thanks for your feedback that high voltage spike damage causes this failure mode typically. The IGBT in this design is rated at 600V, which is fairly typical of ratings in other designs. Why would this design have failed where others were reliable? \$\endgroup\$ – Bob Oct 24 '13 at 13:34
  • 1
    \$\begingroup\$ @Bob: 600 V sounds reasonably high. C2 should limit the maximum voltage of the spikes, but that depends on the leakage inductance and whether there was a proper load on the secondary. If the secondary was open, then you just have a plain inductor. The only place for the energy to go is then to fry the transistor. A deliberate clamp at 550 V would be a good safeguard. Otherwise you blow up the transistor if the sparkplug is ever disconnected. \$\endgroup\$ – Olin Lathrop Oct 24 '13 at 13:49
  • \$\begingroup\$ Excellent point, and this old car may have plugs that don't always fire, who knows. I'm not familiar with voltage clamps for higher voltages; I'll go look into it. \$\endgroup\$ – Bob Oct 24 '13 at 14:23

IGBT for ignition are specially designed to absorb the energy back from the coil when needed. Full info on https://www.onsemi.com/pub/Collateral/AN-8208.pdf.pdf

General purpose IGBT are not designed for this specifc application


The answer above about dwell gets to the issue. The problem is that when the engine is running at low speed, the points are closed for a "long" time.
Typically an automotive coil will saturate magnetically in around 4 milliseconds. After that, it becomes a resistor measuring a fraction of an ohm. At low speed, the points are closed for much longer than 4 msec. Assuming 12V to the coil and .5 ohm for the coil resistance, you get E/R=I or 12/.5=24 amps. So the problem is how to limit the time voltage is felt across the coil, or to limit current some other way. The easy way (which was common in "Kettering" ignition systems) was to put a current limiting resistor in series with the coil. That way when the coil became magnetically saturated, the series resistor would limit the current to the points/IGBT/darlington.
You can probably get a Chrysler "ballast resistor" from an auto parts store, and put it in series with the coil. You'll get less spark RPM, but maximum current to the IGBT will be within spec.
If you put a capacitor in parallel with the resistor, you can do better some of the time. You want the capacitor value to get you a time constant with the resistor somewhere around 4 msec. That way, the capacitor will be charging as the coil is approaching saturation. When the engine is running at high RPM, you'll be seeing close to 12V across the coil as the points open, giving you good spark. At low speed, the points will close, the IGBT will conduct, the capacitor will become fully charged, and much of the voltage will be dropped across the resistor. This means that the voltage across the coil and current in the coil primary will be low, resulting in less spark (delta current) as the points/IGBT open. Most likely this will still be enough to run the engine. Another way of doing things would be to turn the drive circuit into a one shot by capacitively coupling either the base of the TIP31 or the gate/base of the drive device. That way you can generate an on pulse of around 4 msec.
This works great at low speed, but at high speed the spark will be really late. At 3600 RPM, one revolution is around 16 msec. If you're 4 msec late to fire, that's 1/4 of a revolution. You can configure the circuit with a switch, so you start with the drive capacitively coupled, and switch to straight drive for full speed operation. It probably wouldn't be difficult to charge a tank circuit that will make the switch automatically when engine speed gets to some chosen RPM. John


Did you use a proper heatsink for IGBT? In the datasheets should be mentioned the wattage of heat produced. Then you could calculate required need for cooling the IGBT based on for example IGBT producer Semikron datasheets (use google). They usually need pretty massive cooling especially when currents go near the limits.

After breaking the IGBT it may work somehow but definitely not properly (some kind of voltage or current can exist over / through the component). That's quite usual with many semiconductor devices.

  • \$\begingroup\$ I did use a heat sink, though it was a small clip on type. But the device didn't seem to be hot, and doesn't show signs of overheating. \$\endgroup\$ – Bob Oct 24 '13 at 13:38

For Stop IGBT , You need -15V (turn off signal) , No GND.


The fly-back (kickback) in the primary can be handled with a suitably sized schottkey diode across the winding. (cathode to 12V and anode to the IGBT collector). The reverse voltage of the diode (or stack of diodes) will have to tolerate the maximum transient voltage and will need to be rated for the maximum primary side current plus head room.

  • \$\begingroup\$ I'm afraid this doesn't answer the question directly. Can you explain what caused the failure? Then describe how the solution solves it. \$\endgroup\$ – caveman Feb 24 '15 at 22:56
  • \$\begingroup\$ This is bad advice. Putting a diode across the primary will completely kill the coil's ability to produce a spark at all. \$\endgroup\$ – Dave Tweed Aug 13 '15 at 10:50

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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