Trouble with INMP441 microphone with SAI configuration

I’d love to know if you ever get this working! I’m having the exact same issues using the Adafruit ICS43434 I2S Module. I’m using the same pinout as you described above, and my baseline project code is from THIS discussion regarding I2S MEMS example code.

Here’s a basic rundown of things I’ve tried to troubleshoot as much as I can remember (including your bit rate mentions above):

  • Tested both Block A and Block B for Receive/Transmit
  • Verified Callbacks and Clock Signals toggling in the Serial Monitor
  • Measured Voltages on BCLK and LRCL (not stuck high or low)
  • Verified grounding SEL actually puts audio on the Left slot
  • Completely muted Right side (in[3]) in case of any “open” mic or interference there
  • Implemented full scale mic conditioning like EQ, Compression, Limiting etc.
  • Ran a simple tone generator through the same SAI config with no distortion/hiss/digital noise
  • Tested multiple output sources to eliminate acoustic feedback
  • Ran direct through straight to monitor, and even tried recording into the buffer first hoping that stored playback was clean - unfortunately it had the same result.

I’ve tried everything I can think of, but can’t get this Mic to play nicely. I might have to move on to an Electric Mic for now, but hoping someone has a solution since the I2S is pretty great for the straightforward set up. Using the Analog Electret will require a bit more circuitry for the preamp etc.

Good Luck! Be in touch if you get anywhere on this.

1 Like