Page 1 of 1

Issue reading I²C sensor data with ESP32-S3

Posted: Thu Sep 04, 2025 8:06 am
by Ethon Vale
Hello everyone,

I’m working on a project using the ESP32-S3 (QFN-56 package) and I’m running into an issue when trying to read sensor data over I²C.

Chip: ESP32-S3

Toolchain: ESP-IDF v5.1

Peripherals: I²C connected sensor (address is detected correctly with i2cdetect)

Problem: My code compiles and runs, but the data I get from the sensor is unstable and sometimes shows random jumps.

I’ve already tried adjusting pull-up resistors and different clock speeds (100kHz vs 400kHz), but the issue still persists.

Has anyone experienced similar behavior on the ESP32-S3? Is there a recommended configuration or workaround for stable I²C reads?

For reference, here’s the ESP32-S3 chip I’m using: ESP32-S3 details
Thanks in advance!

Re: Issue reading I²C sensor data with ESP32-S3

Posted: Thu Sep 04, 2025 5:44 pm
by ahsrabrifat
ESP32-S3 internal pull-ups are weak (≈45 kΩ), so you must use external pull-ups. For 3.3 V and short bus length: 2.2k–4.7kΩ is usually best. If the bus is long or noisy, lean towards 2.2kΩ.

Re: Issue reading I²C sensor data with ESP32-S3

Posted: Fri Sep 05, 2025 10:58 am
by MicroController
The problem most likely isn't with the S3 but with the way your code is interacting with the sensor.