-
-
Notifications
You must be signed in to change notification settings - Fork 78
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
ESP32 I2C response data limitation #756
Comments
I think the issue is to do with interrupts. |
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. |
This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions. |
@hbraasch this should be fixed now. Please retest and provide feedback. |
Details about Problem
nanoFramework area: (C# code )
Target: ESP2
Description
When an ESP32 communicates with a I2C slave device, it appears to fail if the slave needs to provide a large number of return values, or if the the response duration from the slave exceeds an unnecessary short time.
If the slave return the data really fast (minimum delay inbetween transfers), the ESP starts failing at byte 32, which being the value 32... feels a bit suspect. Could be a hardcoded limit?
Detailed repro steps so we can see the same problem
I2cMasterTesterEsp32.zip
I2cSlaveArduino.zip
Other suggested things
I think it could be a timing ussue on the ESP side.
Please have a look at this piece of code for a possible problem. It appears the timeout is hard-coded at 1s (1000 ms), but it times out earlier (I think)...
Expected behaviour
The I2C should be able to handle an unlimited amount of return data.
Sample Project
Attached as a link
Screenshot
Showing below it fails at 32 bytes
The text was updated successfully, but these errors were encountered: