Skip to content
MACT.ai
All work

AI Voice Device

A low-cost ESP32 speaker with wake word on device and conversation in the cloud.

2026ESP32 · Voice AI · Cloud
AI Voice Device

Project Overview

A voice product built on a deliberately inexpensive MCU. Wake-word detection and audio front-end processing run locally; streaming speech recognition, the language model and speech synthesis run behind an AI gateway.

Challenge

Conversational latency had to feel immediate on a part with a few hundred kilobytes of usable RAM, over consumer Wi-Fi, without a per-unit cost that broke the product.

Solution

We streamed audio in both directions and started playback on the first synthesized chunk rather than waiting for a complete response. Local wake-word and echo cancellation kept the radio quiet until it mattered.

Architecture

01

Hardware

An ESP32-S3 with a dual-microphone array, I2S codec and amplifier on a compact 4-layer board.

  • Dual-mic array with beamforming front end
  • I2S codec and class-D amplifier
  • 4-layer board with antenna keep-out discipline
  • USB-C power with battery option
02

AI

On-device wake word and voice activity detection, with streaming ASR, an LLM and TTS reached through a gateway.

  • Wake word under 100 kB of RAM
  • Acoustic echo cancellation and noise suppression
  • Streaming ASR with partial hypotheses
  • First audio out in roughly 700 ms
03

Software

ESP-IDF firmware with a WebSocket session protocol, provisioning flow and OTA, behind a stateless session service.

  • Bidirectional audio over a single WebSocket
  • Opus encoding to fit consumer uplinks
  • BLE provisioning with captive fallback
  • Signed OTA with staged rollout

Result

  • Roughly 700 ms to first spoken audio
  • Wake word running within the MCU memory budget
  • Model providers swappable without a firmware release
  • Bill of materials held inside the target price

Technology Stack

Hardware

ESP32-S3Mic ArrayI2S Audio

AI

Wake WordStreaming ASRLLMTTS

Embedded

ESP-IDFOpusWebSocketOTA

Cloud

AI GatewaySession Service