The LTC4006-6 parts arrived the same day as the 2A version PCB. I decided to assemble the PCB is stages to avoid having to debug everything at once. The battery charger was populated first. After a false start, where I put the wrong value for R3 in the thermistor circuit, it fired up and appears to be completely functional:
- Charging current 1.95A.
- Output voltage 8.446V (0.55% high)
- Measured efficiency 95% (1.44A @12V vs. 1.95A @ 8.2V)
- C/10 indicator is functional
- Timer is functional
The gate signals to the top and bottom FETs were very clean. Without a battery load the current draw from DCIN is only 13mA, which indicates there is no shoot-through between the drivers.
The only charger issue I found was that the LED did not turn off completely when the CHG_ output changed to sinking 25µA . Apparently the LED is too efficient. A 3kΩ resistor across the LED fixed the problem.
The next step was to populate balancer circuitry and test it. Things did not go well. The balancer control loop was unstable without a battery, but when I connected the battery L2 smoked...twice. I went back to the LTspice simulation and came up with a better compensation scheme that would work with just a large capacitor connected to BATMID. It turns out that the loop cannot tolerate heavy filtering on the positive input of the opamp, but it needs some filtering. Changed C11 to 22pF. I also changed R17 to 10kΩ in case the opamp output went to the supply rail it would limit the current into U4.
At this point I was testing the balancer by connecting a 220Ω resistor from BATMID to either BAT+ or BAT-. The buck would operate with a resistor to BAT-, and the boost would operate with the resistor to BAT+.
Next, I connected a 2S 3.5Ah Li-Ion battery and charged it with the balancer. Everything worked as designed.
The last test was to measure the current drain from BAT+ and BATMID when DCIN was absent. I measured 22µA from BAT+, as expected. The current out of BATMID was 13mA! After testing a couple of theories, I eventually decided that the SW pin of U4 was sinking current since it never expects the SW pin to be held above its ground potential.
The best solution that I came up with was to disconnect the balancer from BATMID when the CHG_ signal went high. This required another AO3400 FET switch and a resistor ( and another PCB turn.)
The latest schematic with the fixes is located in the project details.