Submitted by Karl Kuhrman on Fri, 05/24/2019 - 11:50
A home-made BZen-BC1 without solar module or battery


The BZen BC1 is proof of concept (POC), bench environment Lithium Polymer (Li-Poly) battery charger (BC).

The goal of the BZen-BC1 project is to design a functional battery charger that can be assembled and operated by a person unfamiliar with or new to DiY electronics.

BZen-BC1 Project on GitHub

System Requirements

The baseline requirements for the BZen-BC1 are:

  • The BZen-BC1 shall charge a single cell (1S1P) Li-Poly battery which complies with UL 1642 or IEC 62133
  • The BZen-BC1 shall not require soldering to connect components
  • The BZen-BC1 shall be constructed of components readily available on the open market

See the FAQ section below for more on the rationale of our initial design decisions.


A battery charger comprises many components but the two most critical are the battery and an integrated circuit (IC) for managing charging of the battery. Since most charge management ICs are designed around a specific type of battery it is reasonable design practice to first select the battery and then the IC which will be used to manage charging it. This is what we've done already by deciding on a Li-Poly battery above.

Charge Management IC

Our selection of a charge management is based on the battery chemistry (Li-Poly) and two of the baseline requirements, namely solderless connections and availability on the open market. We have selected the bq2954TM made by Texas Instruments ( The bq2954 is designed to charge a Li-Poly battery and is available in a 16 pn DIP package, which will insert easily into a solderless breadboard. Since it is an active product by a major electronics manufacturer, it is readily available through several resellers.

A few nice features of the bq2954 we will take advantage of in our design:

  • Available power supply selection
  • Over/under temperature protection
  • Charge status indication
  • Battery insertion/removal detection

We will detail how we intend to leverage these in the features section which follows.

The data sheet for the bq2954.

Circuit Design

We first need to protect the devices in our circuit from being overpowered. We've selected a fixed voltage regulator, the UA78MTM made by Texas Instruments. This device will provide  a constant 5V and up to 500mA to our charge management IC and comes in a TO-220-3 package, which will insert nicely into our breadboard.

The data for the UA78M05.

BZen-BC1 Features

Selectable Power Supply

The intended purpose of the BZen-BC1 is to charge a Li-Poly battery with solar energy. Without an inverter or power conditioner, the output of one or more solar modules is unregulated DC electricity. Depending on available sunlight and the number and type of solar module(s), the amount of electricity coming out of these can be quite high. So we have another design decision to make, namely the maximum allowable electrical input. Returning to our baseline requirements, we see the design is for a single cell Li-Poly battery. With few exceptions Li-Poly batteries put out a constant 3.7V power supply, cut off (stop providing power) at 3.0V and require 4.2V for charging. So, we are going to need a minimum constant supply of power at 4.2V.

But this does not answer the question of what the maximum allowable electrical input should be. If we were dealing with a regulated power supply, we could say it also should be 4.2V, correct? Actually, no. Upon studying the bq2954 data sheet we see it requires a minimum 4.5V and a recommended 5.0V supply voltage. So, in order to use the bq2954 we need a 5V supply voltage for the IC and 4.2V for the battery and since we are not using a regulated power supply and one which is going to fluctuate widely depending on available sunlight, we are going to have to select a range of supply voltages the BZen-BC1 shall be able to manage.

Depending on available sunlight, a solar module will output power in the form of electricity somewhere between zero Watts and a higher number, which represents the optimal power output of the module at peak performance. It might make sense for us to select a module capable of providing the 5V supply we need. But unless that module is operating at peak performance, we may need more of the same in series or simply a more powerful module on the order of 4 to 5 times the size of the smallest module operating at peak performance. If a more powerful module (or a series of less powerful modules) can provide us with the 5V supply voltage we need in poor light conditions what might happen as conditions improve and these begin to approach peak performance? We could be dealing with upward of 25V to 30V. But we are dealing with very manageable numbers here. We can design circuitry to protect from over powering our battery charger while making sure it gets the necessary 5V supply voltage to do its job.

So, the design criteria for our unregulated power supply (one or more solar modules) is 0-30VDC.

But supposing we have a need to charge our battery and could not get the necessary power supply from the sun? Wouldn't it be nice if we could use an alternate, regulated power supply to charge our battery? Fortunately, the bq2954 has an integrated switching controller which will drive it to use our alternate power supply, for example a USB charger, if our the power output of our solar modules drops below the low threshold supply voltage.

So, a second design criteria for the BZen-BC1 is input of a regulated 5V supply voltage as an alternate source of power.

Of course, if neither power supply meets our needs the BZen-BC1 will make a nice paper weight.

Frequently Asked Questions

  1. Why choose a Lithium-Polymer battery?
    1. The short answer is Li-Poly is one of the most common and affordable types of secondary (rechargeable) batteries on the market. A more detailed answer can be found in our Choosing a Battery article.
  2. What are UL 1642 and IEC 62133 and why must the battery comply with one of these?
    1. The short answer is UL 1642 is accepted in the USA as the de facto standard governing safety of Lithium batteries and IEC 62133 is its counterpart in the European Union. More information can be found in our Standards Governing Battery Safety article.
  3. Why are soldering connections between components specifically excluded as a requirement?
    1. The short answer is one of the quickest and simplest ways to build an electronics project is to use a solderless breadboard. Soldering connections adds a layer of skill necessary to complete the project. Designing a project that does not use soldered connections is much harder in the current age than one that does. But then, the variety of soldered connections and the equipment/skill required to properly make them is far more advanced than in the days when solderless breadboard projects were far more common.
  4. Why components which are readily available on the open market?
    1. Seriously? OK, it is a requirement and thus deserves an answer. It is hardly worth designing an open source project if no one can build it, no? At least this is our opinion. Our designs are free to be shared, studied, and modified. Some are harder to build than others but we seek as an overarching goal on all our projects to make the design buildable with reasonable skill and economy.
  5. Why this project? Why not join one of the many existing open-source solar energy projects?
    1. The short answer is this project was started because we couldn't find an existing one to meet our goals? A more detailed explanation of how this project differs from others is given in our Related Projects article.
  6. Why does the BZen-BC1 not use power from the battery to power the charge management IC?
    1. The short answer is because a single cell Li-Poly battery provides a 3.7V supply voltage and the charge management IC requires a recommended 5V.
  7. Then why not use a multi-cell battery or two batteries in series?
    1. The short answer is for simplicity. The job is to charge the battery, not use it as a regulated power supply (that is a separate project, which builds on this one).
Project Type