I'd like to measure the voltages of individual lithium-ion based cells (LCO, LiFePO4) in a battery pack (up to 4 cells in series), using an ADC. I was thinking about the following approach, using an analog multiplexer and an amplifier: enter image description here

  • The multiplexer is powered by the battery to prevent the cell voltages to be above the multiplexer's supply voltage.
  • The multiplexer routes each cell's positive and negative terminal to the amp's inputs.
  • The amplifier is also powered by the battery pack.
  • The amplifier has a gain of 1 and turns the selected cell's voltage into a single ended signal that is then divided down to ADC range.

I'm looking for an accuracy of 10 mV.

My questions:

  • Is this a reasonable approach?
  • What should I look out for in the amplifier? So far it would have to support rail-to-rail inputs, unity gain and high CMRR. Any recommended types for this application?
  • Channel select and inhibit inputs could simply be driven with an N-channel FET and a pull-up to +BATT. Should I consider other approaches?
  • What kind of filtering should I have at the amplifier's inputs?
  • Are there any caveats when the pack has less than 4 cells (in the schematic: BT3 and BT4 shorted for a pack with 2 cells)
  • \$\begingroup\$ What should I look out for in the amplifier? You're missing: rail-to-rail input voltage range. \$\endgroup\$ Commented Mar 27, 2019 at 13:05
  • \$\begingroup\$ That was actually in my notes and somehow didn't make it into the question. Added. \$\endgroup\$
    – Christoph
    Commented Mar 27, 2019 at 13:07
  • \$\begingroup\$ This design is basic but lacks specs & features like UVP,OVP, OTP, CMRR, Noise filter, in addition to logic level shifter, rip-up and retry with better specs first ! Add Fault detection, and ADC conversion cycle time. with test points and calibration and provision for off-chip balancing. Never start with a schematic! ALWAYS start with design criteria.! \$\endgroup\$ Commented Mar 27, 2019 at 14:50
  • \$\begingroup\$ @SunnyskyguyEE75 indeed there's more to talk about, since this measurement circuit would be part of a balancing charger. However, discussing the whole charger would probably get closed as too broad. So let's keep the discussion focused on actually measuring voltages, and for that purpose I need no UVP, no OVP and no OTP. \$\endgroup\$
    – Christoph
    Commented Mar 27, 2019 at 20:17

1 Answer 1


The approach is reasonable. Things I'd consider adding: -

  • Resistors in series with each battery feed to the multiplexer to prevent circuit board track burning when you get it wrong and short the battery out.
  • Use an InAmp with a small negative rail so that you can avoid having to get rail-to-rail devices (more options are created)
  • If you implement the series resistors I mentioned then a 10 nF across the InAmp input terminals and 10nF from each input to ground gives you sufficient filtering.
  • Ensure that the maximum battery voltage does not get close to the peak voltage supply for the CD4052. Max value is 20 volts from the data sheet.
  • Logic line levels do need to follow the battery supply so use MOSFETs and pull-ups as you mention.
  • I'd consider using the AD620 as the InAmp but don't forget the small negative rail (circa -3 volts)
  • For the ADC, the potential divider needs to be calculated correctly and the inherent resistance it provides might be enough of a protection on its own. However, it doesn't hurt to have diodes to both rails in case of over or under voltage.
  • \$\begingroup\$ The positive input would have to accept rail voltage as well since the amp is powered from the battery. Unless I create a 20V positive rail as well. \$\endgroup\$
    – Christoph
    Commented Mar 27, 2019 at 13:42
  • \$\begingroup\$ Yes, it will. Using isolating DC/DC converters that produce (say) a 3 volt DC output, you can use one for the negative supply and one bumbing up the top battery voltage by 3 volts to give you the extra clearance. On the other hand, the AD8223 InAmp (from memory) will work down to 0 volts and so just an uplift on the battery voltage is needed. \$\endgroup\$
    – Andy aka
    Commented Mar 27, 2019 at 14:20
  • \$\begingroup\$ The AD8223 has a minimum gain of 5, so I'd have to divide the cell voltage and open another can of worms. The suggested -3/+18(-ish) supply seems more reasonable. I could also supply the multiplexer from +18V. \$\endgroup\$
    – Christoph
    Commented Mar 27, 2019 at 20:32
  • \$\begingroup\$ AD8422A: Vin from -Vs+1.2V to +Vs-1.3V, unity gain, CMRR (DC, G=1) min 86 dB, and cheaper than the AD620 (CMRR at DC, G=1: 73 dB) \$\endgroup\$
    – Christoph
    Commented Mar 27, 2019 at 20:41

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.