2025-09-16 12:19 PM
Hello, I have a circuit where a STUSB4500 USB-PD controller is connected with ESP32 via I2C.
The problem is that when a USB cable is connected and STUSB4500 powers up, the whole I2C bus clock slows down to 1 kHz which is too slow. After the ESP32 is reset, the device works correctly.
This slow-down also happens when the USB cable is disconnected.
The ESP32 is battery powered, so it is already running when USB is connected. The STUSB4500 is only powered from USB, so it is without power when the cable is connected.
The communication and PDO setting is working correctly (sparkfun library is used)
Do you know what could be causing this?
2025-10-16 7:56 AM
Dear Degesz,
When the STUSB4500 is not supplied, the I2C should not be used/shared. Indeed, the SCL and SDA are pulled down when none of VDD or VSYS is present. One solution could be to supply Vsys from your circuit, even when no USB cable is connected.
Note that as long as Vsys is present, dead battery mode is not supported (but I assume that when the battery is fully depleted, Vsys will also collapse).
Best regards,
Didier