-
Notifications
You must be signed in to change notification settings - Fork 13.3k
I2C hang with very slow I2C slave (pic12f1840@500khz) #2162
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
Comments
any particular reason why your slave does not release SDA? |
I disconnect physically only sda from device but bus remain low(esp8266 take bus low), Ok the problem is quite complex (or simple now i found it). |
@igrr this has milestone 2.4.0. However, I don't fully understand the issue, let alone what needs to be fixed in Wire. |
If you need different clock stretch timings on devices is relevant! Ad is very simple to implement as i described. |
For reference (link) unless @enjoyneering you wish to make it with your changes ? |
CC @Tech-TX |
----------------------------- Remove above -----------------------------
Basic Infos
Hardware
Hardware: ESP-07
Core Version: 2.2.0
Description
On very slow device i2c hang SDA low and give strange results 01111001 instead 00111100 .
Settings in IDE
Module: Generic ESP8266 Module
Flash Size: 512K/64K
CPU Frequency: 80Mhz
Flash Mode: qio
Flash Frequency: 40Mhz?
Upload Using: SERIAL?
Reset Method: ck
Sketch
Wire.begin(12,13); //I2C pin
Wire.setClockStretchLimit(2000);
In my software(l is not important) :
Wire.beginTransmission(Addr);
Wire.write(0b00111100);
Serial.println("I2C write---"+String(l));
Serial.println(Wire.endTransmission(1));
Serial Output:
I2C write---4
3
Want to back this issue? Post a bounty on it! We accept bounties via Bountysource.
The text was updated successfully, but these errors were encountered: