I found myself in need of a rechargeable battery tester, so I went off to search the internet for a DIY tester.
I was pleasantly surprised to find that John Lowen, had built a Rechargeable Battery Capacity Tester (v2.0), and also developed the PC interface software for desktop use.
Even better I found that Paul V. had also built the same tester and had made several improvement in the design and software.
I already had a spare INA219 high-side bi-directional DC current and voltage sensor breakout board made by Adafruit, a prototype single L2 MOSFET board that I had built last year, and a Teensy 3.2 microprocessor, so all I needed was a board to tie it all together.
The Teensy 3.2 has a DAC output so I decided to utilize that instead of the original PWM scheme. I also added several other bells & whistles just for future upgrades if needed. I kept the original 10K current adjust potentiometer, along with several switch inputs on header J5.
I added a encoder header J6, an alternate power header J7, and an I2C display header J1.
The IXTX200N10L2 MOSFET has a turn-on voltage of around 3 volts, so I used an op-amp with an offset voltage of 2.5 V and a gain of 0.62 to maximize the DAC’s output range of 0 to 3.3 volts. The offset was provided by a MCP1525 2.5 volt reference in a TO-92 package.
The system is limited by the INA219B board to 3.2 amps and 26 volts, but this could be increased to 6.4 amps by changing the INA219 boards current sense resistor to 0.05 ohms with a degradation in sensing resolution. For my needs the 3.2 amp specification works just fine.
The choice of components was determined mainly by what parts I had in stock, and the only items purchased were the buzzer, the bias resistors for the op-amp, and the printing of the circuit board by OSH Park.
I did have some issues with the version 2.2 board such as a bad U3 Eagle CAD footprint, a missing capacitor, and a missing connection to the MOSFET terminal block, which were all taken care of in the 2.4 board version. I also removed the C4 capacitor as I had included it just in case the DAC didn’t work out, and I needed to revert to PWM mode.
I used a Bud Industries IP-6131 case for installing the boards and connections. For mounting and supporting the boards I used arc-resistant GPO3 fiberglass with a thickness of 1/8″ (3.2mm). A small piece of the GPO3 was also used to stiffen the back of the banana jacks.
15 gauge stranded silicone test-lead wire was used from the positive front panel jack to the fuse and then to the current sensor. Solid 16 gauge wire was used from the current sensor to the MOSFET drain connection, and a double solid 16 gauge connection from the MOSFET source to the front panel negative jack.
The fuse holder is a Littlefuse Inc. 01550320ZXU which is capable of 20 amps, but fused to 3 amps using an ATO 32 volt blade fuse.
For the L2 MOSFET assembly, the board was left unpopulated except for the MOSFET, a 14 gauge jumper from CS1 to CS4, a jumper across R1, and a 2 pin header at J1 connected to CS1 (Gnd) and R1 (Gate). The sense amplifier and current sense resistor is not needed in this application. I placed multiple 1/4″ holes in the top sides of the case to allow airflow for the heatsink.
A small 12 volt 60mm fan operating at 5 volts was included for higher power testing, but is not needed for use below 2 watts. I may add a software controlled switch in the future that only turns the fan on when needed.
The display is a RGB 4 line Negative LCD display from Adafruit with one of my I2C to RGB LCD / EEPROM interface boards attached.
Everything is normally powered thru the USB connection to the host computer.
Both the LCD display and the Windows PC software update the data in real-time. The LCD also displays the DAC setting and the percent error from the target mA setting.
The above graph was generated by the Windows PC software after testing a 3600 mAh Lithium battery with a 500 mA discharge current for 7 hours and 17 minutes.
Link to John Lowen’s Version 2.0 Windows PC program
Eagle CAD V7.7 board and schematic Ver. 2.4 Zip file
Eagle CAD board and schematic files RGB I2C Display with EEPROM
Eagle CAD board and schematic files Single L2 MOSFET and heatsink
Arduino sketch Battery Tester Rev. 3.3 for 4x20 display Zip file