A Rust Switchboard for ESP32 Voice Assistants
EchoKit Server bridges ESP32 voice hardware to OpenAI-compatible AI backends, letting you swap speech and language models without touching the device firmware.

What it does
EchoKit Server is the central Rust relay between an EchoKit ESP32 device and your choice of AI speech services. It runs the full ASR → LLM → TTS loop, passing audio from the hardware to a configurable pipeline of models and returning synthesized speech. Think of it as a headless operator for a tiny physical voice assistant, translating button presses and audio streams into structured AI conversations.
The interesting bit
The server is deliberately provider-agnostic at every stage: speech recognition, reasoning, and voice synthesis each plug into any OpenAI-compatible endpoint. That means you can point the same ESP32 hardware at a local LlamaEdge instance, Google Gemini Live, or ElevenLabs streaming without changing the device itself. It also folds in MCP servers, so the voice assistant can call tools rather than just chat.
Key highlights
- OpenAI-compatible API slots for ASR, LLM, and TTS, including ElevenLabs streaming support.
- Out-of-the-box end-to-end pipelines for Google Gemini and Alibaba Qwen Real-Time.
- Local or remote deployment; the device only needs a WebSocket URL to connect.
- MCP server integration for tool use capabilities.
- A test web page at
echokit.dev/chatfor browser-based debugging.
Caveats
- Requires an EchoKit device or custom ESP32 hardware running EchoKit firmware; it is not a generic voice server for arbitrary clients.
- The README leans heavily on external setup guides (e.g., LlamaEdge) for running the actual AI backends; the server itself is just the orchestration layer.
Verdict
Worth a look if you are building custom ESP32 voice hardware and want a Rust-based control plane that swaps AI vendors like guitar pedals. If you do not have the device or a reason to self-host a voice pipeline, this is not for you.
Frequently asked
- What is second-state/echokit_server?
- EchoKit Server bridges ESP32 voice hardware to OpenAI-compatible AI backends, letting you swap speech and language models without touching the device firmware.
- Is echokit_server open source?
- Yes — second-state/echokit_server is open source, released under the GPL-3.0 license.
- What language is echokit_server written in?
- second-state/echokit_server is primarily written in Rust.
- How popular is echokit_server?
- second-state/echokit_server has 591 stars on GitHub.
- Where can I find echokit_server?
- second-state/echokit_server is on GitHub at https://github.com/second-state/echokit_server.