Esp32S3 : Is it possible to pilot the SDA pin of an I2C link manually ?

ThomasESP32
Posts: 229
Joined: Thu Jul 14, 2022 5:15 am

Esp32S3 : Is it possible to pilot the SDA pin of an I2C link manually ?

Postby ThomasESP32 » Thu Mar 07, 2024 3:48 pm

Good afternoon,

I am using an Esp32S3 and I am wondering if it is possible to pilot the SDA pin of the chip
when it is configured as an I2C link ?

In order to configure the I2C link, I am using the standard I2C driver but I have an external chip that must
be woken up periodically by pulling the SDA line low during 60us.
At the moment, in order to do that, I have configured the I2C with a frequency 100Khz and I am sending
a 0x00 byte.

However, I would like to keep the I2C frequency to 400Khz.
Do you have any idea please ?

Best regards,

liaifat85
Posts: 200
Joined: Wed Dec 06, 2023 2:46 pm

Re: Esp32S3 : Is it possible to pilot the SDA pin of an I2C link manually ?

Postby liaifat85 » Thu Mar 07, 2024 4:24 pm

If possible, you can use a separate GPIO pin to control the external chip's wake-up signal. This would allow you to keep the I2C frequency at 400kHz without interfering with the I2C communication.

MicroController
Posts: 1707
Joined: Mon Oct 17, 2022 7:38 pm
Location: Europe, Germany

Re: Esp32S3 : Is it possible to pilot the SDA pin of an I2C link manually ?

Postby MicroController » Thu Mar 07, 2024 5:19 pm

You can disconnect/reconnect a peripheral from/to a pin at any time e.g. via the esp_rom_gpio_connect_out_signal() function.

Who is online

Users browsing this forum: Baidu [Spider], Bing [Bot] and 114 guests