Other Parts Discussed in Thread: BQ28Z610, BQSTUDIO, EV2400
Tool/software:
Hi:)
-
I’ve encountered an issue with the BQ28Z610-R1 and its I2C communication behavior;
Specifically, it introduces a delay before latching the acknowledge (ACK) bit low, which causes problems when using an I2C level-shifter like the FXMA2102 on the same bus.
-
As shown in the image below, the BQ28Z610-R1 introduces a very small delay (~2us) on the ACK bit:
(normal operation, EV2400 + bqStudio)
-
This small delay results in a pulse/spike on the I2C line which is too fast for a I2C level-shifter like the FXMA2102 to settle properly, causing it to fail:
-
Current Setup:
- I2C Bus Speed: 100 kHz
- Pull-up Resistors: 1.5K to 3.3 V
- BQ28Z610 'I2C Configuration' Register: 0x08 (only 'XL' enabled for 400KHz bus-speed)
I’ve already tried enabling/disabling the 'TO_STRETCH_EN', 'FLASH_BUSY_WAIT' and 'XL' bits in the 'I2C Configuration' register which when all enabled decrease the delay somewhat, but still not enough (even at 400KHz bus-speed).
I've also tried adding a series resistor+capacitor on the SCL and SDA line (100ohm + 200pF), but unfortunately this did also not solve the issue.
-
Are there any additional settings or techniques for the BQ28Z610-R1 either extend or remove the delay on the ACK bit?
Any insights or suggestions are greatly appreciated!
-
Thanks!