-
Notifications
You must be signed in to change notification settings - Fork 7.5k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
I2C communication failures on ESP32-S3 (works on ESP32) (IDFGH-7138) #8741
Comments
Hi @CSHaze , Michael |
Hi @ginkgm, unfortunately I do not have access to a logic analyzer. The Htu21d board I am using has built in pull up resistors. I have also tried unsoldering them and using the esp32-s3 internal pull ups and neither seems to work on the esp32-s3. The weird thing is, everything works correctly on the old esp32 I have. I am trying to swap to the newer s3 board. I should be getting a bme280 board in the next couple days and I will test with that. Are there differences in the i2c config or calls between the esp32 and esp32-s3? I did not see any differences in the docs. |
It might not be the cause of the issue here, but could you try to zero-initialize the config structure (i2c_config_t) before filling it? |
We are also seeing some I2C issues on ESP32-S3, though it's in comparison with ESP32-S2. Specifically, LC709203, an I2C battery meter, does not work reliably. It can work longer at slow I2C bus speeds (tested at 10kHz) but eventually produces I2C protocol errors. Other devices such as MSA301 or BNO055 (which can do clock stretching) seen OK at normal speeds. We're still trying to characterize the problem. |
(EDITED several times after I got a better comparison trace) LC709203F comparison: maybe seeing a clock-stretching handling issue? The first four transactions work, then the sensor does a long clock stretch. The clock stretch works on the S2 (bottom trace), but not the S3 (top trace) Note that SDA goes high in the bad trace, which is odd. I tried setting a 0.1sec I2C timeout, did not seem to help. |
I cannot reproduce #8741 (comment) in Arduino on S3, using https://github.com/adafruit/Adafruit_LC709203F/tree/master/examples/LC709203F_demo and removing the delay in |
Hello, I have same issue with ESP32-S3 Arduino IDE, i2C plug to lcd screen. |
Hello, I just got a ESP32-S3HDevKitv1, and can't connect a I2C device to it. Can any one point me an example of how to configure the pins for I2C communication |
same for me with heltec wifi kit 32 V3, no platformio module found for i2c but in arduino it is working with V3 |
Hey how did you configure pin 15&16 as i2c pins in ESP32-S3-Wroom-1, or are they by default i2c pins. Please help!! |
Hi, on the heltec I used `i2c: sda: GPIO17 scan: false |
Hi riker65, could you please post a full code example for Heltec boards? I tried to establish I2C connections to a BME280 sensor on CubeCell HTTC AB-02 and an ESP32 LoRa board (both V3) but nothing works. I always get "no I2C device found" I tried the second I2C channel which should be SDA = pin9 and SCL = pin8. I also tried different I2C scanners and was wondering why they couldn't find the build in OLED display .. |
Hi see here, just my prototype to get it working hope this helps pasting it as code leads to strange formating here without code tags ---again: strange format. unfortunately have to redo it without the # inside `#https://forum.hassiohelp.eu/d/536-display-oled-su-esp32-con-esphome esphome: wifi: #Enable fallback hotspot (captive portal) in case wifi connection fails ota: #Example configuration entry #https://esphome.io/components/switch/gpio.html
i2c: sda: GPIO17 font:
time:
display:
#https://esphome.io/components/mqtt.html text_sensor:
|
@riker65 Not relevant here. ESPHome currently uses Arduino as core unless you explicitly define otherwise. Your question should be on their project instead. |
I simply want to comment that I have observed similar issues as well where certain i2c chips behave differently between Wroom-32 and Wroom-S2/S3 as well. Specifically VL6180X chips and i2c touch panel. It renders those devices completely unusable on newer ESP32 so I look forward to seeing what you find. |
Same probelm I2C Not working on YD-ESP32-S3-N16-R8 (DeveKit-c1 clone) |
Which version are you use @iyansrvc ? With same stuff? |
I have this exact board with the same problem, any help would be appreciated |
@Shravani-03 May I see your i2c related code and board? |
my board YD-ESP32-S3 (WROOM-1_N16R8) I2C not working.
Pada Sen, 13 Jan 2025, 11.21, Simon_Cao ***@***.***> menulis:
… Which version are you use @iyansrvc <https://github.com/iyansrvc> ? With
same stuff?
—
Reply to this email directly, view it on GitHub
<#8741 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/BE5GP7252JET2ENABENCW2T2KM5OBAVCNFSM5SX35SMKU5DIOJSWCZC7NNSXTN2JONZXKZKDN5WW2ZLOOQ5TENJYGYYTIOBTHA4A>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
Environment
Problem Description
I2C device communication that works on the standard ESP32 does not work on the ESP32-s3.
Expected Behavior
I would expect I2C functionality to work similarly on both devices.
Actual Behavior
I2C writes work correctly on the standard ESP32 but do not work on the ESP32-s3.
Steps to reproduce
Note: I have tried other libraries, communication calls, and configurations (pullups, clk freq, gpio, etc) through IC2, all of which are unable to write to the device. I figured this was the simplest example.
Code to reproduce this issue
The text was updated successfully, but these errors were encountered: