had major trouble using ArduinoCore-samd/libraries/I2S with Arduino Zero
willmather opened this issue · 0 comments
I cannot dedicate time to following this up myself, since I found a working alternative in the Adafruit Zero I2S library, but I had major trouble with the I2S routines in this codebase. In short, I used a Arduino Zero with an Adafruit I2S MEMS Microphone Breakout (SPH0645LM4H) to record audio. Either using the single read or the buffered read eventually led to a lack of new data (only zeros returned). The time to when this happened seemed random (seconds to minutes, depending on the buffer size, sampling frequency, delays between sampling, etc.) I hit my head against the wall for about a day or two before moving on to the Adafruit Zero I2S library, which has been very reliable so far. I never found a working solution using the core library. I found others on various forums also complain about similar issues without resolution.
I write this note because I think the core library should work more robustly. I will likely not benefit directly from a solution submitted here, since I have moved on, and I will not share a working example (simple long baseline reading of data was enough to trigger the error). Best of luck to anyone having similar issues.