Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Are there any inexpensive microphone arrays?

I was interested in making my own alexa-like device, but it seems mic arrays are sooooo expensive - more than the cost of an alexa device for the least expensive one i can find :/



The mike hardware used in the UMA-16 USB mic array [0] is the Knowles SPH1668LM4H-1 which runs about a buck and a quarter [1]. The DSP, SHARC ADSP21489, is pricier as an eval board >$500 [2].

0. https://www.minidsp.com/products/usb-audio-interface/uma-16-...

1. https://www.digikey.com/en/products/detail/knowles/SPH1668LM...

2. https://www.digikey.com/en/products/detail/analog-devices-in...


UMA-16 main audio processor is XMOS though.


> Are there any inexpensive microphone arrays?

Not that I can find! Building the array is way more expensive than it needs to be.

I have limited EE knowledge, so have been stumbling through it on my own, building my first array out of reference microphones, another with $10 omnis from guitar center, and one with 8x, cheap, repurposed webcams.

Right now, my limiting factor on driving the cost of a future array down is that I haven't figured out how to get a lot (at least 8) I2S inputs to a micro-controller. If that were solved, it would be easier.


https://www.hackster.io/sandeep-mistry/create-a-usb-micropho...

Main limitation is USB 1.1 IO, so ~1MB/s, unless you are fine with recording to SDcard then probably around 10MB/s. Pico itself can interface 29 microphones with no sweat (30 GPIOs, 2.0 GB/s internal bandwidth).


Funny you should link that! I have gotten as far as getting a raspberry pi zero to be a USB audio gadget, but I haven't played with the Pico yet. The raspi zero has one i2s input and one i2s output.

> Pico itself can interface 29 microphones with no sweat.

I... had no idea. I thought that since it didn't have an i2s peripheral I was going to have to either find a micro that did, or do something bitbangy using SPI and perhaps an external buffer. I see that it might be possible to get a few I2S inputs using the PIOs. Thanks for this, will certainly give it a shot.

(though I don't see how you're getting 29 microphones :P "prove it" ;)


30 GPIOs available to PIO state machines = 29 input pins from PDM MEMs microphones recorder at the same time.


The post links to an inexpensive array at the end. I don't really get why the 16-mic one he used is so expensive, those smd mics can't be more than $1 or so each...


those smd mics can't be more than $1 or so each

The actual mic capsules are likly far cheaper than $1 a piece (probably closer to $0.10 than $1) but the mics in an array need to be phased-matched. The two approaches to getting phased microphones are 1) building them using precision techniques so they are phased-match from the start (which is expensive and why pro phase-matched mics are around $1,000 each), or 2) get a whole pile of cheap mic, test them one-by-one (or really, pair-by-pair) and select the mics that are best phased-match to use them in the array. The #2 approach is cheaper, but does add cost.


IME, the array only needs phased matched mics if you're doing SDB, or something else that cares deeply about audio fidelity.

I've never used phased matched mics in my arrays (can't afford it!) and also have never needed to "bin" them. ("pair-by-pair" testing).


Couldn't one instead record at a higher sample rate (192 KHz+) and then align in software instead of phase matching the mics?


I don't know enough about this so maybe dumb question, but couldn't you use DSP to correct phase between microphones if you knew their relative differences?


Yes you can. Another problem though is that the microphones need to have a common timebase, unless you have More Magic.


The mics are probably cheap but 16x ADC in decent quality with decent power supply and low time offset between channels? How much is a 16chn audio interface with 16 mic preamps these days?


It can be done w/o phase locked ADCs :D it just takes... More Cleverness.

I made a 16 mic array out of a bunch of trash-picked and cheap 4ch ADCs.


I see they have a XMOS 200 chip on there maybe they do some DSP magic with that?


Yeah, the respeaker ones i have looked at - but at $25+ they still feel very expensive to me. Are they that complicated/expensive to make?


It’s probably a niche enough product that the engineering / marketing work that goes into it is a higher fraction of the cost than the raw components.


You can estimate 2D direction with 2 microphones (most of phones and laptops have at least 2 mic).




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: