Free shipping on all Canadian orders over $150! All prices in Canadian dollars.

Speak Up!

We've got lots of ways to make your project talk at Elmwood Electronics. So many embedded projects produce a visual output, and sometimes it's just better to hear a response instead.

My favourite, and one that I've worked with for a number of years (even been featured on the Adafruit blog, w00t!) is the Emic-2. This little board has a very capable text-to-speech module, plus an integrated amplifier to drive a small speaker or headphones. All you need is power and a serial input, and you're talking!

Here's a simple project showing just how easy the Emic-2 is to connect:

In addition to the Emic-2 board, you'll need:

Grab the code from nlamprian/EMIC2, and run the example. It'll show off just a few of the board's many voices. Emic-2 uses the DECTalk engine that has the same roots as Stephen Hawking's famous voice.

We also sell the SpeakJet chip. This acts as a speech co-processor for your project. It's a little more low-level than the Emic-2: you'll have to work out the phonemes to convert to text, and you'll need to add your own amplifier. If you have limited space or other project constraints, the SpeakJet would be a good choice.

micro:bit users aren't left out, either. The Micropython Speech module implements a very simple text-to-speech engine that sounds, to be charitable, mostly intelligible. It is impressive that you can make the micro:bit speak at all, using only two pins. If you really must hear what this sounds like, the code for other computers lives at s-macke/SAM. Folks nearby will likely ask you to stop making such a racket, though.

Since the Raspberry Pi is a full computer, you've got many text-to-speech engines to choose from. My personal favourite is CMU Flite. It's quite small and easy to install on Raspbian (sudo apt install flite). After using Flite for years, someone pointed out that the real reason I may like it so much is that the default voice sounds very like my own. We can't all be Scottish (we wouldn't fit!), so there are now other voices you can choose for Flite that might be more appropriate.

Stewart Russell
Stewart Russell


mostly harmless