My Instructable "Battery Powered Raspberry Pi in Repurposed Laptop" shows how to make two different battery charger boards for 12.6 or 16.8 volt LiPo packs. The first  board uses a Max1873 with an ATtiny microcontroller to monitor the charging parameters (see below). 

The Max1873 board works great if you want to write your own code for total control but it adds complexity to the project. The second battery charger board uses an MP26123 or MP26124 from Monolithic Power Systems. These chips will pre-charge a dead battery, stop charging when full, monitor battery temperature, and limit the total charge time without any assistance from a microcontroller. The MP26123/4 chips also include the main switching FET inside the package which reduces the layout complexity. The assembled MP26123/4 board is shown below.

I used the typical application and evaluation board schematics from the MP26123 and MP26124 data sheets to design this board. The part values that need to be changed for the different battery configurations are shown in the following schematic. The Eagle schematic file "MPS_Charge_Controller.sch" is available for download in case you want to modify the design.

The MP26123/4 chips do not reduce the charge current in order to limit the input current but there is a 5 amp slow blow fuse on the board as a fail safe. Instead of the typical Schottky blocking diode on the input, I use a PFET to reduce heat. There is also a PFET instead of a diode to "Or-Tie" the battery to the load without the usual 0.4 volt diode drop. This is important because the voltage from a nearly empty 3S battery pack is barely enough for the display backlight to keep working. The MP26123/4 board feeds the LM2596 buck regulator loads with either the battery voltage or the 19 volt input. There are no voltage dropouts when the 19 VDC input is unplugged or plugged in. The enable pin of the MP26123/4 is brought to the card edge and can be driven high by the Pi to shut down charging if necessary.   

A simple SR latch is always powered in order to enable the buck regulator loads when the laptop's push button power switch is engaged. This latch is powered from a 3.3 volt linear regulator sourced from the battery or 19 volt wall supply. The current draw from the battery when the buck regulator loads are disabled is 315 µamps. Adding in the internal self-discharge of the battery pack at 2% per month plus the protection circuit at 3% per month will cause a fully charged 58 watt hour 11.1 volt battery to be drained in 324 days. If you are not going to use the laptop for some time, pull out the battery pack to cut the discharge in half.

The MP26123/4 will perform a precharge if the battery pack voltage is below 3 volts per cell. The precharge time is limited to 30 minutes at 10% of the full charge current. If the battery voltage rises above 3 volts per cell within 30 minutes, the charge current increases to the full charge level which has been set at 1 amp by resistor R12. The MP26123/4 is rated for up to 2 amps of charge current but I didn't want to push it too hard. When the battery voltage reaches the maximum level (4.2V x number of series cells), the charger transitions from constant current mode to constant voltage. The charge current will drop until it reaches 10% of the full level, causing the charger to shut down to avoid trickle charging. 

The maximum charge time is set at 4.5 hours with 0.15uf capacitor C6. Once you know how long it takes to charge your battery pack, you can adjust this capacitor value per the formula in the data sheet. A 10K NTC battery thermistor can be connected to the MP26123/4 to shut down charging if the temperature gets too hot or too cold. Using a standard 10K NTC table, the high temperature turn off is approximately 40ºC and the low temperature shut off is approximately 11ºC. If you don't connect a thermistor, you...

Read more »