400 Watt, High Efficiency, Solar Battery Charger/Power Supply

Thread Starter


Joined May 19, 2014
400 Watt, High Efficiency, Solar powered Smart Battery Charger/Power Supply

For your project building pleasure, I would like to present a solar powered battery charger that I just finished. I wanted to put a solar power system in my RV but was not interested in spending $300 to $400 for an MPPT controller. So I decided to see how good of a solar controller I could build using the BQ2031 from TI. The BQ2031 is my favorite lead acid battery charger controller. I also wanted it to have high efficiency, so several design features are specifically geared to reduce loss. I started small, with just two Mosfets, and the final configuration uses six. Also, this is the sixth printed circuit board design I have done in the process of developing this charger. I am very happy with the final design. It has exceeded my efficiency expectations and I am pleased with its simplicity.

31.complete 1.JPG

32.Complete 2.JPG

I built this design on a single sided PCB, which should make the DIY people happy.

This circuit is configured for a 12 volt battery system. I have used the BQ2031 as high as 48 volts. (See the data sheet.)

If you don’t need 400 watts then you can down size the circuit. The Mosfets and drivers are configured into 3 groups of one driver and two Mosfets. Each section is good for about 10 amps so populate the sections that fit your power needs. (Note: 1 LM5104 and 2 Mosfets costs less than $7.) If you lower the amperage you will also have to adjust the compensation, see the BQ2031 data sheet.

This charger/power supply can be powered by a solar panel, or a power supply, or both. Simple diode OR-ing will give you a power system that can run on any source.

This version does not have a Maximum Power Point Tracking (MPPT) algorithm built in, but it has the hooks in place to implement it later. Perhaps phase two will be to add that function. Perhaps one of you might like to build it?

I have built three of the six Mosfet versions. The first two I tested at 25+ amp output at input voltages from 22 to 55 volts. They were rock stable and I never had a failure. The third one is the one that is going into my RV, so I lowered the output current to 21 amps. Also it is the one that I documented for this project.

Even though I only tested these at 400 watts I believe these are capable of operating at 500 watts with no problems.

I must warn you; this is not an easy circuit to build. It will take all your soldering and fabrication skills; surface mount, through hole, 10 and 12 gage wire, inductor winding and metal work (heatsink). Good luck.

What this thing does:
A switch puts the circuit into either battery charger mode or power supply mode.
- In the battery charger mode, it will function as a smart 3 state battery charger. (See the BQ2031 data sheet.) This is a good mode for when the RV generator is running, or the RV is in storage. This mode will bring the battery up to full charge and float it. Once in the float mode, the charger will not re-enter the bulk or absorption modes unless power is cycled. This is good for when the RV is in storage. If a cell shorts and is not noticed, the current is limited to 20% of Imax in float mode.
- In the power supply mode, it will function as a current limited, constant voltage power supply. The power supply should be set at the recommended float voltage of the battery. This mode will provide power from the solar panel to appliances and still float the battery. If the current demand of the appliances exceeds the max current of the charger, or there is not enough sun, the battery will supply the difference. The RV should never be stored in this mode. If a cell were to short, the power supply would continue to output max current, which could result in an exploded battery or fire.


- Input Voltage Range – 22 to 55 Volts.

- Battery Charger Output – 400+ Watts, 12 to 14.7 Volts, 25 amps (Tested) –

- Two Modes:
o Charger – Bulk, Absorption, and Float.
o Power Supply – Provides current to hold the battery at the float voltage while providing current for appliances.

- Efficiency – 90 to 94%, over full input voltage range and 12-14.7 output voltage range at 22 Amps (tested).

- Controller Chip – Texas Instruments BQ2031

- Synchronous Buck Converter – 3 X 2 Mosfets

- Printed Circuit Board Design – 4 X 6 inched, single sided.

- Adjustable Parameters:
o Bulk Current – Resistor
o Absorption, Float Voltages – Resistor/trim pot
o Power Supply Voltage – Resistor/trim pot
o Input Low Voltage Lockout – Resistor
o Charger/Power Supply Mode – SPDT switch

- Scalable Power Level – o 10, 20 or 30 Amps Maximum (did not test above 25 amps)
o Populating or not populating Mosfet/driver sets

- Automatic Fan Control

- Charger Mode Indicator Lights – Voltage, Current, Fault

- Low Cost – Less than $40 for semiconductors (ICs, Mosfets, Diodes, fully configured)

- Documentation
o Schematic – ExpressPCB, JPG
o PCB Files – ExpressPCB, Copper Connection, Gerber
o Construction Notes – PDF files, Text, Photos

Who should build this circuit:
Anyone looking to build a substantial solar power system will find this project very attractive. It has the power, efficiency, and most of the features to build an effective solar power system. If you have the skills to build this charger then you can save a lot of money.

Who should NOT build this:
If all you have is a $12 soldering pin, do not attempt this. To build this charger you need a good amount of soldering and fabrication skills and equipment. The BQ2031 goes unstable with an input voltage below 19 volts. This is due to the PWM limitations in the chip. So if you want to hook this up to a 12 volt panel, forget it. It won’t work.

About this project:
The main controller chip is a TI, BQ2031 lead acid battery charger chip. It has a built in PWM generator for controlling a buck converter. The BQ2031 drives an LM5104 which is a 100+ volt high side, low side Mosfet gate driver with adaptive delay. The LM5104 takes care of the dead time to prevent shoot through.
There are six switching Mosfets, 3 high side and 3 low side. There is a driver for each set of two Mosfets. The arrangement on the PCB allows the builder to populate 1, 2 or 3 driver/Mosfet sets to configure for their desired power level. The BQ2031 can be configured for most any voltage battery system.

This project is designed for a 12 volt battery system. You will have to work out the circuit changes for other battery voltages.

Most battery chargers have an isolation diode on the output to prevent the battery voltage from feeding back and damaging the Mosfets. The problem with diodes is that they are big energy wasters. If I had used a schottky diode, at 25 amps it would have dissipated (lost) 12 watts and dropped .5 volts (more loss). So instead of a diode I used a Mosfet with an LM5050-1 high side OR-ing Mosfet controller. These are generally used in hot swap power supplies. It drops the dissipation down to 2.5 watts and voltage loss down to .1 volts. It is a few dollars more, but well worth it for keeping the efficiency up.

To power the ICs, the LM5019 is a 100 volt buck regulator that provides +12 volts for the LM5104 gate drivers. Then I used an LM78L05 to power the BQ2031. The LM5019 has a low voltage lockout that keeps the Vcc voltages from coming on until the solar panel voltage reaches a minimum level. The LVLO is set by a voltage divider at the LM5019. This feature will keep the charger from oscillating on and off in low light conditions.

The charging mode is changed by bringing the “mode” terminal to +5 or ground. Grounding the line, puts it into battery charger mode. Connecting the line to +5V puts it into power supply mode. This line drives an analog switch that changes the scaling of both modes.

The main inductor is pretty straight forward to build. Take two Micrometals T175-52 toroid cores, tape them together and wrap 14 turns of 10 gage solid copper wire on them. I used insulated house wire (THHN, see photo). This works well for 20 amps and above. See construction notes for more info.

The fan is controlled from the Current LED (D5). So the fan will be on in bulk and absorption charging modes and off in float mode. In power supply mode, the fan will run continuously. Since this circuit is so efficient you may not need a fan at all. I just wanted to put in the option.

As said above, Maximum Power Point Tracking (MPPT) is not implemented in this design. Although, the hooks are in place to add the MPPT function later. There is a jumper in series with the SNS pin of the BQ2031. A voltage can be summed in with the current feedback to control the charger.

Data sheets for all ICs and Mosfets are in the data package. If you want to change the design or want to understand it better, refer to the data sheet. Most everything is straight out of the app note or data sheet.

Due to the amount of photos, construction notes and files, the documentation had to broken into 3 compressed files (rar) and put into the 3 following posts. Their total size is less than 30 Mb. Unzip them into one folder.
Last edited:


Joined Aug 23, 2012
This is a great project and big engineering.

I think you need to do some complement for the components id numbers as ic number, diode number, led number, mosfet number, I saw that you have a part list, but if have the completed components in the circuit is better, as the diode - 1N4007 or 1N400~4007, led - 2V/10mA/2mm, 2V/20mA/3mm, 3V/10mA/2mm, 3V/20mA/3mm, etc...

And what are the V/I spec?
D5 LED, .1" lead spacing
D6 LED, .1" lead spacing
D7 LED, .1" lead spacing


Joined Aug 27, 2009
What type of lead acid battery is the charger designed for? It looks like a excellent project for sealed AGM type batteries but most of the IC solutions seem to leave out the periodic equalizing charge function needed for flooded cells.

Thread Starter


Joined May 19, 2014
What type of lead acid battery is the charger designed for? It looks like a excellent project for sealed AGM type batteries but most of the IC solutions seem to leave out the periodic equalizing charge function needed for flooded cells.
The values in the design are for a flooded LA battery. You can easily change the voltage set points by changing the value of two resistors. (See the BQ2031 data sheet.)

Your comment about leaving out the equalization charge is interesting. I don't see that feature built in very often. I consider it maintenance and I have a power supply that I use for that purpose. I also want to keep a close eye when I am equalizing a battery. I check that all cells are bubbling equally.


Joined Aug 27, 2009
The old C40 has an equalization charge function that's just a timed 2 hour charge at 8 to 10% more than the absorption set-point voltage. It's set to manual because I like to monitor the gassing cells closely too while it's running. My battery monitor measures full charge cycles (SOC <50% recharged to > 90%, 20 is the current set-point for a message to run an equalization charge) and is linked to watering schedules based on absorption charge Ah. It's been my experience with solar powered battery systems using opportunity/short charge cycles vs mainly utility full cycles that regular mild equalization charges help to recover battery capacity lost from gradual sulfation and electrolyte stratification with tall batteries.
A manual ~10% equalization boost switch would be a nice option for the charger after a full charge is done.



Joined Aug 23, 2012
Very nice.

Is there a reason you didn't post it over in the Completed Projects?
Did you see what I wrote in #6, that's why you didn't see it on the Completed Projects Forum, because he needs to do some complement, I moved it from Completed Projects Forum to here.


Joined Sep 9, 2010
I'm not a moderator so it really doesn't matter how it looks to me!

I didn't look at every part on the list but it seems fine to me. If I went to actually build it I'd probably find the weak spots but nothing is jumping out at me.

I've often wondered about selling kits. If you compile all the required parts, buy in bulk, and make a modest profit off it, seems like it would be win-win. Think how much time you can waste sourcing the exact parts to order to build something. But then I realize that almost nobody makes anything anymore and I go do something else.

The guys that should support this niche would be a Mouser or Digikey or such. They could host a projects section and then work with the designers to offer a parts kit for each project.

Sorry, rambling out loud.

Thread Starter


Joined May 19, 2014
............ but it seems fine to me............If I went to actually build it I'd probably find the weak spots ..........
Thank you for looking at it. I did buy most of the semiconductors from Digi-Key.

If someone builds this then I'll probably be around to answer questions.


Joined Aug 23, 2012
Yea, I was a little surprised, but no big deal.

Is some part numbers in the parts list the only thing that caused you to move it out of "completed Projects"?
I moved it to here, because you missed to label some id numbers for the parts in the circuits and all the detail in #6, you should recheck all the parts in the circuits, yes, it's not a big deal, I will also miss some thing in the circuit too, so after you complement the id numbers and the new information, you can re-post on the Completed Projects Forum, if we check ok then we will let it pass.

We hope any Completed Project post on the Completed Project Forum, all the duplication information is enough when any member who want to duplicate it, specially the newbies , and thanks for you like to open your idea to share to the forum.

Thread Starter


Joined May 19, 2014

I do not understand what you are talking about.

ALL of the components are labeled in the schematic.
The schematic program generated the Parts list and I augmented the parts list with better descriptions.
The schematic program generated the net list that the PCB was made with.
Every component in the PCB matches the part in the schematic through the net list.
I turned off some of the bottom reference designators to clean up the display in the ExpressPCB file, but I made a picture in the documentation with all of the reference designators turned on (called reference designators.jpg)
I also stated in the construction notes that ExpressPCB does not have a bottom silk screen layer and that the builder will have to use the photos to help position the parts.