This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

BQ24161 Using BGATE to wakeup/power-up when external source is plugged in

Other Parts Discussed in Thread: BQ24161

Quick overview of what I'm trying to do:

I'm working on a design where a BQ24161 is used for charging the battery and power path management. If the system is shut down, a downstream regulator is turned off, effectively killing the system (BQ24161 stays alive through the battery). The system can be turned on using a power switch or by plugging in an external power source. This is done by enabling the downstream regulator. In order to power up when an external power source is plugged in, the BGATE signal of the BQ24161 is used. The idea is that BGATE is low (connecting the battery to V_SYS) when the system is powered off. When an external power source is plugged in, BGATE will go high to disconnect the battery from V_SYS and use the external power for V_SYS instead. BGATE going high will enable the downstream regulator.

This is the problem I'm having:

The above mentioned procedure works ok, except that in some cases, plugging in an external power source will NOT power the system up. After running a few experiments, I found that if I put the BQ24161 into High-Z mode before shutdown, it will always power back up, but only in the next 30 seconds (before the watchdog timer expires). After that, the charger goes into DEFAULT mode and plugging a power source in will not result in BGATE toggling or changing. In DEFAULT mode all register settings are reset, meaning that the charge regulation voltage goes back to 3.6V. Therefore, if the battery voltage is above 3.6V when an external power source is plugged in, the charger won't attempt to charge it.

Questions:

  1. Is what I'm trying to do feasible? If not, what would be a good solution without adding a lot of external parts?
  2. Is there a way to keep the BQ24161 in High-Z mode even when the host turns off? What I'm seeing right now is that it goes back into the DEFAULT state 30 seconds after the host powers down. I'm using both the _CD pin and the internal HZ_MODE bit.
  3. General question about High-Z mode: Shouldn't the charger be in and stay in High-Z mode when the system is completely powered down? It seems to me that this is a major drawback that it will go back to the default state 30 seconds after the host powers off. This is where I would think High-Z would be needed the most. Or am I misunderstanding the purpose of High-Z?

Any feedback would be greatly appreciated.

  • BGATE only controls the external discharge PFET.  It only goes low, to turn on the PFET, when the IC is in HiZ, either because of no input power or using the CD pin or using the HiZ bit in the register.  The internal FET between BAT and SYS will also be on when BGATE is low.  But the internal FET is also on for supplement mode at all times.  So, In your case, BGATE going high only signals that the external PFET is off because input power has been applied (assuming that /CD pin and HiZ bit are not active).  The internal battery FET is still on, connecting BAT to SYS.  There is no way to disconnect the internal battery FET without adding another FET in series with between the BAT pin and the battery.

    Regarding 1, I suggest an external PFET in series between BAT pin and battery. 

    Regarding 2 and 3, the /CD pin is chip disable.  When pulled high, it turns off the buck converter and powers the system from the battery.

  • Thanks for the reply, Jeff. Still have a few questions:

    I'm not sure how adding an external PFET in series between BAT pin and battery would solve the problem. You would still control this PFET with the BGATE signal, right? The problem I'm seeing is that BGATE stays low when external power is plugged in. Whether I put the charger into High-Z mode or not, 30 seconds after the host powers off, the charger goes into default mode due to the BQ24161's I2C watchdog timing out. This resets the battery charging regulation voltage and if the battery is above 3.6V then plugging in an external power source will not cause BGATE to go high.

    Is this behavior normal or is BGATE really supposed to go high when an external power source is plugged in? Since the I2C watchdog expired and the host is off, we should not be in high-Z mode anymore, correct? Therefore, based on what you mentioned above, BGATE should indeed go high...

    Ok, I think I understand a little better what High-Z mode does (buck converter off). In the case of a complete system shutdown, where we turn of all downstream regulators and therefore kill the host, what would be the proper "shutdown' procedure for the charger? High-Z mode or not? It seems to me that it will only stay in High-Z mode for 30s.

  • BGATE depends on three things:
    1. Input power source
    2. /CD pin
    3. HiZ bit

    If you are using HiZ bit to enter HiZ mode, then when watchdog timer expires, you will exit HiZ mode. Use the /CD pin to control high Z mode. If you don't want battery power when input source is attached but you want the SYS output from buck converter to power the system, don't use HiZ. Add the external PFET between BAT and battery. Don't use BGATE to control that PFET. You will need another signal that to turn on and off that PFET. I am confused as to when you will be charging the battery in this config.
  • Ok, this makes sense. Thanks for the explanation.

    The battery is charged whenever an external power source is present, but for this to happen the host has to be powered up so that we can change the charge parameters (voltage, current, etc.) and regularly reset the I2C watchdog.
    The host is not always running. If the user turns the system off, the host is turned off completely by shutting down a downstream regulator. A "wake/power-on" button can turn the regulator back on, which powers the system (host processor) back up. We want the same behavior when an external power source is plugged in (for charging to start). So I need some kind of signal from the BQ24161 that I can use to "wake" the system.

    I think you gave me enough pointers to figure out a way that would work, but I just need to make sure that I have a reliable signal from the charger that I can use to power-up the host when an external power source is plugged in. Maybe BGATE is not the proper signal to use for this. How about DRV? This shouldn't be dependent on High-Z mode and is only on when an external power source is plugged in.

    On another note, I'm curious whether it would be better to keep the charger in High-Z mode (with _CD pulled up [host is off]) when the system is off or not? Would that "drain" the battery less over time compared to not being in High-Z mode?
  • DRV is good choice.

    HighZ mode causes the charger to consume less current but turns on the internal and external battery FETs so that SYS is powered from battery.