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.

BQ25120A: Charging issues when associated with BQ51003

Part Number: BQ25120A
Other Parts Discussed in Thread: BQ51003, BQ25120

Hello TI team,

We are facing quite strange issue with our new design based on BQ51003 wireless Qi receiver and BQ25120A charger.

Here is the schematic:

3527.BQ51003+BQ25120A schematics.pdf

Please note that the secondary coil "COIL1" Ls=47µF. As we don't have the LRC meter for L's measurement, I based my design on 30% increase so around 60µH.
Please also note that Cs (C13 + C17 + C21) has been modified to 41.7nF and Cd (C19 + C20) to 550pF based on Ls and L's, which are not shown on the schematics.
As read on an E2E post about the BQ51003, I also changed Ccomm1 and Ccomm2 to 10nF, which may not be necessary? (https://e2e.ti.com/support/power_management/battery_management/f/179/p/648409/2406394?tisearch=e2e-sitesearch&keymatch=bq51003%2010nf#2406394)

After our IC boot, BQ25120A registers are set as follows (from 00h to 0Bh):
00 00 00 9d ba 78 aa 00 68 12 80 c2

When putting our wireless transmitter over to the Rx coil, we do have 5V on the BQ51003 output and BQ25120A input, however the charge current measured is around 4mA and BQ25120A registers show the following values:
00 00 00 14 0a 78 aa 00 68 02 00 42
We checked that the I2C master did not modify these values, as you can also see on the following saleae capture (change happens between the two frames at ~1.8s and 5s in the recording).
So it seems that the BQ25120A changes its registers by itself to non-default values.
This happens no matter how many times we cycle the wireless power transmission.

issue_bq_reg_2s_5s.zip

However, when we reset the BQ25120A using a long press (10s) on the push button on MR while maintaining the wireless Tx over the Rx coil (with ~4mA charge current), the charge current switched to 110mA and the registers are as follows:

00 00 00 9c ba 78 aa 00 68 12 00 c2
This also happens no matter how many times we cycle the wireless power transmission. Once the battery is removed then plugged back in, we have the same behaviour as stated before (4mA charge current and registers mysteriously changed)

Here are some scope captures showing the following signals:
1-Yellow : BQ25120A PMID
2-Green : BQ25120A SYS
4-Purple : battery current measured with a current probe

Standard discharge, no charger attached:

~4mA charge (3.86mA + 198uA = 4.058mA):

110mA charge after reset while charger is attached:

As there is no interaction between BQ51003 and BQ25120A except the 5V respectively output and input voltage, I guess the issue is BQ25120A related.

Thanks,

Damien

  • Hi, the BQ51003 output voltage is stable when you found thebq25120A changes its registers by itself to non-default values? Did you observe some ripple or noise on the bq25120 input voltage?
  • Hi Robin,

    Sorry for the late reply, I've been abroad for a few weeks.

    Here are some screenshots of BQ51003 output (== BQ25120A input):

    When charging there is a ~120mVpp noise as shown in the last AC measurement, otherwise it looks fine.

    Thanks,

    Damien

  • Damien,

    I have looked at your schematic. it looks okay to me. 

    There is no inherent mechanism to change the register to non-default values. the device has OTP and the OTP is burnt with settings at the factory to the values you see on the datasheet. 

    Can you check the MCU to see if there is any overwrite due to other devices present on the bus? Any spurious code?

    The ripple is measured on the VOUT correct? it is just the communication pulses back to the transmitter. 

    regards,

    gautham

  • Hi Gautham,

    Thanks for looking into this.
    The ripple is measured on net "WL_RX_5V_OUT" which is both BQ51003 VOUT and BQ25120A VIN.

    My software colleague is out of the office this week, I'll keep you posted when he gets back. I'm thinking testing with an empty code for the MCU except for the BQ25120A registers init.

    Thanks,
    Damien
  • Damien,

    Let us know. This is a good test. 

    thanks,

    gautham

  • Hi Gautham,

    We did some further testing:

    First, the issue remains even when the BQ25120A input is separated from the BQ51003 output and powered through a 5V lab supply, so it seems the issue isn't related to the BQ51003 after all.

    Second, we tried with the following software configuration:

    • The MCU bootloader sets the BQ25120A 0x04h to FE (to be able to unlock the battery PCM with higher current if blocked)
    • The MCU firmware does nothing except the BQ25120A register init to the following values, and reading the same registers every 3 seconds:
      00,00,00,9d,ba,78,aa,00,68,12,78,c2
      This should give us a 110mA charge current

    To make sure no unwanted writing happened, we also added a flag feature on a GPIO everytime the I2C_write function is called, and the only time the flag was set was on the MCU boot with the registers init.

    Here is our test step by step:


    - Step 1: battery is attached to BAT input

    • Registers dump after init: 00,00,00,9d,ba,78,aa,00,68,12,78,c2
    • Not in high-Z mode
    • 0x00h shows SYS_EN_STAT at 0, which implies that SW output is disabled, however the MCU is powered and running, and 0x06h is set to AA (SW enabled and SYS to 1V8)...

    - Step 2: 5V is applied on VIN

    • Registers dump: 00,00,00,14,0a,78,aa,00,68,02,78,42 (no writing from MCU happened)
    • 10mA measured charge current (note that 0x03h register changed from 9D to 14, giving 10mA charge current setting)
    • Pre/term current changed from 20mA to 3mA (0x04h from BA to 0A)
    • Ilim set from disabled to enabled at 100mA (0x09h from 12 to 02)
    • VINDPM set from disabled to enabled at 400mV (0x0Bh from C2 to 42), however 0x00h VINDPM_STAT shows 0
    • Charge is on going at 10mA but 0x00h register shows STAT = 00 (ready state)
    • Same issue with SYS_EN_STAT showing SW disabled when it's obviously ON
    • Not in high-Z mode

    - Step 3: MR reset is applied while VIN is kept at 5V

    • Registers dump: 00,00,00,9d,ba,78,aa,00,68,12,78,c2
    • Back to our default settings after init
    • Same issue with SYS_EN_STAT showing SW disabled when it's obviously ON
    • Not in high-Z mode

    - Step 4: VIN is switched OFF then ON again

    • Registers dump: 00,00,00,9c,ba,78,aa,00,68,12,78,c2
    • Same issue with SYS_EN_STAT showing SW disabled when it's obviously ON
    • Charge current measured at 110mA (coherent with the registers settings)
    • High-Z mode
    • The correct 110mA charge current setting remains when we cycle the VIN power supply, and resets to 10mA only if we cycle BAT by removing the battery


    Remarks:

    • If VIN is not kept on while doing step 3, we go back to step 2 status
    • We tested this on several boards and got the same behaviour every time
    • When doing the exact same test with the same setup (BQ25120A input isolated), same bootloader and firmware on an old board (previous revision, same BQ25120A and MCU implementation), the 0x00h register shows 03 on boot, which is what we expect instead of 00, charge current is at 110mA right away and there is no unwanted register modification

    Do you see any reason for this to happen?

    Thanks,

    Damien

  • Damien,

    I am reviewing this currently.

    Regards,
    gautham
  • Damien,

    0x00 – 00- Issue- Bit B0- SYS shouldn’t be disabled for any reason unless turned OFF at register 0x06. Check VSYS voltage on power up.

    Is there any way you can search for the BQ25120A I2C address on the entire MCU firmware to make sure any unintentional write is happening. (I know I am asking this again but this is purely out of what I have seen in the past  )

    Also how many boards exhibit this problem? What are the schematic changes around BQ25120A that were done?

    If you swap a BQ25120 on to the new board does this problem go away? Depending on your reply, we can start a quality request.

    Regards,
    Gautham Ramachandran
    Battery Charger Applications
  • Gautham,

    I tried replacing the BQ25120A with a brand new BQ25120 that I had on hand (no rev A but it should not matter for this issue). I still have the same problem so it does not seem to come from the component itself. However I cannot find any difference in the electrical design.

    I removed the schmitt buffer on the RESET pin so that the MCU would no be reset anymore when MR is pressed, the current never goes back to 110mA after steps 3 and 4. So I guess it's a configuration related issue, but still, registers seem to be set correctly at start-up and again, same firmware on an previous board version does not have the issue...

    I'll keep looking into it and let you know if I can find anything worth mentioning.

    Regards,
    Damien
  • Damien,

    How many boards showed this issue? let me know if you have any findings.

    regards,
    Gautham
  • Gautham,

    5 boards with the issue out of 5 board tested so far.
    Will let you know for sure. In the meantime, any idea you have to help finding the root cause, I'd be happy to hear

    Thanks,
    Damien