forked from xiaozhi/xiaozhi-esp32
* Upgrade component version * update fonts component version * Handle OTA error code * Update project version to 2.1.0 and add device state machine implementation - Upgrade esp-wifi-connect to 3.0.0, allowing reconfiguring wifi without rebooting - Introduce device state machine with state change notification in new files - Remove obsolete device state event files - Update application logic to utilize new state machine - Minor adjustments in various board implementations for state handling * fix compile errors * Refactor power saving mode implementation to use PowerSaveLevel enumeration - Updated Application class to replace SetPowerSaveMode with SetPowerSaveLevel, allowing for LOW_POWER and PERFORMANCE settings. - Modified various board implementations to align with the new power save level structure. - Ensured consistent handling of power save levels across different board files, enhancing code maintainability and clarity. * Refactor power save level checks across multiple board implementations - Updated the condition for power save level checks in various board files to ensure that the power save timer only wakes up when the level is not set to LOW_POWER. - Improved consistency in handling power save levels, enhancing code clarity and maintainability. * Refactor EnterWifiConfigMode calls in board implementations - Updated calls to EnterWifiConfigMode to use the appropriate instance reference (self or board) across multiple board files. - Improved code consistency and clarity in handling device state during WiFi configuration mode entry. * Add cellular modem event handling and improve network status updates - Introduced new network events for cellular modem operations, including detecting, registration errors, and timeouts. - Enhanced the Application class to handle different network states and update the display status accordingly. - Refactored Ml307Board to implement a callback mechanism for network events, improving modularity and responsiveness. - Updated dual_network_board and board headers to support new network event callbacks, ensuring consistent handling across board implementations. * update esp-wifi-connect version * Update WiFi configuration tool messages across multiple board implementations to clarify user actions
EchoEar 喵伴
简介
EchoEar 喵伴是一款智能 AI 开发套件,搭载 ESP32-S3-WROOM-1 模组,1.85 寸 QSPI 圆形触摸屏,双麦阵列,支持离线语音唤醒与声源定位算法。硬件详情等可查看立创开源项目。
配置、编译命令
配置编译目标为 ESP32S3
idf.py set-target esp32s3
打开 menuconfig 并配置
idf.py menuconfig
分别配置如下选项:
基本配置
Xiaozhi Assistant→Board Type→ 选择EchoEar
UI风格选择
EchoEar 支持多种不同的 UI 显示风格,通过 menuconfig 配置选择:
Xiaozhi Assistant→Select display style→ 选择显示风格
可选风格
表情动画风格 (Emote animation style) - 推荐
- 配置选项:
USE_EMOTE_MESSAGE_STYLE - 特点: 使用自定义的
EmoteDisplay表情显示系统 - 功能: 支持丰富的表情动画、眼睛动画、状态图标显示
- 适用: 智能助手场景,提供更生动的人机交互体验
- 类:
emote::EmoteDisplay
⚠️ 重要: 选择此风格需要额外配置自定义资源文件:
Xiaozhi Assistant→Flash Assets→ 选择Flash Custom AssetsXiaozhi Assistant→Custom Assets File→ 填入资源文件地址:https://dl.espressif.com/AE/wn9_nihaoxiaozhi_tts-font_puhui_common_20_4-echoear.bin
默认消息风格 (Enable default message style)
- 配置选项:
USE_DEFAULT_MESSAGE_STYLE(默认) - 特点: 使用标准的消息显示界面
- 功能: 传统的文本和图标显示界面
- 适用: 标准的对话场景
- 类:
SpiLcdDisplay
微信消息风格 (Enable WeChat Message Style)
- 配置选项:
USE_WECHAT_MESSAGE_STYLE - 特点: 仿微信聊天界面风格
- 功能: 类似微信的消息气泡显示
- 适用: 喜欢微信风格的用户
- 类:
SpiLcdDisplay
说明: EchoEar 使用16MB Flash,需要使用专门的分区表配置来合理分配存储空间给应用程序、OTA更新、资源文件等。
按 S 保存,按 Q 退出。
编译
idf.py build
烧录
将 EchoEar 连接至电脑,注意打开电源,并运行:
idf.py flash