Changelog Xiaozhi ESP32 v2.0.4 - v2.4.2: Tổng hợp cập nhật firmware mới nhất
Tổng hợp changelog Xiaozhi ESP32 từ v2.0.4 đến v2.4.2 (06/08/2026): Firmware Builder, Noto font + Glyph Push, ESP-IDF 6.0, board M5 CoreP4, Waveshare, S31, sửa màn tròn & camera.
Nguồn: GitHub — 78/xiaozhi-esp32 Releases. Bài viết tổng hợp và dịch/giải thích changelog từ v2.0.4 (28/10/2025) đến v2.4.2 (06/08/2026) — phiên bản mới nhất tại thời điểm cập nhật.
Xiaozhi ESP32 — Changelog v2.0.4 → v2.4.2
Xiaozhi ESP32 (github.com/78/xiaozhi-esp32) là dự án mã nguồn mở biến bo mạch ESP32 thành trợ lý AI giọng nói. Từ cuối 2025 đến giữa 2026, dự án đã phát hành nhiều bản chính với hàng trăm thay đổi — mở rộng phần cứng, cải thiện âm thanh, camera, giao diện, rồi đến bước nhảy lớn ESP-IDF 6.0 và hệ thống font Noto + Glyph Push trong v2.4.0.

Bảng tóm tắt các phiên bản
| Phiên bản | Ngày phát hành | Điểm nhấn |
|---|---|---|
| v2.4.2 | 06/08/2026 | Firmware Builder (xiaozhi.me), board M5 CoreP4 / Waveshare 3.49 V2 / S31 / Zectrix, sửa màn tròn & camera, refactor board tree |
| v2.4.0 | 19/07/2026 | Migrate ESP-IDF 6.0, font Noto + Glyph Push động, AGENTS.md kiến trúc dự án, Otto GIF emoji v1.3.0 |
| v2.2.6 | 19/04/2026 | Nhiều board Waveshare mới, quản lý Assets mở rộng, EchoEar → ESP-VoCat, sửa crash GIF/JSON |
| v2.2.4 | 09/03/2026 | Sửa SetupUI, AMOLED/ePaper Waveshare, board ABS 2.0, ổn định AudioService |
| v2.2.3 | 17/02/2026 | Bluetooth 小智云聊, OGG streaming, SetupUI, sửa AFE/pin thấp |
| v2.2.2 | 02/02/2026 | Audio codec mới, RNDIS USB, camera OV2640/OV3660, wake word, M5 Cardputer Adv |
| v2.1.0 | 30/12/2025 | BLUFI配网, USB Camera, ESP32-C5, nhiều board DIY mới |
| v2.0.5 | 19/11/2025 | Otto Robot MCP, xoay ảnh camera, JPEG, layout LCD layers |
| v2.0.4 | 28/10/2025 | ESP32-C5/P4, 16 ngôn ngữ, esp_video, nhiều board Waveshare/LILYGO |
Chi tiết từng phiên bản
v2.4.2 (06/08/2026) — Mới nhất
Bản phát hành sau v2.4.0, tập trung mở rộng phần cứng, dọn cấu trúc repo và ra mắt công cụ build firmware trực tuyến. Nguồn: Release v2.4.2 · Full changelog v2.4.0 → v2.4.2.
1) Firmware Builder — công cụ build firmware trực tuyến (mới)
Team Xiaozhi ra mắt Firmware Builder tại xiaozhi.me/console/firmware-builder — chọn board, cấu hình và tải firmware mà không cần tự cài ESP-IDF. Hữu ích cho người dùng Loa AI / DIY muốn flash nhanh bản mới nhất.
2) Board & phần cứng mới
- M5Stack CoreP4 — PR #2061 (@hlym123)
- Waveshare ESP32-S3-Touch-LCD-3.49 V2 — PR #2143 (@javen13)
- ESP32-S31 Function CoreBoard — PR #2151 (@78)
- ESP32-S31-Korvo-1 — PR #2158 (@HonestQiao)
- LCD Wiki ES3C35P — PR #2112 (@Eivs)
- Zectrix ESP32-S3 — PR #2154 (@cattei), kèm fix build #2160
3) ESP-IDF 6 / ESP-SR / P4
- Cập nhật hỗ trợ ESP-SR và ESP32-P4, sửa build LCD Wiki trên IDF 6 — PR #2142 (@78)
- Tách P4 Function EV Board khỏi BSP — PR #2159 (@78)
4) Sửa lỗi & refactor
- Taiji Pi S3: giữ chữ màn tròn trong vùng an toàn — PR #2136 (@sinco-z) — liên quan trực tiếp EchoEar / màn tròn Loa AI
- AtomS3R-M12 (OV3660): sửa ảnh camera bị lật gương — PR #2155 (@78)
- ESP32-S3-Korvo2: sửa tính % pin — PR #2156 (@cyberxnomad)
- Bỏ acoustic provisioning (cấu hình Wi-Fi bằng âm thanh) vì không ổn định — PR #2152 (@78)
- Tổ chức board theo hãng sản xuất — PR #2153 (@78), dễ tìm profile khi tự build
v2.4.0 (19/07/2026)
Đây là bản nâng cấp nền tảng lớn nhất từ đầu năm 2026: toolchain chuyển sang ESP-IDF 6.0, font chữ firmware chuyển sang hệ Noto, và bổ sung giao thức Dynamic Text Glyph Push để server đẩy glyph thiếu xuống thiết bị theo thời gian thực. Nguồn: Release v2.4.0.
1) Migrate firmware sang font Noto + tài liệu kiến trúc — PR #2125 bởi @78
Đây là thay đổi người dùng cảm nhận rõ nhất trên màn hình LCD/OLED: chữ đẹp hơn, hỗ trợ quốc tế hóa tốt hơn, và server có thể “bù” những ký tự hiếm mà firmware chưa nhúng sẵn.
a) Chuyển hệ font firmware sang Noto
- Firmware chuyển sang bộ font Noto (bundle
noto-v1) thay cho hệ font cũ — thống nhất glyph, độ nét và metric trên nhiều board. - Dùng package xiaozhi-fonts 2.0.0; assets chuẩn load charset
commontừ partition, còn firmware gắn sẵn charsetbasic. - Emoji board mặc định chuyển sang Twemoji; đồng thời tách custom font khỏi Glyph Push để theme/OTA vẫn tùy biến được ngay cả khi máy không hỗ trợ đẩy glyph.
- Sửa phụ đề cuộn: restart scrolling subtitle khi text đổi — tránh chữ cũ/mới chồng nhau khi TTS/STT cập nhật liên tục.
b) Tính năng mới: Dynamic Text Glyph Push (mở rộng giao thức)
Server có thể gửi bitmap glyph cho các ký tự thiếu trong font local của thiết bị — hữu ích với chữ Hán hiếm, tên riêng, ký tự đặc thù vùng miền, mà không cần nhồi full Unicode vào flash.
- Tài liệu chính thức (EN/ZH):
docs/glyph-push.md,docs/glyph-push_zh.md. - Thiết bị khai báo khả năng trong gói
hello(cả WebSocket lẫn MQTT/UDP):
{
"type": "hello",
"version": 1,
"features": {
"mcp": true,
"glyph_push": true
},
"text_font": {
"bundle": "noto-v1",
"charset": "common",
"size": 20,
"bpp": 4
}
}
features.glyph_push: thiết bị có hỗ trợ mở rộng này hay không. Thiếu hoặcfalse→ server không được gửi glyph.text_font: mô tả font đang chạy thật trên máy —bundle,charset(basic/common),size(px),bpp(1 hoặc 4). Server phải tin hello, không suy đoán theo board.- Glyph được gắn kèm message
tts(sentence_start) hoặcstt. Mỗi payload tối đa 64 glyph, tổng bitmap giải mã ≤ 64 KiB. Bitmap dùng layout LVGL plain (zero stride), Base64, phải khớp đúng profile CBIN Noto. - Luồng server: lấy full bundle theo
text_font→ quét Unicode trong text → bỏ ký tự đã có trong charset → đẩy glyph thiếu → gắn vào message. - Thiết bị luôn ưu tiên font local; Glyph Push chỉ bổ sung, không ghi đè glyph đã có.
- Có PSRAM: cache tối đa 256 glyph / 64 KiB, giữ qua nhiều message (LRU khi đầy). Không PSRAM: chỉ giữ batch của message hiện tại.
- Payload lỗi → từ chối cả batch glyph nhưng vẫn hiển thị text bằng font local (degrade an toàn). Custom assets thiếu metadata tương thích sẽ báo
glyph_push: falsevà bỏtext_font— vẫn dùng được theme/emoji/màu nền.
c) Tài liệu kiến trúc dự án — AGENTS.md
- Thêm
AGENTS.md: tổng quan dự án, kiến trúc, quy tắc board/config, bước validate, và link tài liệu chính thức — dành cho contributor và agent AI làm việc trong repo. - Cập nhật ví dụ hello trong docs WebSocket / MQTT-UDP (EN + ZH) để có
features.glyph_pushvà objecttext_font. - Dọn include/format
main/application.cc, đồng bộ tên icon cảnh báo modem, cải thiện xử lý gọi wake word.
Quy mô PR #2125: ~60 file, +2511 / −1362 dòng — gồm migrate font, protocol Glyph Push, docs và chỉnh ứng dụng.
2) Migrate sang ESP-IDF 6.0 — PR #2120 & #2123 bởi @78
- CI/Docker chuyển sang
espressif/idf:v6.0.1;PROJECT_VERlên 2.4.0. - Hardening build matrix: script Python chọn variant, job tương thích IDF 5.5 cho hardware legacy, BluFi trên IDF 6.
- README (EN/ZH/JA) ghi rõ SDK khuyến nghị ESP-IDF v6.0+; ma trận release ~157 variant / ~137 board profile đã pass CI trên IDF 6.0.1.
- Cải thiện AudioService / audio codec / playback drained event trong quá trình migrate.
3) Các thay đổi khác trong v2.4.0
- Otto Robot: nâng GIF emoji component lên v1.3.0 (#2119 @txp666) — đủ 21 emotion chuẩn Xiaozhi, bỏ alias legacy, tránh emotion trùng.
- ESP-VoCat: tạm tắt touch sensor khi build IDF v6 (#2118 @laride) vì component cảm ứng chưa sẵn sàng trên IDF 6.
- Community: tinh gọn GitHub issue forms (#2128 @78) — form build/flash, bug, feature, board-support, câu hỏi firmware; hướng unbind thiết bị sang email riêng.
v2.0.4 (28/10/2025)
- Phần cứng mới: ESP32-C5, ESP32-P4 (Waveshare 7" MIPI, Function EV Board), LILYGO T-Display-P4, Wireless-Tag P4 + LCD 7", Waveshare S3 Touch 1.83"…
- Âm thanh: Thêm
SetInputGain(float gain)cho AudioCodec - Camera: Refactor dùng component
esp_video; sửa camera Lichuang, LilyGo T-CameraPlus-S3 - Giao diện: Thêm 16 ngôn ngữ vào locales; hỗ trợ emote cho lichuang-dev
- Khác: Tối ưu AdcBatteryMonitor (không cần chân sạc); sửa OTTO chân trái/phải; yêu cầu IDF tối thiểu 5.4.0
v2.0.5 (19/11/2025)
- Otto Robot: Cập nhật V2 partition + GIF manager; thêm động tác mới và MCP tool lập trình động tác AI; hỗ trợ WeChat mini-program
- Camera: Xoay ảnh camera; hỗ trợ JPEG input; sửa tràn SRAM khi encode JPEG phần mềm; camera M5Stack Tab5
- Phần cứng: Waveshare AMOLED 1.32" (S3/C6), ePaper 1.54", AMOLED 2.06", Xorigin AiPi Lite, Spotpear S3 1.28 box…
- UI: Đổi layout LCD từ grids sang layers
- Sửa lỗi: Sensecap Watcher memory leak; lỗi biên dịch esp_afe_sr, MIPI_DSI
v2.1.0 (30/12/2025)
- WiFi: Thêm giao thức BLUFI配网 (cấu hình WiFi qua Bluetooth), hỗ trợ mã hóa
- Camera: Hỗ trợ USB Camera; camera cho Otto Robot, Waveshare ESP32-P4
- Phần cứng: ESP-Spot C5, Movecall Moji2 (ESP32-C5), DIY AI Watch HU-087, 无名科技星智铝合金 WiFi, Waveshare C6 Touch 1.83"…
- Âm thanh: Cơ chế phản hồi âm thanh popup; sửa panic khi bật DEBUG + voice wake-up
- Khác: Nút SET/REC; sửa log NVS khi lưu mật khẩu WiFi; chất lượng audio tiếng Nga cho Echoear
v2.2.2 (02/02/2026)
- Âm thanh lớn: Thay
78opusbằngesp_audio_codec+esp_audio_effects - Mạng: Hỗ trợ USB RNDIS (card mạng USB); board RNDIS riêng
- Camera: Refactor
esp32s3_camera; hỗ trợ OV2640 và OV3660 qua esp_video - Wake word: Refactor kênh audio và phát hiện wake word; sửa AFE ringbuffer đầy
- Phần cứng: ESP-SensairShuttle, M5Stack Cardputer Adv, Waveshare RLCD 4.2", S3 Touch LCD 4.3c, 征辰科技 AI camera WiFi/4G…
- Ổn định: Sửa crash LVGL SetChatMessage; cải thiện quản lý bộ nhớ OTA/asset download; clang-format cho code
v2.2.3 (17/02/2026)
- 小智云聊: Thêm Bluetooth
- Âm thanh: Hỗ trợ giải mã OGG streaming
- UI: Thêm
SetupUI()ảo trong lớp Display; sửa layout tùy chỉnh bị hỏng - Sửa lỗi: AFE; độ sáng backlight M5Stack Tab5; popup pin yếu; frame buffering ESP32-C5
v2.2.4 (09/03/2026)
- Phần cứng: Waveshare ePaper 1.54 (2 phiên bản HW), AMOLED 1.75/1.75C, S3 Touch LCD 1.85c v2.0, Touch LCD 3.5, MagiClick 2.5 nhận diện HW, 无名科技 ABS 2.0
- Sửa lỗi: SetupUI; touch AMOLED Waveshare; OttoEmojiDisplay crash LoadProhibited; PSRAM ESP32-C5; 小智云聊 AEC
- AudioService: Không kết thúc input task khi read timeout — delay thay thế
v2.2.6 (19/04/2026)
- Đổi tên: EchoEar → ESP-VoCat
- Phần cứng: Waveshare ePaper 3.97", P4 WiFi6 Touch 4.3/3.5, S3 Touch LCD 1.54/0.85, C6 AMOLED 2.16, S3 AMOLED 1.43c, Freenove S3 Display 2.8 + touch, 正点原子 DNESP32S3B3, NULLLAB-AI-VOX-V3, S3 CAM…
- ESP-VoCat: BMI270 motion feedback, capacitive slider v1.2, nút đơn v1.0
- Assets: Quản lý tài nguyên hỗ trợ nhiều kịch bản hơn
- Sửa lỗi: Race condition GIF emotion crash; JSON parse StoreProhibited; GIF nhấp nháy; crash GPIO_NUM_NC; volume khi ES8311 tắt; touch GT911; build Windows UTF-8
- Cardputer Adv: Bàn phím TCA8418 + UI cấu hình WiFi

Xu hướng phát triển qua các bản
- Bùng nổ hỗ trợ phần cứng — Đặc biệt Waveshare, ESP32-P4/C5/C6, M5Stack, board DIY Trung Quốc
- Camera & vision — esp_video, USB cam, xoay ảnh, JPEG, nhiều sensor OV
- Âm thanh chuyên nghiệp hơn — esp_audio_codec, OGG stream, AEC, wake word ổn định
- Cấu hình dễ hơn — BLUFI, RNDIS, Bluetooth 小智云聊
- Robot & emoji — Otto Robot MCP, GIF emotion chuẩn hóa (v1.3.0), Assets system
- Firmware Builder & board tree (v2.4.2) — Build OTA trực tuyến, phân loại board theo hãng, mở rộng M5 P4 / Waveshare / S31
- Nền tảng & i18n (v2.4.0) — ESP-IDF 6.0, font Noto, Glyph Push động, AGENTS.md cho contributor/agent
- Ổn định production — Liên tục sửa crash LVGL, memory leak, race condition
Ai nên cập nhật?
- Muốn build/tải firmware nhanh không cài IDF → dùng Firmware Builder v2.4.2 hoặc file Release v2.4.2
- Board mới M5 CoreP4, Waveshare 3.49 V2, S31 Korvo, Zectrix, LCD Wiki ES3C35P → cần v2.4.2
- Màn tròn (Taiji Pi S3 / EchoEar) bị chữ tràn mép → nên lên v2.4.2
- Muốn chữ đẹp hơn / hiển thị ký tự hiếm / server Glyph Push → lên v2.4.0+ (tốt nhất v2.4.2)
- Tự build firmware / CI mới → dùng ESP-IDF 6.0+ theo v2.4.0
- Đang dùng board mới (Waveshare P4, ePaper, AMOLED 2026…) → cần v2.2.4+; nên thẳng v2.4.2 nếu board có binary sẵn
- Dùng BLUFI / USB camera → tối thiểu v2.1.0
- Otto Robot + MCP / emotion GIF → v2.0.5+; emotion chuẩn mới nhất ở v2.4.0
- Gặp lỗi wake word / audio → nên lên v2.2.2+
- ESP-VoCat phụ thuộc touch sensor → cân nhắc chờ bản mở lại touch trên IDF 6, hoặc theo dõi issue upstream
Liên quan Loa AI
Loa AI xây dựng trên hệ sinh thái Xiaozhi/ESP32 — tương thích firmware và phần cứng tương tự. Theo dõi changelog Xiaozhi giúp người dùng Loa AI hiểu các tính năng sắp có hoặc đã có trên nền tảng mã nguồn gốc. Xem sản phẩm tại loaai.me.