Build your own AI friend
Go to file
Xiaoxia 16ec95f6d5
Some checks are pending
Build and Test / build (push) Waiting to run
Update documentation (An MCP-based Chatbot)
2025-06-04 04:17:49 +08:00
.github add ci build.yml (#475) 2025-04-12 09:34:33 +08:00
docs Update documentation (An MCP-based Chatbot) 2025-06-04 04:17:49 +08:00
main Update documentation (An MCP-based Chatbot) 2025-06-04 04:17:49 +08:00
scripts Add v2.0 to versions.py 2025-04-28 17:05:56 +08:00
.gitignore feat: 添加 ESP-Hi WebUI (#739) 2025-06-03 15:24:11 +08:00
CMakeLists.txt v1.6.6: Set MCP as default IoT Protocol (#690) 2025-05-27 14:58:49 +08:00
LICENSE Initial commit 2024-08-31 18:08:16 +08:00
partitions_4M.csv reconstruct application 2024-10-03 06:39:22 +08:00
partitions_8M.csv add more fonts for version 1.0.0 2025-01-23 13:50:22 +08:00
partitions_32M_sensecap.csv fix sensecap watcher partition alignment 2025-03-26 23:07:58 +08:00
partitions_hi.csv feat: add new board esp-hi (#666) 2025-05-29 23:29:33 +08:00
partitions.csv add more fonts for version 1.0.0 2025-01-23 13:50:22 +08:00
README_en.md Update documentation (An MCP-based Chatbot) 2025-06-04 04:17:49 +08:00
README_ja.md Update documentation (An MCP-based Chatbot) 2025-06-04 04:17:49 +08:00
README.md Update documentation (An MCP-based Chatbot) 2025-06-04 04:17:49 +08:00
sdkconfig.defaults v1.6.5: Improve performance and memory usage 2025-05-26 14:30:44 +08:00
sdkconfig.defaults.esp32c3 Add wake word to xmini-c3 (#730) 2025-05-31 22:21:03 +08:00
sdkconfig.defaults.esp32p4 Adjust ESP32-P4 chip compatibility Add Waveshare ESP32-P4-NANO board support (#589) 2025-05-16 02:41:35 +08:00
sdkconfig.defaults.esp32s3 更新Wi-Fi组件版本,从OTA接口读取Websocket服务器 2025-04-21 15:13:11 +08:00

An MCP-based Chatbot

(English | 中文 | 日本語)

Video

👉 Human: Give AI a camera vs AI: Instantly finds out the owner hasn't washed hair for three days【bilibili】

👉 Handcraft your AI girlfriend, beginner's guide【bilibili】

Introduction

This is an open-source ESP32 project, released under the MIT license, allowing anyone to use it for free, including for commercial purposes.

We hope this project helps everyone understand AI hardware development and apply rapidly evolving large language models to real hardware devices.

If you have any ideas or suggestions, please feel free to raise Issues or join the QQ group: 575180511

Control Everything with MCP

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.

Control everything via MCP

Features Implemented

  • Wi-Fi / ML307 Cat.1 4G
  • Offline voice wake-up ESP-SR
  • Supports two communication protocols (Websocket or MQTT+UDP)
  • Uses OPUS audio codec
  • Voice interaction based on streaming ASR + LLM + TTS architecture
  • Speaker recognition, identifies the current speaker 3D Speaker
  • OLED / LCD display, supports emoji display
  • Battery display and power management
  • Multi-language support (Chinese, English, Japanese)
  • Supports ESP32-C3, ESP32-S3, ESP32-P4 chip platforms
  • Device-side MCP for device control (Speaker, LED, Servo, GPIO, etc.)
  • Cloud-side MCP to extend large model capabilities (smart home control, PC desktop operation, knowledge search, email, etc.)

Hardware

Breadboard DIY Practice

See the Feishu document tutorial:

👉 "XiaoZhi AI Chatbot Encyclopedia"

Breadboard demo:

Breadboard Demo

Supports 70+ Open Source Hardware (Partial List)

Software

Firmware Flashing

For beginners, it is recommended to use the firmware that can be flashed without setting up a development environment.

The firmware connects to the official xiaozhi.me server by default. Personal users can register an account to use the Qwen real-time model for free.

👉 Beginner's Firmware Flashing Guide

Development Environment

  • Cursor or VSCode
  • Install ESP-IDF plugin, select SDK version 5.4 or above
  • Linux is better than Windows for faster compilation and fewer driver issues
  • This project uses Google C++ code style, please ensure compliance when submitting code

Developer Documentation

Large Model Configuration

If you already have a XiaoZhi AI chatbot device and have connected to the official server, you can log in to the xiaozhi.me console for configuration.

👉 Backend Operation Video Tutorial (Old Interface)

For server deployment on personal computers, refer to the following open-source projects:

Other client projects using the XiaoZhi communication protocol:

Star History

Star History Chart