Best microphone for DIY voice control components

While I love Echo, I still hope to have a voice controlled smart home solution that doesn’t rely on Cloud. So far, I have experimented with Snips and Mycroft (Picroft). Both are DIY approach where I need to supply a Raspberry Pi 3, a microphone and a speaker. During my experiment, I have tested a few combination of microphone and speaker. Here are my conclusion and reviews for what I have tested so far.

The best but most expensive: Jabra SPEAK 410

So far, this has the best microphone I have tested. It manages to capture my voice from a distance in a quiet room almost as good as Echo Dot but I feel it still cannot match the superiority of the mics on Echo Dot. Almost there but not yet there.

Another thing I like about this is it has a speaker built-in which sounds loud and nice for TTS. That means, I don’t have to buy a separate speaker and plug into the lousy RPi’s 3.5mm output. The sound that came out from RPi 3.5mm output has a lot of noise and sound worse than those that came out from USB output.

If that is not good enough, I can plug in a better speaker to the 3.5mm output jack on the Jabra 410; just like Echo Dot.

Other small details which I really love about Jabra 410 is the mute button and the volume LED lights around the speaker grill. Just like Echo Dot, I can press the mute button and it will stop listening to me with LED lights around the speaker grill turn to red.

If I change the speaker volume via command line, e.g. amixer set PCM - 90% -q, the white volume LED lights around the speaker grill will dial to the correct position; again just like Echo Dot.

However, this is the costliest among the options I have tested. It costs $74.49 on Amazon at the time of writing. Considering the price of Echo Dot is around $50, it doesn’t seem wise to spend more on something that I need put effort to build it and yet doesn’t sound as good or work as smart as an Echo. I guess this is the premium I need to pay for a customisable solution.

The cheapest with acceptable range: PS3 Eye

This one is the cheapest options I have tested with acceptable range. However, I still feel Jabra 410 is better than this in terms of the microphone and other functionalities. Please bear in mind that it doesn’t come with a speaker, so you might need to buy a speaker. So the final cost and sound quality is still depend on what speaker you get.

Another issue I faced with the microphone is that it doesn’t support mixer. So alsamixer command doesn’t work on this and that means I cannot adjust the microphone sensitivity level.

If you are on a tight budget, get this. Otherwise splurge a little bit on the Jabra 410.

The worst: mVox USB Speakerphone

This is the worst option I have tested. Even though it is USB powered mic and speaker, the mic range is very weak and the speaker sounds distorted. I had to put my mouth inches away from the microphone for it to hear me making it unsuitable as Echo Dot alternative.

If you have other suggestions, please share it here. Thanks!

2 Likes

Thanks for the nice summary. I would like to throw the ReSpeaker Array into the ring as well:

Not expensive, but good recognition and extras: ReSpeaker 4-mic and 2-mic
They provide good audio recognition (5 m away with music in background is still fine). Much better than the PS3eye, which always made me yell accross the living room. In addition both of the HATs come with colored LEDs for visual feedback, which can be programmed to mimick G%%gleH&me or Al#xa patterns. The 2-mic array has an additional audiojack for connecting a speaker.
Since they come with multiple microphones you could even determine the location the sound, if you want…

This is all you need for your DIY Voice Control for a very fair price (25$ and 10$, respectively).

I use both versions for controlling Sonos and Homeassisstant using Snips.ai and I am very happy with them.

EDIT: I recently had to retire my 4-mic array since it does not play well with the new RPi3+.

1 Like

Thanks for your suggestion. I think I will give it a try. May I know how is the performance difference between the 2-mic and 4-mic? Is the 4-mic performs a lot better than the 2-mic version?

I did not do a one-to-one comparison, since they are installed in different rooms, but I did not notice any striking differences in recognition. However the LEDs are much nicer on the 4-mic since it as a 12 LED ring, whereas the 2-mic just has a stripe with 3 LEDs.

Something to consider: the 4-mic array sometimes failed to connect properly to my RPi3. I have not figured out the exact cause. Disconnecting from power and rebooting usually helped, though.

1 Like

thanks. I have ordered the 2-mic for testing since the 4-mic is out of stock at the moment. will compare this with Jabra Speak 410 and share the result here.

I have the jabra and the respeaker 4 mic, the respeaker seems to pick things up a little better. My issue is there is no case that fits the pi and respeaker so you have pretty lights but a circuit board sitting on the side tables :frowning:

helloo guys
first i want to say that am a total noob and i need enlightenment

lately I was researching on how to add microphones for google assistant so that i can cover all the house
i saw that the respeaker module( microphone module for raspberry) was a good choice

do i need the google assistant product so i could use the respeakers? or i can connect to the google server through the rspberry pi ?
can anyone direct me to a link or teach me on how to connect it ?

for example i need four or five of those microphones modules
i am guessing that the wiring process needs an some kind of amplifier so that it will avoid the voltage drop (the respeaker is mounted on the ceiling or on the wall and the raspberry pi is in another room on the server rack )

i really cant find a full guide for this topic ?
is it applicable to use 5 respeakers or normal usb microphones on one google assistant module ?

please help me
thanks

Did you compare Jabra Speak 410 and 2-mic yet?
I would be interested by the result :slight_smile:

Maybe not the right place to ask here, but isn’t there a possibility to use a 2nd or 3rd RPi with a microphone that sends the command to the “master” RPi?

So you can install a microphone/speaker in each room?

Yes, this is very well possible.

There is extensive documentation on satellite setup from snips.ai.

If you need more help the Snips community Forum is the place to go :wink:

1 Like

Hello.

I have managed to get a Jabra Speak 510 (visually identical to the 410 - maybe BT is the only difference) and I want to set it up as a DIY Voice control speaker for HASS.IO.

HomeAssistant has detected the Jabra Speak 510 in BT pairing mode - but I have not been able to get it set up as a working audio device. Anyone give me some pointers to pair this to allow it to be set up as a DIY voice control Speaker / Mic combo?

thanks.

I’d suggest that you use the USB connection instead of BT.

Assuming you are using Raspberry Pi, these are the steps I took…

  1. Remove /etc/asound.conf if have.
  2. Create /etc/modprobe.d/alsa-base.conf: sudo nano /etc/modprobe.d/alsa-base.conf
  3. Copy and paste this into it…
# This sets the index value of the cards but doesn't reorder.
options snd_usb_audio index=0
options snd_bcm2835 index=1

# Does the reordering.
options snd slots=snd_usb_audio,snd_bcm2835
  1. Exit and save.

Thanks. I’m running hassos with hass.io… think I’m in trouble…