Home Microphone Array PCB
Post
Cancel

Microphone Array PCB

Project idea

Microphone array that allows for beamforming.

Requirements

  • 4-6 microphones
  • Analog filtering
  • Analog to digital conversion for on-computer digital filtering

Part Selection

Microphones

Requirements

  • Must meet $20Hz - 20kHz$ voice-band frequency range
  • Must allow for analog sampling
  • Preferably a MEMs microphone
    • Since it’s cheaper
    • And usually smaller
  • Must have datasheets and models because I don’t hate myself

DigiKey filtering link

Part selection:

https://www.digikey.com/en/products/detail/tdk-invensense/ICS-40618/6025653

Application notes

From the datasheet microphone array datasheet input requirements we can see the microphone array datasheet input requirements.

Since we’ll always want to operate in high performance mode, we can pick $3.3V$ for a power supply target voltage. This means that the power supply will need at a minimum to be able to support $0.2mA$ per microphone.

The datasheet also points to some relevant application notes.

AN-1140 – Microphone Array Beamforming AN-1165 – Op Amps for MEMS Microphone Preamp Circuits

The pre-amp circuit specified in the datasheet is

pre-amp invensense

AN-1003 – Recommendations for Mounting and Connecting InvenSense MEMS Microphones

Datasheet suggests avoiding acoustic resonances from a Helmholtz resonator. However, we will just not bother with that and leave the microphones exposed for now. I really don’t want to get into the nitty-gritty of mechanical design. Helmholtz Resonator bad

Helmholtz Resonator good

Now we can select an appropriate ADC since these microphones are essentially fine…

ADC

Requirements

  • Must meet $20Hz - 20kHz$ voice-band frequency range
  • Must have datasheets and models because I don’t hate myself

DigiKey filtering link

Part selection:

https://www.digikey.com/en/products/detail/cirrus-logic-inc/CS5366-CQZ/923209

Application Notes

From the datasheet we see that the recommended input buffer looks like:

recommended input buffer

This pre-amp stage is used in the final design.

From the datasheet we also see that the recommended typical connection diagram is the following:

typical ADC

This means that we require a crystal oscillator that oscillates at a frequency between 1 and 6 $MHz$. I picked something out of the sky at $4MHz$.

https://www.digikey.ca/en/products/detail/ecs-inc/ECS-40-20-5PXDN-TR/827400

oscillator table

After trying to read the datasheet for a few hours I have discovered I’d rather not use this one for arbitrary reasons and not just because I couldn’t figure it out.

I am instead going to use this one. It’s much simpler for simple people like me.

This is the datasheet

We can see that the typical usage is very simple:

typical ADC

Schematic

To do the schematic we first need to break out the microphones.

microphones schematic

We then need to pre-amp the microphones and use an instrumentation amplifier to retrieve the differential mode signal.

The instrumentation amplifier resistor was selected to provide a gain of $50x$

The datasheet is here for the INA128

amplifier schematic

And now the ADC to raspberry breakout schematic looks as follows:

top level schematic

Layout

Since we want to be able to do beamforming, we can place them along some sort of array pattern, a square with side lengths of $100mm$ is a good start.

We can put the rats-nest down.

rats-nest

The R-Pi breakout is placed on the opposite side to minimize interference of the Pi with the mics.

Routing

Routing is done starting with the local areas, I place components as well as I can. I’m sure this could’ve been done better, but I’m not super experienced with this.

top level schematic

3D model

And now the final model looks like.

3d-pcb-face 3d-pcb 3d-pcb-bottom

This post is licensed under CC BY 4.0 by the author.