Electronic – Odd NPN Circuit behavior

microcontrollernpntransistors

I've seen lots of useful threads here over the years but this is my first post.

I'm building a little box to switch an output based on RPM's watching the ground of an the primary ignition coil on an old car with points. I built an input circuit and it seems to work…. until the supply voltage gets too high.

Here's the whole thing:
enter image description here

I believe most of it is working ok – though I'm open to any and all suggestions – for completeness, my regulator is actually 9V not 8, but I don't think it is relevant.

My problem: The resistor (highlighted yellow in the simplified circuit below) seems to effect where my circuit works. My "function generator" spits out a 0-3.3V square wave and is input at "SIMULATED Tach-In". The real input isn't used here, but in the application this will look at the car's ignition coil.

enter image description here

The input to the NPN drops to ~1V if I keep turning up the supply voltage ("+12V"), and I don't know why. In fact, the output ("circuit output to CPU") stops switching after I reach a cut-off voltage which depends on the yellow resistor. See chart "Ohms/CutOff"

Does anyone have any idea why this is happening? I keep dropping the value, but I'm already using a 1/2W resistor and this seems overkill.

Please let me know if there's anything else I can provide to help with this.

THANKS!
-Abe.

EDIT: More complete schematic added at (remove the space) abefm.smugmug. com/MegaSquirt-Stuff/Random-MS-Questions/i-sG85Vjc/A , not enough 'reputation' to post it here. Sorry for the remote link.
The short version – there's a 470R resistor on my board, and a line which goes to the generator's CPU. (A "Jim-Stim" from the Megasquirt world, if you're familiar)

The good news is I got the pull up working on THAT board, so I now have a nice +12V signal which demonstrated my real input works fine.

Note: This was solved. For those interested in project, my next issue is discussed here: Mysterious Noise Issue in Automotive Ignition Coil Application, Arduino

Best Answer

I see 2 possible problems, one of them already pointed out by The Photon. They both have a common theme and that is the base of 'Q' is being overdriven by either the voltage being turned up too high, so the BE voltage of Q is locked at about .7 volts, or the simulated tach signal is overdriving the base, causing the same saturation effect.

Try increasing the 10K base resistor to 22K and add a resistor of 2.2K in series with the simulated signal. This way you should get a square wave at the base of Q that is counted properly, and the base of Q is less likely to be saturated ON by either the 12 volt feed or the simulated tach signal. I can see that your using a base pull-up resistor so if the simulated tach input is disconnected the base of Q will not float and be unpredictable or affect the normal tach input.

Your 'yellow' resistor should be 1K if possible, as it is driving a voltage divider through a diode, with the output clamped at 5 volts. Maximum current through Q is 12mA at 12 volts or about .144 watts, but some of this is sent to the voltage divider.