# Reducing Common Mode Voltage at the ADC input

I need some help from you expert engineers.

I have to automatically measure VCE / IC and VBE / IB of a big bunch of transistors under specified collector and base voltages.

Since Vcin and Vbin can be either positive or negative voltages (NPN and PNP transistors) I chose an ADC (ADS122C04, http://www.ti.com/lit/ds/symlink/ads122c04.pdf) capable to work with such voltages.

To stay in the ADC's maximum voltage ranges (common mode voltage) I tested two different solutions:

• Use two voltage dividers one for AIN0 and the other for AIN1. But, any small mismatch between resistors values leads to very high errors.
• Use a virtual ground tied to AIN1 and a single voltage divider for AIN3. Virtual ground tied to AIN1 keeps the AIN1 voltage to 0 and AIN0 to a voltage which is below the max ADC's input voltage. This works well to measure VCE and IC, I get values very close to what I measure with my bench multimeter (see output below replacing the transistor with a 10K resistor between collector and emitter).

Problem is with IB and VBE. Following the same approach used for IC/VCE I should also tie VGND to the base but this shorts base and collector.

To overcome this issue, I used an IC switch (ADG1636, https://www.analog.com/media/en/technical-documentation/data-sheets/ADG1636.pdf). Hence the microcontroller, using the Sel signal, switches AIN0, AIN1 between R1 and R2 (collector and base) before the ADC reads the voltages. I chose ADG1636 because the low series resistance.

Everything works well up VCin = 2.6 - 2.7V after that the measured voltage across the burden resistor gets smaller than the actual value (again the transistor with a 10K resistor between collector and emitter).

I understand that the IC switch has a series resistance which get larger when voltage increases but, since the current on AIN0 and AIN1 is quite small, I thought it shouldn't impact the measurements.

I stuck here.

I need any advice either to get rid off the IC switch and read VB/IB without shorting base and collector or to make the switch working up to larger voltages.

More generally, how can I reduce the Common Mode voltage at the ADC's input?

By the way, I simulated the classic approach with a non inverting level shifter based on Op-Amp (one for each input) but apparently readings would not be very precise.

Other option could be using an instrumentation amplifier (like INA826) but this would increase circuit's complexity and price.