Ecosystem Projects: Servers, Clients and Ports

The XiaoZhi device firmware, the communication protocol and the server are separate pieces. As long as a project implements the WebSocket or MQTT + UDP protocol, any of them can be replaced. A set of third-party open-source projects has grown around this protocol.

The list on this page comes from the “related open-source projects” in the upstream firmware README, and the repository status, license and home-page description of each entry were checked (2026-10-23). These projects are maintained by their own authors. They do not belong to this site or to the upstream firmware repository, and listing them is not an endorsement; evaluate features, security and license yourself before use.

1. Servers

Run a backend on your own computer or server and point the device at it. For the setup steps and security warnings, see Self-Hosted Server.

ProjectStackLicenseSummary
xinnan-tech/xiaozhi-esp32-serverPython + Java + VueMITSupports MQTT + UDP, WebSocket, MCP endpoints, voiceprint recognition and a knowledge base, with a management console
joey-zhou/xiaozhi-esp32-server-javaJava (Spring Boot)MITEnterprise-style management platform; admin backend and conversation service run as two processes
AnimeAIChat/xiaozhi-server-goGoModified Apache 2.0 with extra conditionsAimed at personal and home use; the extra conditions include no multi-tenant use without written permission, so read its LICENSE before use
hackers365/xiaozhi-esp32-server-golangGoMITFully streaming ASR → LLM → TTS, supports WebSocket and MQTT + UDP

2. Clients and Ports

Non-ESP32 endpoints that speak the XiaoZhi communication protocol.

ProjectPlatformLicenseSummary
huangjunsen0406/py-xiaozhiPython, cross-platformMITAsync multimodal interaction framework with real-time voice, vision tasks and IoT device control
TOM88812/xiaozhi-android-clientFlutter (Android, iOS, HarmonyOS, Web, desktop)Apache-2.0Real-time voice chat app based on XiaoZhi, able to connect to xiaozhi-server
100askTeam/xiaozhi-linuxEmbedded LinuxNo license declared in the repositoryCore XiaoZhi code for Linux without the per-board BSP drivers; see its README for the boards already adapted
78/xiaozhi-sf32SiFli SF32 Bluetooth chipsMITNetworking over the Bluetooth PAN protocol, OPUS codec, device-side MCP
QuecPython/solution-xiaozhiAIQuectel QuecPython modulesNo license declared in the repositoryBased on the WebSocket protocol; the sample board uses an EC800MCNLE module

3. Selection Tips

  • Confirm the protocol version first: each project implements the communication protocol itself, so fields and behavior may not match your firmware version exactly; compare against the protocol documents.
  • Read the license first: most projects use MIT or Apache-2.0, but some add conditions or declare no license; confirm before commercial use.
  • Check maintenance: look at recent commits and Issues, not just the star count.
  • Mind security: third-party servers and clients handle device identifiers and voice data, see the security warnings in Self-Hosted Server.

4. Corrections and Additions

If the list has a mistake or needs an addition, email [email protected] with the repository address and license details. For problems in the firmware itself, please use the upstream GitHub Issues.

Related Documents

Sources: “related open-source projects” in README_zh.md of the upstream 78/xiaozhi-esp32 v2.5.2, plus each repository’s README and LICENSE, checked on 2026-10-23.