As a voice interaction entry, the XiaoZhi AI chatbot leverages the AI capabilities of large models like Qwen / DeepSeek, and achieves multi-terminal control via the MCP protocol.
Recent Updates
The project now requires ESP-IDF v6.0.1 or later. ESP-IDF v6.1 is the recommended SDK. ESP-IDF 5.x is no longer supported. The current matrix contains 171 variants; ESP32-S31 builds require IDF 6.1 or later.
MQTT and BluFi cryptographic code has migrated to PSA Crypto. IDF 6 component splits and third-party dependency compatibility have also been addressed.
Audio pipeline concurrency, MQTT/UDP packet validation, and release-matrix selection have been hardened.
ESP32-P4 Rev1 and Rev3 are both supported on IDF 6 with ESP-SR 2.4.7.
Features Implemented
Wi-Fi, wired Ethernet, USB RNDIS, and ML307/EC801E or NT26 Cat.1 4G networking; supported boards can switch between Wi-Fi and 4G
Offline voice wake-up with ESP-SR, including customizable wake words
What is this?XiaoZhi is an open-source firmware for ESP32 chips that turns a cheap microcontroller board into a voice-driven AI chatbot, using MCP to let the AI control devices and cloud services.
Is this an app I install on my phone, or firmware I flash onto a chip?It is C++ firmware that runs directly on ESP32-family chips; there is no phone app involved, though companion servers and clients exist as separate projects.
How do I get a device running with this?Beginners can flash a prebuilt firmware binary without setting up any dev environment; it connects to the official xiaozhi.me server by default and personal users get free access to the Qwen real-time model after registering an account.
Does compiling the firmware work the same on Windows and Linux?It works on both, but Linux is recommended since it compiles faster and has fewer driver issues than Windows.
Which ESP32 chips does it support?ESP32, ESP32-C3, ESP32-C5, ESP32-C6, ESP32-S3, and ESP32-P4, across 138 board directories and 171 release variants.
Does it need the internet, or can it run fully offline?Core wake-word detection is offline via ESP-SR, but the chat pipeline (ASR/LLM/TTS) relies on connecting to a server (official xiaozhi.me or a self-hosted alternative) over WebSocket or MQTT+UDP.
What can the device actually control through MCP?Device-side MCP lets the AI control local hardware like speakers, LEDs, servos and GPIO, while cloud-side MCP extends the model's reach to smart home control, PC desktop operation, knowledge search, and email.
Can I run my own server instead of the official xiaozhi.me?Yes, the community maintains alternative server implementations in Python, Java, and Go that speak the same XiaoZhi protocol, listed under Related Open Source Projects.
Does it support languages other than Chinese?Yes, the firmware ships with 39 interface languages with localized voice prompts where available and English fallback.