Introduction to Battery Chargers (Part 2 of 2)

A close up of electronics Description automatically generated
Published on by John Teel

In this second part on battery chargers we’re going to be looking at the BQ24092 and the BQ24703 chargers from Texas Instruments.

If you are not familiar with lithium battery chargers I highly recommend you first read part 1 where I explain some of the fundamental concepts.

In Part 1 of this series, we looked at a relatively simple charger, the Microchip MCP73831. Here’s a quick review of the MCP73831:

  • Limited to a maximum charge current of 500 mA
  • Single cell charger only
  • Linear charger (versus a switch-mode charger)
  • Only five pins total
  • Single status output pin
  • Single pin for setting the various charging currents
  • No ability to monitor the battery temperature

The BQ24092 from Texas Instruments is somewhat more complex than the MCP73831, but not tremendously so. It’s still a relatively simple linear charger.

NOTE: This is a long, very detailed article so here's a free PDF version of it for easy reading and future reference.

On the other hand, the BQ24703 is a switching charger that is considerably more complex than the MCP73831 or the BQ24092. The BQ24703 also happens to be a charger that I designed for Texas Instruments years ago, so I’m excited to review it with you.

Texas Instruments BQ24092

Similar to the MCP73831, the BQ24092 is a linear battery charger for charging a single lithium cell. The MCP73831 only has 5 active pins, whereas the BQ24092 has 9 active pins.

One of the extra pins allows you to independently program the pre-charge and charge termination currents separately from the fast charge current.

Another additional pin provides a status output indicating there is a sufficient input supply voltage present. Another pin monitors the battery temperature, and finally a fourth additional pin is a charge current override function for USB applications.

We’ll look at all of these extra pins more in-depth shortly.

Typical application diagram for BQ24092

Figure 1 – Typical application diagram for the Texas Instruments BQ24092 battery charger.


Higher fast-charge current

One of the big differences between the BQ24092 and the MCP73831 is the maximum charge current. With the MCP73831 you can program the fast charge current to be from 15 mA to 500 mA.

With the BQ24092 you can program the charge current between 10 mA and 1,000 mA. The charge current is set via resistor tied to the ISET pin.

Because the BQ24092 has a higher maximum charge current, it’s especially advantageous to use when charging larger batteries.

As discussed in Part 1, you typically want to charge a lithium battery at a 1 C rate.

For example, if you have a 500 mAh battery, you want to charge it with a maximum charge current of 500 mA. If you have a 1000 mAh battery, on the other hand, then you want to charge it at a maximum current of 1000 mA.

If you use a charge current lower than 1C the charging process will take an unnecessarily long time. Since we all want devices that charge as fast as possible you will usually want to charge at the maximum rate allowed by the battery.

There wouldn’t be a huge benefit to using the BQ24092 over the MCP73831 if you’re using a 500 mAh battery. However, if you have a battery that’s 1,000mAh, then the BQ24092 would allow you to charge it twice as fast as the Microchip battery charger.

Pre-charge and charge termination currents

To quickly review, there are three different charge current levels that you typically need to program for a battery charger:

  1. Pre-charge current. This is also known as the preconditioning charge current or trickle charge current. It is a low current that pre-charges a battery if it is highly discharged. You can’t (or shouldn’t) immediately begin fast charging a depleted lithium battery. Think of this preconditioning stage as similar to warming up your car’s engine before driving it on a cold winter day.
  2. Fast-charge current. Once the battery gets up to a certain charge level, typically about 10% of full charge, then the charge will transition into fast charge mode. This is when the charge current is at the maximum.
  3. Termination current. The charger outputs a regulated voltage and monitors the charge current going into the battery. Once the charge current goes below a certain threshold, called the termination threshold, the battery is considered fully charged, and the charging process stops.

The MCP73831 uses a single resistor to set the pre-charge current, the fast-charge current, and the charge termination current.

This can be somewhat limiting, so the BQ24092 provides two separate pins for programming the charge currents. One pin sets the fast-charge current and the other pin sets the pre-charge and charge termination currents.

Charge current override function for USB

The BQ24092 also has a special input pin called ISET2 that allows you to override the programmed charge current for USB based charging applications.

When the ISET2 pin is high, the charge current is set to 500 mA. When this pin is left floating, the charge current drops to only 100 mA. When the ISET2 pin is pulled low, the programmed charge current is used.

A USB port on a computer (in USB lingo this is called a Standard Downstream Port or SDP) can, at most, supply 500 mA of current.

In the original USB specification a device had to request permission from the host (via a process called enumeration) in order to draw that 500 mA. Without enumeration the maximum allowable current was only 100 mA.

A lot of devices (especially with dead batteries) didn’t find 100 mA to be enough to even power up to initiate the enumeration process. So the USB spec was updated in 2013 to allow up to 500 mA without enumeration.

The BQ24092 was released prior to that USB spec update so that is why it offers a 100 mA setting for USB functionality even though that current level is no longer used for USB.

Power Good Pin

Both the MCP73831 and BQ24092 have a pin that illuminates an LED to indicate when a charge is in progress. This same pin can also be used as an output pin feeding to a microcontroller allowing the microcontroller to monitor the charging process.

On the MCP73831 charger, this pin is called the STAT pin while on the BQ24092 it’s called the CHG pin.

However, unlike the MCP73831, the BQ24092 also has a Power Good pin (PG). This pin indicates (via an LED or I/O pin to a microcontroller) that the power source feeding the charger is above a specified acceptable voltage threshold.

The PG function is beneficial because a lot of components will misbehave if they don’t have the appropriate input voltage supply.

Battery temperature sense

Another additional important advantage of the BQ24092 compared to the MCP73831 is that it includes a temperature sense pin. This allows the charger to monitor the battery temperature, and to adjust the charging current as necessary to prevent the battery from getting too hot.

There are four battery temperature thresholds: 60°C, 45°C, 10°C, and 0°C. Normal charging occurs between 10°C and 45°C.

If the battery temperature is between 0°C and 10°C then the fast-charge current is reduced by half. If the temperature is between 45°C and 60°C the maximum regulation voltage is reduced to 4.1 V. If the battery temperature is above 60°C or below 0°C then the charger is disabled.

Texas Instruments BQ24703

I’m especially excited to review the BQ4703 battery charger because this happens to be a charger that I designed for Texas Instruments when I was a design engineer there years ago.

This battery charger is considerably more complicated than the first two we’ve looked at, but this article will go through it one step at a time.

We will start by considering a few of the primary things that differentiate this charger from the previous two chargers. Then, we’ll review the typical application schematic diagram.

Switching Regulator

The BQ24703 has many added features when compared to the relatively less complex MCP73831 and BQ24092. However, the first thing that sets this charger apart is that it’s a switching charger.

As covered in Part 1, linear chargers (like the MCP73831 and BQ24092) waste a lot of power, especially if the input voltage is much higher than the output voltage.

This wasted power is dissipated as heat. If the temperature is too high, the charger is forced to reduce the charge current to prevent the overheating of the charger. When this happens the battery will take longer to charge.

Just as with a linear regulator, a linear charger wastes more power when the input voltage is significantly higher than the output voltage.

Side Note: A linear charger is really just a linear regulator with the ability to regulate voltage or current (depending on the charging stage), so many of the same fundamental concepts apply to both. The same is also true for switch-mode regulators and switch-mode chargers.

There are two types of switching chargers, a buck and a boost (just like switching regulators).

For more details on linear and switching regulators see my previous blog on how to pick the right voltage regulators for your project.

A buck regulator takes a higher voltage and steps it down to a lower voltage, while a boost regulator takes a lower voltage and steps it up to a higher voltage.

The BQ24703 is a buck switch-mode charger. Therefore, the input voltage needs to be higher than the voltage of the battery it’s trying to charge. This type of charger is especially beneficial compared to linear chargers when you have a large voltage differential between your input voltage and output voltage.

For example, let’s say your input supply is 12 V but your battery is only a 3.7 V lithium. A buck-switching charger like the BQ24703 is going to waste a lot less power than a linear charger in this application.

It will also charge the battery faster because it will be able to stay in fast charge mode and use the specified maximum current to charge the battery since it won’t enter thermal regulation mode.

On the other hand, if the input voltage is only 5V (such as with USB chargers) then a linear charger probably makes more sense. Linear chargers are less complex, require fewer components, and are cheaper so only use switch-mode chargers when really necessary.

Multi-cell charger

Multi-cell chargers allow you to stack up multiple cells in series to obtain higher output voltages.

For example, instead of just a single 3.7 V cell, a multi-cell charger would allow you to stack up two, 3.7 V cells to create a 7.4 V double-cell battery. You could even stack three cells to get 11.1 V, and so on.

Dual cell Lithium Polymer battery packFigure 2 – Two-cell lithium polymer battery pack with a 7.4 V output voltage.

When charging multiple cells with a linear charger or buck-switching charger, the input voltage must be higher than the voltage of the battery you’re trying to charge.

The way around this limitation is to use a boost switching charger, which can take a small input voltage and step it up to a higher output voltage. For instance, this means with a boost charger you can charge a 2-cell stack (Vbat = 7.2 V) from a 5V power supply.

Dynamic power management

Another key feature of the BQ24703 is called Dynamic Power Management (DPM). This means that the charger can dynamically change the battery charge current based on the amount of available current.

For example, say the maximum current your AC adapter can supply is 1 A and your system is pulling 400 mA while you are also trying to recharge the battery. The BQ24703 will then automatically set the battery charge current to 600 mA.


IBAT = Battery charge current, IADPT = Wall adapter current, and ISYS = System current.

In this same example, if the current required by the rest of the system suddenly decreased to only 200 mA, then the DPM feature would allocate up to 800 mA for charging the battery. Of course, this would only occur if the fast-charge was set for 800 mA or higher.

DPM allows the battery to always be charging with the maximum available current. The less current the system uses, the more current the charger allocates to recharge the battery.

System selector switch

In addition to Dynamic Power Management, the BQ24703 also integrates a system selector switch.

This allows you to, manually or automatically, switch the system from being powered from the AC adapter or from the battery.

For example, when powering your product from an AC adapter, if you suddenly unplug it, then the BQ24703 will automatically switch the system to be powered from the battery.

Then, if you plug it back into an AC outlet you can also have it setup to switch back to AC power.

This function is implemented via two external MOSFET switches which are controlled by the BQ24703.

Schematic review

Next, we’re going to look through the typical application schematic from the datasheet for the BQ24703 to delve into this charger further.

Refer to the typical application diagram on page 10 of the datasheet which is also shown below in Figure 3.

Typical application diagram for the Texas Instruments BQ24703 battery charger

Figure 3 – Typical application diagram for the Texas Instruments BQ24703 battery charger.

MOSFETS: There are several different MOSFETs, including U1, U2, and U3. All of these are P-MOSFETs. Note that U1 is not labeled in the diagram but is located in the bottom right corner of the above schematic.

U1 and U2 perform the system selector function. When U1 is turned on the system is powered from the battery, and when U2 is turned on the system is powered directly from the AC adapter.

U1 is driven by the BATDRV pin and U2 is driven by the ACDRV pin on the BQ24703.

These switches are called break-before-make which means one switch is turned off before the other switch is turned on. This ensures that both switches are never turned on at the same time which would short the AC adapter voltage directly to the battery.

Buck switching regulator: The MOSFET labeled U3 combined with diode D4 and inductor L1 form the core circuit for the buck switch-mode charger. The gate of U3 is controlled by the BQ24703 via the PWM pin.

AC adapter current (ACP/ACN): Coming off the AC adapter input is resistor R14, which is a sense resistor. The BQ24703 measures the voltage drop across this resistor to determine the AC adapter current. R13, R15, and C3 all form a low-pass filter so any switching noise is removed from the adapter current sense voltage.

This all allows the charger to measure the current being pulled from the AC adapter. This is important so that the charger knows how to dynamically manage the power (DPM), and how much current is available to charge the battery.

ACDET pin: There’s also an AC detect pin that serves as an AC adapter detect. This is just one pin that ties to the AC adapter voltage through a resistor divider. It allows the charger to know if the AC adapter is present.

If you’re powering the system directly from the AC adaptor and you suddenly unplug it, the charger will detect that it’s been unplugged and will automatically switch to power the system from the battery.

IBAT pin: The IBAT pin outputs a voltage that’s proportional to the battery charge current. You could feed this into an Analog to Digital Converter (ADC) in your microcontroller to monitor the current charging the battery.

VREF pin. The VREF pin outputs a regulated 5 V that can be used as an accurate reference voltage for any of the resistor divider setpoints or for pull-up resistors on any of the open-drain outputs.

ACSEL: The AC select pin allows you to manually select whether the AC adapter or the battery powers the system.

ALARM: An alarm condition is generated if the battery is detected as being depleted.

ACPRES: The AC present pin is an output that tells you if the AC adapter is present or not.

SRSET and ACSET: These are two voltages that you set up through a resistor divider that set the adapter current and battery charge current.

VS: This pin monitors the system voltage in order to implement the break-before-make function that I mentioned for the system selector function.

BATP: This pin monitors the output voltage on the battery via a resistor divider. This forms the feedback loop which regulates the output voltage of the charger.

BATDEP: This pin ties to another resistor divider off the battery voltage. It is for setting up the alarm if the battery voltage falls below a certain voltage (which is set by the ratio of the resistors in the divider).

COMP: Any circuit that has a feedback loop has the potential to become an oscillator if that feedback goes positive. The RC network connected to this pin helps to compensate for this feedback loop to prevent undesired oscillations.

SRP/SRN: These two pins connect across a sense resistor for measuring the battery charge current. Just as with the AC adapter sense resistor, there is a low-pass filter (R19, R21, and C8) to filter out any switching noise.

VHSP: This is an internal voltage supply pin that generates a voltage that is a fixed number of volts below the AC adapter voltage. This voltage then is used to drive the P-FETS with a fixed gate voltage.

If the AC adapter voltage is above 10.5 V then VHSP will equal the adapter voltage minus 10 V. For example, if the adapter voltage is 12 V, then VHSP will be 2 V. This is done to ensure that the FETs don’t receive a gate drive voltage higher than they can tolerate.


In this two-part series we’ve closely reviewed three different battery charger solutions.

We started with the relatively simple MCP73831 from Microchip. This is a single-cell linear charger with a maximum charge current of 500 mA. This can be a good solution for many USB based charging applications.

Next, we reviewed the slightly more advanced BQ24092 from Texas Instruments. Like the MCP73831 this is also a single-cell linear battery charger. But it has a maximum charging current up to 1A, allows setting the pre-charge and termination currents separately form the fast charge current, and includes a temperature sense function for monitoring the battery temperature.

Finally, we reviewed one of my designs in the BQ24703. This is a switch-mode buck charger with the ability to charge multiple cells. It also includes advanced features such as Dynamic Power Management and a system selector.

If you read only one article about product development make it this one: Ultimate Guide – How to Develop a New Electronic Hardware Product in 2020.  

Other content you may like:

5 1 vote
Article Rating
Notify of
Oldest Most Voted
Inline Feedbacks
View all comments
Charles J Gervasi
Charles J Gervasi

This brings back memories of projects with battery chargers.


this kind of blog with reviewing the datasheets is very helpful. please keep it up. thanks a lot

vignesh K S
vignesh K S

Hello John,

If I connect two single-cell batteries in parallel to increase Amps, do I need a multicell charger or single-cell charger is enough

John Teel
Reply to  vignesh K S

You just need a single cell charger. Multi cell chargers are for series configurations.

vignesh K S
vignesh K S
Reply to  John Teel

It will take more time to charge right?


Hello John,

can you tell me for what the resistor R12 in figure 3 is used to?
The datasheet of the BQ24703 says it is used to set the AC adapter current limit.
But there is also the ACSET pin which is used to set the AC adapter current limit with the resistor R8.

This means there are two methods to set the AC adapter current limit. I don’t understand that.
Can you please clarifiy this?

Another point: For what the Z-Diodes at the right bottom side of figure 3 are used for?

Thank you!

John Teel
Reply to  Manuel

R12 and R11 setup a voltage divider for detecting the AC adapter is present. This goes to the ACDET pin which has nothing to do with the adapter current. The adapter current is set by R2 and R8 which tie to ACSET. The diodes you mention protect the gate of the MOSFET from being overvoltaged. Hope this helps.

Reply to  John Teel

Hi John,

thank you for the fast reply!
This is what I already thought. So the Note 1 of the datasheet with additional information about R12 is wrong.

Do you know what type of Z-Diodes are used there? Which zener voltage is required?


I have 4 input devices, but I connect this charger to the power transistor and find a nice cover from the 3 d printer. want to do it again. gnc 269 output 24 v. I hope you understand


Hi, would the BQ24703 be usable for a UPS system based on solar, 18650 batteries and a Raspberry Pi? It looks like it can control charging while also powering another device but does it switch fast enough to battery when there’s insufficient solar to not crash the Pi?

John Teel
Reply to  Andrew

Hi Andrew,

The BQ24703 has a maximum switching time between AC Adapter and battery of 3.5us. Here are some other things to consider:

Unlike a power bank, the switching here is simply between DC input and battery. This means that, given that R Pi’s require 5V, you do require a boost converter before the R-Pi load to accommodate the lower battery voltage as power source to the R-Pi.

In the end the BQ24703 wasn’t designed for solar applications and is missing key features for solar harvesting like Maximum Power Point Tracking (MPPT).

Instead I would look at something like the BQ24650 or other chips specifically designed for power harvesting.

Hope this helps!


Privacy Policy          Terms and Conditions