# Series resistor and Zener as overvoltage protection for ADC input

I am trying to come up with a simple overvoltage protection circuit for a Teensy's ADC inputs, which can only handle voltages between 0-3.3V. I am studying EE in college, but I haven't yet done much with Zener diodes and would appreciate any feedback.

For reference, the voltage input is coming from the output of a MCP6000 series op-amp. I have read from the MCP6000 datasheet that the maximum short circuit is +/- 23mA, so I'm thinking I wouldn't even need a current limiting resistor. If the Zener acts like a short when reverse-biased, how would that affect the op-amp/sources powering the op-amp?

Apologies if these questions seem badly worded, I'm just starting to dig deeper into the electronics world.

You are partly right. The resistor however is misplaced, it should go in series before of the zener.

Even if your opamp has a maximum of 23mA drive this doesn't mean he's happy to be essentially shorted to ground (some amps are designed with limiting circuits but that's not the norm). In fact the MCP600x says that the absolute maximum is 30mA. The 23mA figure probably comes from the typical ouput impedance of the output stage.

If you decided instead to let the opamp suffer (could be a dubious choice however), 3.3V over 30mA is 100mW so probably the zener could dissipate it (too many disadvantages however!).

There are two other issues to consider: if you short the output, even if inherently limited by the amp output stage it will take some time to recover; something like the usual slew rate but slower since the output stage is completely out of its operating point (search for overload recovery for more info). So definitely you don't want it to happen (unless it's a very slow signal).

The last issue is actually on the following stage, the ADC: if you use the recommended circuit, you have a resistor in series with the signal path and that's add to the source impedance of the signal, as seen from the ADC:

simulate this circuit – Schematic created using CircuitLab

The Zin and Cadc are an extremely simplified view of (most of) the ADC input. When the ADC works it needs to charge some kind of internal capacitance (for taking a sample or whatever process it uses). The Cadc capacitance is usually some pF for SAR converters, for example. The Zin impedance depends on the architecture and when the converter has a multiplexer frontend can be on the order of some kiloohm.

In short your protection resistor will slow down the charge and if it's too high you'll suffer in precision (because the capacitor isn't completely at level). It really depends on the ADC and the datasheet will say the maximum source impedance you can use with that converter. Good converters will say how many bits of resolution you'll have with some impedance.

Practical example: since you seem a Microchip lover I have the PIC18F87K22 datasheet (which, by the way has detailed info on this issue); it's a somewhat old part but the idea still is the same.

At page 360 you can see the equivalent input circuitry of the ADC (it's a 12 bit SAR):

The Vain is your opamp while Rs is your protection resistor (the equivalent output impedance of the opamp when not overloaded can be assumed as zero due to feedback). Your zener diode actually adds some capacitance to ground (some pF) but you'll worry about than when you get to higher speed signals.

See that you have about 2-4kohm input resistance in the ADC due to multiplex circuitry and you need to charge a huge 25pF capacitor (as I said it's an old part, these day the sample capacitor is more like 5-10pF).

On the next page it actually says in bold

The source impedance affects the offset voltage at the analog input (due to pin leakage current). The maximum recommended impedance for analog sources is 2.5 kohm .

Yep, there's leakage current too. I won't copy all the page, just read it for the complete design process or better yet the relevant part in your ADC datasheet.

In short: your suggested 1k protection resistor (properly placed) probably is correct. Assuming the amp is powered at 5V the output current is limited to 1.7mA. You could go down to 180 ohm if you have power to spare and have 10mA on the zener.

One last thing: I don't like it but you'll see it done and often there is a way do do it correctly. You don't need the zener actually. If you look at the equivalent input circuit from microchip there are clamp diodes for protecting the input (they are there for ESD protection). Often if you can limit the current to less than 1mA you can use them as signal clamps and omit the zener (Microchip has TB3013 which explains the horrors of such configuration). I recommend to mount the zener but there are many cheap circuits around exploiting that.

• Hello Lorenzo, thank you for your feedback! I recently looked up the ADC characteristics for the Teensy 4.1 and it gives good info. For typical mode, R_in of the ADC is ~12.5 kOhm and C_in is ~1.5pF. I also looked up TB3013 and saw that they used 2 schottky diodes, one to Vss and one to Vdd, with a small resistor connecting them to the input voltage, would this configuration be a better choice? Note: all signals will lie in the range of 20-20kHz, I'm messing around with bandpass filters for an audio visualizer. Also, I am not terribly concerned about overloading the ADC pin, just primarily ESD May 25 at 14:35
• If it's for ESD you most probably don't need it since the node is embedded in the circuit between the amp and the adc. Quite difficult for usual ESD to reach there. Using a VCC clamp you risk to pump the 3.3 rail with the 5V output from the opamp (you don't want that, trust me) May 26 at 6:05

As you have it, the circuit won't protect your ADC input. The voltage across the zener diode cannot exceed 3.3V, that much you've understood. But the voltage across the resistor can rise to any value.

In other words, the ADC input potential will be the sum of the voltages across R1 and the diode, because they are in series. Since the voltage across R1 is not constrained, neither is the voltage at the top of the diode!

I think you meant something like this:

simulate this circuit – Schematic created using CircuitLab

In this circuit, D1 successfully constrains $$\V_{OUT}\$$. Think of it this way: we know that the voltage across D1 cannot exceed 3.3V, and since its anode (bottom) is held at 0V, its cathode is never permitted to rise above 0V + 3.3V = 3.3V. Your version fails because you're not holding the diode's anode at 0V.

One of the purposes of R1 is to protect the diode. If the voltage source "IN" is low impedance, and connected directly to D1's cathode, when it tries to rise beyond 3.3V D1 becomes a very good conductor, and will carry a lot of current to ground in an attempt to keep its cathode under 3.3V. Somebody has to lose that fight.

To avoid the fight, we employ R1 to provide some "elasticity" between "IN", which insists on being 6V (for example) and "OUT" which the diode insists cannot be more than 3.3V.

The result is a controlled, reasonable current through R1 and D1, instead of a current limited only by the combined impedance of the input signal voltage source and the over-driven diode.

Note that as long as $$\V_{IN}\$$ never exceeds 3.3V, then $$\V_{OUT} = V_{IN}\$$, and the voltage across R1 never rises above 0V. In this state, there's no current ($$\ I = \frac{V_{R1}}{R1} = \frac{0V}{1k\Omega} = 0A \$$) through R1, The only current (besides diode leakage) will be the ADC's own input current demand, which will be very low. It's only when $$\V_{IN}\$$ rises above 3.3V that current rises beyond that, since it's only then that R1 will have an appreciable voltage across it.

• This answer seems to assume that Zener diodes are ideal devices that do not conduct if V<Vz and will conduct if V>Vz, but unfortunately they are not ideal devices. A Zener diode will start conducting current long before voltage reaches Vz, and voltage still can go above Vz, so it may degrade signal and may not offer protection. A Zener diode will only have rated voltage Vz over it when rated current Iz runs through it, and even that has some tolerance. May 24 at 13:29
• @Justme Fair point, though OP doesn't seem to be ready for that May 24 at 13:31
• @SimonFitch I am studying EE in college, bring it on :) May 25 at 14:30
• Also, thank you for your input! However, why would there be no voltage across R1 if V_in > 0? In my comment to Lorenzo, I found that the input resistance of the ADC I will be using is ~12.5kOhm, and if 125Ohm<R1<1.25kOhm, then I would expect some voltage to be over R1? May 25 at 14:39
• @mistasef You're right, there will always be some voltage across R1, from diode leakage and ADC input current, my analysis was assuming those to be negligible. Sorry I wasn't more clear about that. 12.5kΩ is surprisingly low. May 25 at 21:35