Closed ameerhazo closed 3 years ago
[STALE_SET] This issue has been automatically marked as stale because it has not had recent activity. It will be closed in 14 days if no further activity occurs. Thank you for your contributions.
I'm seeing similar problems, using I2S audio output with a MAX98357A along with a pair of PCF8574 IO expanders (one driving a 16x2 LCD, the other a series of LED and relay). I2C on its own works fine, as does the I2S audio, so it doesn't appear to be a hardware problem.
When I attempt to use both I get choppy audio, and there is a torrent of Bus Busy errors and the IO expander output ports start flicking on and off at random. It also seems to break OTA updates (they proceed slowly then time out), I suspect due to some timing issue, but haven't investigated.
It doesn't seem to make a difference whether I set up the I2C or I2S first: Whichever is set up first works fine, until the other is started.
@ameerhazo did you resolve the issue?
Hi @me-no-dev, I've since transitioned to fully using my own implementation of the IDF I2C API instead of the Wire library and havent had any problems after that.
@ameerhazo we are going to move Arduino's Wire to use IDF APIs soon as well. Currently it's missing write without STOP and once that is implemented, all chips will use the same IDF API underneath
Environment
Problem Description
Using I2S together with I2C (Wire library) is causing bus busy errors and I2C sensor measurements to not make sense.
Expected Behavior
I2S and I2C working together in parallel in different cores (tested in pure IDF project and everything works as it should be).
Actual Behavior
see problem description.
Steps to reproduce
Code to reproduce this issue
Any help would be greatly appreciated. Thank you.