When most people say “Arduino” they mean an ATmega328 based board like the Uno.  This means a simple 8-bit microcontroller with only 2K of RAM.  That’s 2,048 bytes of memory to work with.  So when someone asked me if the Arduino could do speech recognition, to be honest, I laughed.  Then my jaw dropped when I saw µSpeech.  A speech recognition library for the Arduino Uno’s ATmega328.

The algorithm used is sophisticated and results will vary based on the types of words used as well as the hardware.  It uses only 160 bytes of RAM.

There’s the downside:  you’re going to have to do a bunch of calibration work to make it happen.  And it isn’t likely you’ll be able to mass produce your setup as each microphone-amp combination may give your application issues.

So this isn’t as simple as loading an example and start dictating to your Arduino.  If you want to stress your limits of signal processing in a limited environment, you might be able to get some simple commands in an interactive project.

Make sure you read the “Before you start” page on Github.  Again you can find the µSpeech home page at Github.io.


Fan of making things beep, blink and fly. Created AddOhms. Writer for Hackster.io News. Freelance electronics content creator for hire! KN6FGY and, of course, bald.


  1. I was fond of electronics and ever since i discovered arduino, your posts have helped me in many aspects. So i want to say thankyou and keep up. Its a great feeling to make things work (from non coding background) and good people like you have made it possible for people like me to do this easily.

  2. hi,
    any idea if it is possible to use a PC microphone instead?
    if so, how can I achieve that with µSpeech?

Write A Comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.