# What is this effect I am seeing in a current/voltage plot of a 2N2222 NPN transistor?

I have been working on a home made IV tracer for diodes and transistors.

I noticed a slight curlicue in the low voltage and low current end of the plot for a transistor, and wondered what was going on.

This is the plot of the collector current and collector voltage for a 2N2222 transistor made with my setup: You can see the "curlicue" down there at the lower left corner.

This is a closer view of the "curlicue": I've been trying to figure out what is going on here.

This is the circuit I used to make the plots: There's an Arduino Nano off to the left connected to the analog and PWM signals. It uses oversampling to get better than the 10 bits of resolution of the Arduino ADC.

The best explanation I've been able to come up with is that at low collector voltages, some of the base current "goes the wrong way" out through the collector instead of the emitter. That raises the collector voltage (A3-VCollector) against the bias voltage (A2-VCollectorBias) resulting in a current flowing back through R4.

ICollector is calculated as $$\\frac{VCollectorBias - VCollector}{R4} \$$

Does that explanation seem right, or have I missed something?

Between those two charts, I changed R4 from 1k to 10k and made some software changes to get a little more resolution.

At a suggestion from Hearth, I simulated the circuit in LTspice.

Here's the simulated circuit: This is the plot of the collector current against the collector voltage: It does in fact have a negative tail, though not as extreme as in my circuit. The tail in the simulator is also straight rather than curved.

At any rate, the "tail" isn't a figment of the Nano's imagination.

I ran a trace of a 2N3904. It also has a negative tail on the collector current, though much smaller than on the 2N2222.

• Might it be oscillating? Dec 17, 2020 at 19:19
• Have you run this in a simulator to see if you observe the same behavior? Dec 17, 2020 at 19:21
• @Hearth: I haven't run it in a simulator.
– JRE
Dec 17, 2020 at 19:26
• @JRE I'm pretty sure you're right (confident enough to submit it as an answer anyway!) but I'd still suggest a quick LTspice simulation or something just to be sure! Dec 17, 2020 at 19:29
• @Hearth: $M_e + LT_{spice} \neq Q_{uick}$
– JRE
Dec 17, 2020 at 19:31

That is what is expected even with the simplest model of a BJT. You can see it in this simulation If we zoom in in the VI chars we can see that the chars do not intersect at 0,0 The shape of the curve (excluding the Early bending) can be seen in these equations (Millman Halkias, Electronic Devices and Circuits,"Voltages as functions of currents", p. 250)  or, in more modern notation This is the plot of Ic/Ib vs Vce with Vth = 26 mV, alpha = 0.99, alphaR = 0.78. It's rotated by 90 degrees because we are plotting the inverse relationship and if we zoom in near the origin we see that is compatible with what Millman shows in his textbook Note that the 6 mV values is Vth log (1/alpha_R).

• Perfect. Thank you. This is the answer I needed.
– JRE
Dec 18, 2020 at 6:52
• I don't have that book. Do you know which commonly published characteristics of transistors relate to which parameters in the given equations? I find the extent and shape of the "tail" varies by the transistor type. The "tail" on the 2N3904 is much smaller than the "tail" on the 2N2222, for example.
– JRE
Dec 18, 2020 at 6:59
• Millman's model is maybe the simplest, but maybe the difference you see can be explained by the different alpha_R. You might also want to see how the intersection change with temperature. (By the way, did you share your project somewhere, being able to see that means it's a decent curve tracer). And finally, have you ever been on the Internet Archive? (just asking, Millman's books are worth a look - I believe what you need is in Electronic Devices, Sec. 9-5 "Detailed study of the currents in a transistor", p. 229) Dec 18, 2020 at 7:47
• I share most of my personal projects. The IV Tracer is currently in two parts: GUI and Arduino. I have been describing the development process and progress in a series of blog posts.
– JRE
Dec 18, 2020 at 13:43
• I'm not sure how good or practical it really is. It seems to me that the current and voltage ranges are rather limited. I plan to use it to actually design a transistor amplifier to see if the tracer really covers enough range to be a useful tool, or whether is just a learning toy.
– JRE
Dec 18, 2020 at 13:45

I'm reasonably certain your guess is correct. If the base voltage is higher than the collector voltage by a sufficient margin, I would expect to see the base-collector pn junction biased on and current flowing out of the collector. This seems to be happening when the collector voltage is below about 100 or 150 mV, which would imply (at such low currents) a reasonable base voltage of 650~700 mV, assuming it's all referenced to the emitter.

I think you are at the limits of the accuracy for the Arduino A/D converters. The resolution of the converters is about 5mV, or about 5$$\\mu\$$A through a 1k$$\\Omega\$$ resistor. The absolute accuracy of these converters is much worse.

To make this circuit work with an Arduino you should be using larger resistor values, and you need to very carefully calibrate all of the ADCs.

• I am beyond the normal resolution of the Arduino ADC. I'm using oversampling to get more resolution and to reduce the noise as well as the jaggedness of the PWM signals.
– JRE
Dec 17, 2020 at 20:10
• Oversampling can help with random errors but it won't do anything for systemic errors, such as offset and nonlinearity in the ADCs. Yes, you can improve the resolution but you don't improve the accuracy. And the fact that you are oversampling would have been good information to put in the original question. Dec 17, 2020 at 20:22
• Right. Noise and lack of resolution are the things I used oversampling for. If offsets and nonlinearity could cause the curlicue, then I'd like to know how.
– JRE
Dec 17, 2020 at 20:54

The fact that you see it with 3904 is interesting. What do you see at these nodes if you look at it on a real scope?

Some shots in the dark:

1. Is there AC component in there from the PWM's? That can create low level artifacts by being rectified somewhere, or via timings of the ADC. Maybe try to make a version of your circuit that filters the PWM more, just as a troubleshooting hack.

2. does ADC pull any current? If so the two ends of each sense resistor have different impedance. I've had situations where a small RC on the inputs of ADC's made them better... real small like 3.3ohm/10nF ... this involved the sample/hold action of an ADC and there being a few inches of wire in the path. Not sure if either applies but just putting it out there.

• At the low voltage and low current levels where the curlicues occur, the filtered PWM is at its cleanest. There's actually more than a few inches of wire involved, but that doesn't seem to bother anything. The measurements are all right at the Nano pins (all the resistors and the PWM filters are built into a sort of 3D structure right on the Nano.)
– JRE
Dec 18, 2020 at 6:48
• Looks like Sredni Vashtar answered it above! Dec 18, 2020 at 15:20
• Yep. Looks like. I managed to get enough things right that my (actually quite crude) setup can detect a tiny little wrinkle that theory says will be there.
– JRE
Dec 18, 2020 at 15:31