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.

BQ28Z620: IN_SYSTEM_SLEEP corrupts i2c bus communication

Part Number: BQ28Z620

Tool/software:

Hi.

We observe strange behavior with an IN_SYSTEM_SLEEP=1.

The i2c tree of the device:

Our expected result is that with a disabled broadcast, the gauge acts as an honest I2C-driven device and doesn't affect the communication with other devices on this bus. But the actual result is heavily affected by the IN_SYSTEM_SLEEP bit.

With IN_SYSTEM_SLEEP=1 and the gauge in sleep mode, we observe incorrect communication between the host and other devices. The diagram of I2C signals shows that, for a short time, the fuel gauge holds SCL low while the host communicates with other devices:

After a short period, communication renews, and then it stops in the same manner after some time.

Removing the gauge from the system restores communication, no repro.

Allowing the gauge to exit sleep mode (either charging or discharging the battery) seems to restore communication, but we should double-check this case.

Setting IN_SYSTEM_SLEEP=0 restores the communication, no repro.

FLASH_BUSY_WAIT and TO_STRETCH_EN bits don't affect the reproduction.

I would appreciate your comment on this behavior.

Best regards, Vasyl.

  • Hi,

    Does this happen on multiple devices? Can you reproduce this on other devices?

    Regards,

    Diego

  • Hi Diego.

    Our software engineer says that reproduce is stable across several logic boards + several fuel gauge boards in different combinations.

    Also, regarding sleep exit - we confirm the previous observation, the issue disappears if the battery exits sleep mode.

    Also, available fuel gauge boards involve both firmware versions (1.0.0 and 1.0.1).

  • Hi,

    https://e2e.ti.com/cfs-file/__key/communityserver-discussions-components-files/196/bq28z620R1_5F00_v1_5F00_01_5F00_build_5F00_3.srec

    Please let me know if you can reproduce the issue with this FW. This maybe the same 1.0.1  FW that you mentioned.

    Can you extract your configuration that you have this issue on? Can you share it?

    I will try and recreate this on my end.

    Regards,

    Diego

  • Hi Diego.

    Your image has IN_SYSTEM_SLEEP = 0, and if used as is, no repro (just like our image with IN_SYSTEM_SLEEP = 0).

    If we set IN_SYSTEM_SLEEP = 1 in your image, the repro occurs.

    Regarding our image - I'll share it with you via our FAE.

    Regards, Vasyl.

  • Hi,

    Understood, I have received the email from Aida, please allow me sometime to try and recreate this issue.

    Regards,

    Diego