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.

BQ25895: Not Charging After Thermal Protection Event (NTC)

Part Number: BQ25895

We have been using BQ25895 and has been performing well.

We just noticed an issue where BQ25895 does not charge after a certain event. The issue is further explained below as steps.

Note: Tried to simulate this behaviour by heating the NTC manually 

1. Charger is Connected, then BQ25895 Starts Charging, SYS works perfectly fine.

2. BQ25895 Finds NTC Fault -> Charging LED Blinks.

3. When Charger is Removed, SYS turns off. This implies that SYS is not powered by BAT anymore.

4. Connecting charger again will only turn on SYS. BQ25895 doesn't continue charging even when NTC reached room temperature. Removing the charger turns off SYS.

The only way to get past this is to replug the battery, which fixes the issue. This is not possible in any application due to inconvenience. We tried to reset the registers to default by utilising the reset register/bit. That didn't help either. Is there any specific register to restart charging when charger is plugged back in? (assuming BQ25895 turned off BAT Path & NTC temperature reached normal)

Did notice that, this behaviour only happens once in a while. When trying to recreate the same issue (heating NTC), it did require a few attempts. 

  • Hi Abish, 

    Thank you for reaching out via E2E. I have a few additional questions based on your initial description. 

    1)Can you provide a register log for BQ25895 for the case 4. where charger connected again and only SYS turns on?

    2)When charger input is removed do you utilize the device in Boost mode? 

    3)If I had to guess somehow Q4 BATFET is getting turned off. Can you check if BATFET_DIS  (bit 5 in REG09) is being set to 1?

    Best Regards,

    Garrett 

  • 1) I'll do a register dump after recreating the issue.

    2) Boost Mode is not used at all.

    3) Checked the BATFET Register -> It was 0, which means that BATFET was enabled.

    Important Note:

    While the input supply was connected, I tried to disable BATFET (Initially Register was 0, Made it 1), and then enabled BATFET after 1000ms (bit 5 of REG09 register). This actually fixed the issue, when I removed the charger, the BAT powered the SYS. Does this behavior give you any idea what the issue is?

    QON Button doesn't work once the issue occurs. If the issue is solved by re-plugging the battery, QON works (BATFET reset possible).

  • Attaching the register values after recreating the issue by heating the NTC. Logs captured after connecting input supply (Powered SYS from Input Supply).

    [REG0]: 0x7F
    [REG1]: 0x5
    [REG2]: 0x3D
    [REG3]: 0x3A
    [REG4]: 0x20
    [REG5]: 0x13
    [REG6]: 0x5E
    [REG7]: 0x9D
    [REG8]: 0x3
    [REG9]: 0x44
    [REGA]: 0x93
    [REGB]: 0x66
    [REGC]: 0x0
    [REGD]: 0x36
    [REGE]: 0x54
    [REGF]: 0x0
    [REG10]: 0x4A
    [REG11]: 0xC0
    [REG12]: 0x0
    [REG13]: 0x8

    Attaching the register values after re-plugging Battery (Fixes the issue).

    [REG0]: 0x48
    [REG1]: 0x5
    [REG2]: 0x3D
    [REG3]: 0x3A
    [REG4]: 0x20
    [REG5]: 0x13
    [REG6]: 0x5E
    [REG7]: 0x9D
    [REG8]: 0x3
    [REG9]: 0x44
    [REGA]: 0x93
    [REGB]: 0xE2
    [REGC]: 0x80
    [REGD]: 0x13
    [REGE]: 0x0
    [REGF]: 0x0
    [REG10]: 0x0
    [REG11]: 0x0
    [REG12]: 0x0
    [REG13]: 0x8

    Attaching the register values after connecting input supply (Done after replugging the battery -> So ideal case).

    [REG0]: 0x7F
    [REG1]: 0x5
    [REG2]: 0x3D
    [REG3]: 0x3A
    [REG4]: 0x20
    [REG5]: 0x13
    [REG6]: 0x5E
    [REG7]: 0x9D
    [REG8]: 0x3
    [REG9]: 0x44
    [REGA]: 0x93
    [REGB]: 0x66
    [REGC]: 0x0
    [REGD]: 0x36
    [REGE]: 0x5A
    [REGF]: 0x5D
    [REG10]: 0x4A
    [REG11]: 0xD9
    [REG12]: 0x51
    [REG13]: 0x48

  • Hi Abish, 

    Thank you for your reply and helping to answer my various questions. 

    Considering that you are not using boost mode feature can you please check if you can recreate the issue with boost mode disabled (set REG03 bit 5 = 0)? To ensure this bit remains set to 0b please disable boost mode and also disable the watchdog timer (REG07 [5:4] = 00) before input supply is removed from BQ25895. 

    On BQ25895 boost mode is enabled by default and your provided register log shows it is enabled. BATFET will be turned off, resulting in lose of SYS power, when in NTC fault scenario and trying to enable boost mode. 

    Best Regards,

    Garrett

  • Thank you for your reply.

    I do disable OTG mode and watchdog timer on every boot, though this register dump was done just before that procedure, after recreating the issue.

    I did the first register dump after I replugged the input power supply (After recreating the issue). BQ25895 already disabled BATFET before this boot since SYS was turned off.

    Our main controller (On SYS) goes to sleep when the user prefers to. The issue occurs when our controller goes to deep sleep after heating the NTC. I do disable watchdog & OTG mode before going to sleep.

    I'll anyway do a register dump just before main controller sleeps with Input Source Connected, which may indicate any issue related to register settings.

  • Hey Garret,

    Important Note: Issue only happens in two scenario,

    1. NTC is heated. When Input Source is Removed After Sleep (3rd Register Dump). -> SYS Turns OFF

    2. if Main Controller is already sleeping, and the NTC is heated, then the input source is plugged and unplugged. -> SYS Turns OFF

    If Main Controller is turned on without removing input source, then BATFET is not disabled internally -> didn't experience any issue.

    Check the following Register Dumps.

    1. Registers Modified during Runtime without Input Source

    [REG0]: 0x7F
    [REG1]: 0xC5
    [REG2]: 0x7D
    [REG3]: 0x14
    [REG4]: 0x40
    [REG5]: 0x31
    [REG6]: 0x5E
    [REG7]: 0x8D
    [REG8]: 0x2B
    [REG9]: 0x4C
    [REGA]: 0x93
    [REGB]: 0x2
    [REGC]: 0x0
    [REGD]: 0x13
    [REGE]: 0x47
    [REGF]: 0x46
    [REG10]: 0x4B
    [REG11]: 0x0
    [REG12]: 0x0
    [REG13]: 0x3F
    [REG14]: 0x39

    2. Registers Modified during Runtime with Input Source (12V)

    [REG0]: 0x75
    [REG1]: 0xC5
    [REG2]: 0x7D
    [REG3]: 0x14
    [REG4]: 0x40
    [REG5]: 0x31
    [REG6]: 0x5E
    [REG7]: 0x8D
    [REG8]: 0x2B
    [REG9]: 0x4C
    [REGA]: 0x93
    [REGB]: 0x76
    [REGC]: 0x0
    [REGD]: 0x36
    [REGE]: 0x4F
    [REGF]: 0x52
    [REG10]: 0x4A
    [REG11]: 0xDA
    [REG12]: 0x51
    [REG13]: 0x75
    [REG14]: 0x79

    3. Registers Just Before Controller Sleeps (Recreated the issue by heating NTC and then removing the input supply).
    - When input supply was removed, BQ25895 just turned off SYS. VSYS now shows 0.455V (Measured using Multimeter).
    - Watchdog Timer & Boost/OTG Mode is OFF

    [REG0]: 0x75
    [REG1]: 0xC5
    [REG2]: 0x3D
    [REG3]: 0x14
    [REG4]: 0x40
    [REG5]: 0x31
    [REG6]: 0x5E
    [REG7]: 0x8D
    [REG8]: 0x2B
    [REG9]: 0x4C
    [REGA]: 0x93
    [REGB]: 0x66
    [REGC]: 0x2
    [REGD]: 0x36
    [REGE]: 0x49
    [REGF]: 0x4C
    [REG10]: 0xE
    [REG11]: 0xDE
    [REG12]: 0x0
    [REG13]: 0x35
    [REG14]: 0x79

    4. Registers After Connecting Input Supply and Registers modified by the host controller after configuring BQ25895. The first registers dump clearly shows that the BQ25895 reset its own registers. Changing it during runtime doesn't help either.
    (When Input supply is removed, the device just turns off indicating that BATFET is internally off)

    [REG0]: 0x7F
    [REG1]: 0x5
    [REG2]: 0x3D
    [REG3]: 0x3A
    [REG4]: 0x20
    [REG5]: 0x13
    [REG6]: 0x5E
    [REG7]: 0x9D
    [REG8]: 0x3
    [REG9]: 0x44
    [REGA]: 0x93
    [REGB]: 0x66
    [REGC]: 0x80
    [REGD]: 0x36
    [REGE]: 0x49
    [REGF]: 0x4C
    [REG10]: 0xE
    [REG11]: 0xC0
    [REG12]: 0x0
    [REG13]: 0x8
    [REG14]: 0x39

    [REG0]: 0x75
    [REG1]: 0xC5
    [REG2]: 0x7D
    [REG3]: 0x14
    [REG4]: 0x40
    [REG5]: 0x31
    [REG6]: 0x5E
    [REG7]: 0x8D
    [REG8]: 0x2B
    [REG9]: 0x4C
    [REGA]: 0x93
    [REGB]: 0x66
    [REGC]: 0x0
    [REGD]: 0x36
    [REGE]: 0x49
    [REGF]: 0x4C
    [REG10]: 0x49
    [REG11]: 0xDE
    [REG12]: 0x0
    [REG13]: 0xF
    [REG14]: 0x39

  • Hi Abish,

    Thank you for the clarification on your register settings. Please see my comments below. 

    The first registers dump clearly shows that the BQ25895 reset its own registers.

    I have verified that it is not expected for BQ25895 registers to reset due to BATFET turn off for NTC fault condition. It seems there may be more occurring than just BATFET disconnecting battery from SYS. 

    1. NTC is heated. When Input Source is Removed After Sleep (3rd Register Dump). -> SYS Turns OFF

    I have been unable to replicate SYS turn off behavior for this scenario. I have the BQ25895 configured according to the 3rd register dump, TS pin biased to TS_HOT status and then repeatedly try removing input source. With said register configuration I can never see SYS turn off. 

    Given the differences in behavior observed can you help to provide a waveform showing VBUS, VSYS, and VBAT? If possible it would also be helpful to know the system current draw. 

    Additionally, can you please help to give more detail on the controller sleep state? Are any additional register modifications made before entering sleep? Have you checked if any BQ25895 pins connected to controller change logic level with controller in sleep state. 

    Best Regards,

    Garrett 

  • Thank you for your reply. 

    1. I'll record the waveform at VBUS, VSYS & VBAT.

    2. Peak current of 7.4W (2A) and IDLE current around 3.7W (1A) through SYS. During sleep, consumption will be in the few hundred uA Range.

    3. We don't modify any registers during sleep since charging should work irrespective of controller state. One of the register dump provided is before controller sleep. Only ADC measurement is stopped (REG02), that can be seen on the previously shared register dump.

    4. We connected the I2C (SDA, SCL) & Interrupt (INT) Pins to the microcontroller. I haven't though about such a scenario. Does the microcontroller pin state matter for BQ25895?

  • Hey Garret,

    I think I have managed to track down the issue.

    Since you couldn't replicate the issue with the provided register set, I evaluated our schematic and saw that the OTG pin wasn't grounded. I initially thought that the register will be given higher priority, so I did forget about the physical pin itself. Attaching the OTG part of the schematic below.

    After soldering the SB7 jumper, I wasn't able to replicate the issue anymore. The charger works as expected.

    1. Does the OTG pin given priority over the modified registered values?

    2. Is this the expected behavior if OTG pin is not grounded (With the register values previously shared)?

    3. When the input supply is removed, does BQ25895 check the OTG Pin before OTG/Boost Enable Register?

  • Hi Abish, 

    1. Does the OTG pin given priority over the modified registered values?

    OTG pin and OTG_CONFIG register have equal priority. You can think of it as a logical AND. Boost mode is only activated when OTG pin is high and OTG_CONFIG = 1. This is stated in the pin functions table on page 4 of the datasheet. 

    Since you do not use boost mode grounding OTG pin appears to be a good solution to ensure boost mode cannot be enabled. 

    3. When the input supply is removed, does BQ25895 check the OTG Pin before OTG/Boost Enable Register?

    The device checks both OTG pin and OTG enable register. If either is in the disabled state boost mode operation will not begin.

    2. Is this the expected behavior if OTG pin is not grounded (With the register values previously shared)?

    Based on all information provided up to this point my best theory is somehow BQ25895 registers are getting reset to default at some point during operation. OTG_CONFIG bit is default = 1 and therefore when input supply is removed with NTC fault Q4 BATFET turns off due to attempting to start boost mode.

    Connecting OTG to GND should work to prevent the issue you are observing.

    Best Regards,

    Garrett