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.