I have a MEMS Digital Microphone with PDM output. I am planning to use this:


Based on my research, PDM output signals have high-frequency ranges; usually in MHz. To be further processed, it must be filtered/decimated with the use of CODEC. I am planning to use the WM8731:


Based on the datasheet of the digital microphone, typical connection is as follows:

enter image description here

However, I do not exactly know as to what exact pins on the WM8731 CODEC do the Digital output of the mic to be connected, and also the clock signal. Can anyone help me out with this?

Also, I understand that the Raspberry Pi Zero W can communicate with the CODEC via I2S. And to do so, I must utilize the SPI pins of the Rpi. However, still same questions arise as to what exact pins on the WM8731 CODEC should I connect the SPI signals to.


  • \$\begingroup\$ What is your basis for thinking that the WM8731 supports a PDM microphone? The SPI/I2C interface is for control, this is distinct from the I2S audio interface. Likely you'd be best off using existing modules and an I2S rather than PDM mic for your first attempts, these parts (especially the microphones) are fairly tricky to solder. \$\endgroup\$ – Chris Stratton Sep 26 '17 at 1:10
  • \$\begingroup\$ Are not all CODECS capable of accepting PDM data output from MEMS digital microphones? AFAIK, they have internal digital filters that decimate high frequency PDM signals. \$\endgroup\$ – J. A. De la Peña Sep 26 '17 at 2:40
  • \$\begingroup\$ No, most of them don't accept PDM signals. \$\endgroup\$ – Chris Stratton Sep 26 '17 at 5:19
  • \$\begingroup\$ It seems the CODEC I have chosen does not support PDM input. Do you happen to know a good one? Can you please suggest? \$\endgroup\$ – J. A. De la Peña Sep 29 '17 at 3:24

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.