espressif/esp-skainet
Espressif intelligent voice assistant
ESP‑Skainet – On‑device voice‑assistant SDK for ESP32
What it is – ESP‑Skainet is an open‑source software stack from Espressif that lets you run wake‑word detection and offline speech‑command recognition directly on ESP32‑series microcontrollers (especially the ESP32‑S3). It bundles a tiny wake‑word engine (WakeNet), a flexible command‑recognition model (MultiNet), and an audio‑front‑end that performs echo cancellation, VAD, noise suppression, etc.
Why it matters – Modern voice assistants usually run in the cloud, but many IoT devices need low‑latency, privacy‑preserving, and power‑efficient speech processing. ESP‑Skainet provides a complete, ready‑to‑flash solution that fits into the few hundred kilobytes of RAM and flash available on ESP32 chips.
Core components
| Component | Role | Notable specs |
|---|---|---|
| WakeNet | Constant‑listening wake‑word detector | Detects custom or built‑in words like “Hi, Lexin”, “Alexa”, Chinese phrases; runs on ESP32‑S3 with < 100 KB RAM |
| MultiNet | Offline speech‑command recognizer | Supports up to 200 English/Chinese commands without retraining the model; runs on ESP32‑S3 with octal‑SPI PSRAM for higher speed |
| Audio Front‑End (AFE) | Pre‑processing of microphone streams | Includes Acoustic Echo Cancellation, Voice Activity Detection, Blind Source Separation, Noise Suppression; qualified for Amazon Alexa Built‑in devices |
Typical hardware
You need an ESP32 development board that includes an audio input (mic or I²S). The README lists several supported kits, e.g. ESP32‑Korvo, ESP32‑S3‑Korvo‑1/2, ESP‑BOX, ESP32‑S3‑EYE, ESP32‑P4‑Function‑EV.
Getting started (quick summary)
- Clone the repo
git clone https://github.com/espressif/esp-skainet.git - Install ESP‑IDF (v4.4 or v5.0) and set
IDF_PATH. - Pick an example – the
examples/wake_word_detectionfolder is the simplest. - Build & flash
cd examples/wake_word_detection idf.py flash monitor - Customize – run
idf.py menuconfigto add your own wake words or command phrases.
What you can build
- Voice‑controlled smart‑home devices – turn lights, AC, etc. on/off with a few spoken commands.
- Always‑on assistants – devices that listen for a wake word and then process commands locally, keeping user data on‑device.
- Embedded voice UI for wearables or robots – thanks to the tiny memory footprint and the two‑mic AFE.
- Prototype kits for AI‑edge education – the examples and documentation make it easy for students to experiment with on‑device speech AI.
Documentation & support
- Detailed engine docs: WakeNet and MultiNet.
- Audio front‑end guide: AFE.
- Issue tracker on GitHub for bugs/feature requests.
- Contribution guide linked to the main ESP‑IDF repo.
Bottom line
ESP‑Skainet is a genuine, production‑grade AI/ML project that brings wake‑word detection and command recognition to low‑cost microcontrollers. It’s useful for anyone building privacy‑first, offline voice interfaces on ESP32 hardware.
Related
- Project
- Project
- Project
- Project