2025-12-30 12:45 AM
We are using STM32U5G9's I2C with a diff-I2C to single ended I2C converter IC PCA9616. PCA9616 is used to program the STM32 MCU over I2C1 by converting diff-I2C to single ended I2C.
However, while probing the I2C1 of the STM32U5G9, we are seeing negative overshoot and level shifting on it. It seems like MCU is taking control of the I2C while in the slave mode. See I2C_SCL_waveform1.png
Also, we have tried disabling I2C1 of the MCU (by configuring it as a GPIO input only), by doing this we are able to mitigate the negative overshoot problem. I think the problem is with MCU, looks like it is taking control even if it is a SLAVE. See I2C_SCL_waveform2.jpg
Kindly let us know the exact reason and how to mitigate this issue.