I started to simulate each diode again while paying attention to the model parameters, and sure enough, I deduced the culprit. A little value called 'n', which is the "emission coefficient" or the "ideality factor" depending on where you look. By observation, LED's with a smaller 'n' value worked better than those with a larger one. What effect does 'n' have? Let's look at Schockley's equation:
If we consider all other variables to be constant other than 'n' and '$V_D$' (the voltage applied to the diode), we can look at how the diode will behave. For n = 1, we find that the current through the diode increases quite rapidly as the voltage applied is increased. In fact, if n = 0 you have an ideal diode for any positive $V_D$ (yes, dividing by zero is undefined, but the limit as you approach a zero denominator is infinity, giving rise to a huge exponent). On the other hand, if n begins to increase, we can see that any increase in $V_D$ starts to produce a smaller increase in the current thru the LED. Now the LED appears more ohmic, requiring more voltage to carry more current. This should demonstrate why 'n' is called the "ideality factor". An ideal diode is a perfect conductor when a forward voltage is applied. Let's compare some values of 'n':
LTSpice doesn't let you use a value of n = 0, so i used n = 0.01. But you can see that the slope for the smaller values is much steeper than larger values. Another thing to note is that the "on" voltage increases with n as well. The knee (part of the curve as a diode transitions from off to on) is also becomes much more gradual too.
So what does this all mean again? The ideality factor determines the performance of the LED's in biasing the transistors. A larger 'n', being less ideal, behaves more like the resistors we initially simulated, whereas a smaller value behaves more like the ideal voltage sources.
Does this matter? Well, maybe. First off, if the current thru the LED connected to the base is only a single order of magnitude (or less) smaller than the current going thru the active LED, it may be somewhat visible. That's no good. Also, this circuit will likely run off of a battery. If i can drive the LED with 10uA of bias current instead of 300uA, that is considerable savings, especially considering the whole device only draws around 7mA. And those bias currents are cumulative. To display an "8" requires seven segments. At 300uA a segment that's a whopping 2.1mA worth of bias, ouch. I'll take the 70uA please.
So what does the Virtual Whammy Bar circuit do? Good question. The seven segment display appears to be a Fairchild MAN74A, and fortunately there is a datasheet. And it has graphs:
Looks nice and steep to me. My guess is that we'll find the real thing performs well.
So it was a little difficult to measure currents since my circuit is already built on a PCB and I don't have the spare parts to mock it up on a breadboard. My test then, was to set a breakpoint in the software right after the "TENS" display was activated. This way I wasn't measuring average voltages as the displays are strobed on and off with duty cycles based on the brightness. What did I measure? the voltage between the Emitter and Base of Q1. Why? Well, the more ideal the LED's the closer to 0 this measurement will be, whereas the worse the LED's are, the closer the value will be to a diode drop. What did I get? 176mV. That's pretty good. And that was with 6 segments illuminated. It may not be a definitive test but I'm gonna go ahead and say there's a lot of current gain goin' on here and call it a success.
Well that more or less concludes my offshoot into this whole topic. It was a whole lot of work and discussion over such a small thing, but I hope you found it interesting nonetheless. What started as an accidental mis-wiring turned out to be kind of a neat phenomenon. Until next time...








