Kedar Sovani
Aug 13, 2018 · 4 min read

Recently I have seen significant interest from OEMs in embedding voice assistants, like Alexa, directly into their products. Not just linking with a voice-assistant using a cloud to cloud integration, but by having the product itself be voice-enabled (with microphones and speakers).

For example, a washing machine with a voice interface for starting it, or a smart switch with “Echo” embedded into it.

Let us have a quick look at the internal components of a typical Voice-Integrated device. We will take Alexa as an example for this post.

The Record Path

When we typically say “Alexa, what is the time”, the word “Alexa” is detected locally, while the rest of the sentence “what is the time” is detected in the cloud (in this case by the Alexa Voice Service). The keyword Alexa in this case is called a Wake-Word.

The typical journey of the record path is as shown below:

Typical record path of a Voice-Controlled Device

The sounds that the device hears using the microphone are typically processed to perform noise and echo cancellation first.

Then a wake-word engine processes the sound to detect if a wake-word was spoken. The wake-word engine is typically trained with a sample-set of data with the particular accents that the end-users will utter. When the wake-word engine detects the wake-word it notifies the Alexa client to start processing.

The Alexa client now knows that the user has uttered the wake-word, and may be now asking a query. The client then starts capturing the audio stream and sends it up to the cloud.

The cloud interprets the user’s command and then instructs the device to stop recording and take the action that the user requested.

Mapping to Hardware

So how do the above components map to typical hardware components? Let’s quickly check below:

Hardware Options

A combination of connectivity processors and digital signal processors can be used to achieve this.

As in the diagram above the simplest case is all the components are running on the same host that offers connectivity too. For example, ESP32 can be used to run the algorithms for noise cancellation, the wake-word engine and also the Alexa client to transmit data over Wi-Fi. Since it is a single chip solution this will be the lowest cost solution for the job at hand.

Then there are options of offloading the echo cancellation/beam-forming or wake-word engine to a dedicated DSP. This combination can be used to optimise for use cases where far-field interactions need to be supported, or where a wake-word needs to be detected while also playing music (barge-in). A DSP could also offer the capacity to load a wake-word engine with a much larger wake-word sample set.

Depending upon the use-case at hand, the appropriate selection can be made for supporting it in the most effective manner.

The Playback Path

In most cases, the playback path is fairly simple.

Typical playback path of a Voice-Controlled Device

In its simplest form, the playback path consists of the ESP32, acting as a client, fetching the encoded audio data (MP3, AAC etc), decoding it and forwarding the samples to a DAC which then drives a speaker.

In case hardware options with DSP are used, the playback stream may also have to be provided to the DSP for performing acoustic echo cancellation. Depending upon the DSP, it can drive the DAC by itself, or the data needs to be duplicated (in hardware or software) for the DSP.

We are looking at voice-controlled devices in 2 major ways: a) those with voice assistants (like Alexa) that are running on the ESP32, and b) those with conversational interfaces (like Amazon-Lex or Google DialogFlow). Stay tuned for an upcoming post on these approaches.

If you are intereted in building Voice-Controlled Devices with ESP32, we would love to hear about it. Please reach out to with the subject line “Voice-Controlled Devices”.

The ESP Journal

Unofficial Blog for Best Practices and Announcements about Espressif

Kedar Sovani

Written by

Startups, Learning, Innovation, Internet-of-Things, Technology, Books, Yoga, Leadership, Teaching

The ESP Journal

Unofficial Blog for Best Practices and Announcements about Espressif

Welcome to a place where words matter. On Medium, smart voices and original ideas take center stage - with no ads in sight. Watch
Follow all the topics you care about, and we’ll deliver the best stories for you to your homepage and inbox. Explore
Get unlimited access to the best stories on Medium — and support writers while you’re at it. Just $5/month. Upgrade