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.

BQ25620: Slow charging at approx 80mA.

Part Number: BQ25620

Tool/software:

Hello,

I'm having difficulty getting the BQ25620 to charge correctly. Starting with default settings I only see a charge rate of approximately 80mA. REG0x1E_Charger_Status_1 indicates that it is charging (01b in 4:3), and I don't see any faults in REG0x1F_FAULT_Status_0. We have a good confirmed USB charger (tried several actually), and the D+D- detection always comes back with 100b on VBUS_STAT (unknown adapter), but this should still allow up to 500mA.

I've tried disabling TS, no change. I've tried disabling AUTO_INDET and see that IINDPM remains at POR of 3200mA (rather than the 500mA), but still the same behaviour.

I have tried with several different batteries, but still the same result. Very occasionally I saw the charge current start at the correct level, but always defaults back to 80mA. 

The Watchdog is still enabled, but is fed regularly. I can also verify through REG0x1D_Charger_Status_0 that it is not expiring.

Not sure what else I can change to check. I don't see anything that might result in this behaviour. Any recommendations on things I could try?

Thanks,
Ryan


 

  • Upon further inspection, I see that REG0x02_Charge_Current_Limit was set to 1, indicating a maximum charge current of 80mA, despite never changing this register from its default value of 0x0D (1040mA).

    Is there anything that would cause the automatic update of this value? I've updated the code to perform a REG_RST on every boot and I'll continue to monitor whether or not this register continues to change its value or if it was just a fluke that it was inadvertently set during development.

  • Hi Ryan,

    Thank you for reaching out via E2E. Please see my comments below. 

    Is there anything that would cause the automatic update of this value?

    The only cause of automatic update of REG0x02 is watchdog expiration. If watchdog timer expires the device automatically sets ICHG to half of its previously set value. Beyond this there are not any other events which would cause ICHG to automatically update. 

    If REG0x02 was initially set to 1040mA default then watchdog expiration would not result in register being changed to 80mA minimum setting.

    I recommend taking a closer look at your code for register configuration of the BQ25620. Also as a sanity check you can also try starting charge without performing any I2C communication to the BQ25620 IC. With default configuration I would expect you to observe 1040mA charge current in fast charge phase of charge cycle. 

    Best Regards,

    Garrett