ESP-Brookesia 编程指南
概述
ESP-Brookesia 是一个面向 AIoT 设备的人机交互开发框架,旨在简化应用程序开发和 AI 能力集成的流程。它以 ESP-IDF 为基础,通过组件化架构为开发者提供从硬件抽象、系统服务到 AI 智能体的全栈支持,加速 HMI 与 AI 应用产品的开发与上市。
备注
“Brookesia” 是一种变色龙属的物种,擅长于伪装和适应环境,这与 ESP-Brookesia 的目标紧密相关。该框架旨在提供一种灵活、可扩展的解决方案,能够适应各种不同的硬件设备和应用需求,就像 Brookesia 变色龙那样,具有高度的适应性和灵活性。
ESP-Brookesia 的主要特性包括:
原生 ESP-IDF 支持:基于 C/C++ 开发,深度集成 ESP-IDF 开发体系与 ESP Registry 组件注册表,充分利用乐鑫开源组件生态。
可扩展的硬件抽象:定义统一的硬件接口(音频、显示、触摸、存储等),并提供板级适配层,便于快速移植到不同硬件平台。
丰富的系统服务:提供 Wi-Fi 连接、音视频处理等开箱即用的系统级服务,采用 Manager + Helper 架构实现解耦与扩展,为 Agent CLI 提供支持。
多 LLM 后端集成:内置对 OpenAI、Coze、小智等主流 AI 平台的适配,提供统一的智能体管理与生命周期控制。
MCP 协议支持:通过 Function Calling / MCP 协议将设备服务能力暴露给大语言模型,实现 LLM 与系统服务的统一通信。
AI 表达能力:支持表情集、动画集等可视化 AI 表达,为拟人化交互提供丰富的视觉反馈。
功能架构
ESP-Brookesia 采用分层架构设计,自底向上由 环境与依赖、服务与框架 以及 应用层 三个层级组成,如下图所示:
环境与依赖
框架的运行基础。ESP-IDF 开发环境提供编译工具链、实时操作系统及外设驱动等底层支撑;ESP Registry 组件注册表统一管理框架各组件及其第三方依赖的分发与版本迭代。
服务与框架
框架的核心层,向下对接环境与依赖,向上为应用程序和 AI 智能体提供标准化的服务接口,涵盖基础工具、硬件抽象、系统服务、AI 智能体及表达等模块。
Utils 工具集:为上层模块提供通用基础能力。其中
General Utils包含日志系统、错误检查、状态机、任务调度器、插件管理、内存/线程/时间分析器等核心工具;MCP Utils作为 ESP-Brookesia 服务体系与 MCP 引擎之间的桥梁,将已注册的服务函数暴露为标准 MCP 工具,实现大语言模型对设备能力的调用。HAL 硬件抽象:定义统一的硬件访问接口并提供板级适配实现。其中
Interface定义音频播放/录制、显示面板/触摸、状态 LED、存储文件系统等标准化硬件接口;Adaptor针对具体开发板提供接口实现,完成硬件资源的初始化与映射。Boards提供板级 YAML 配置,描述各开发板的外设拓扑、引脚与驱动参数。General Service 通用服务:提供系统级基础服务,包括
Wi-Fi连接管理、Audio音频采集与播放、Video视频编解码、NVS非易失性存储、SNTP网络时间同步,以及Custom自定义服务扩展机制。所有服务均基于 Manager + Helper 架构,支持本地调用与 RPC 远程通信。AI Agent 智能体框架:提供 AI 智能体的统一管理框架,内置对
Coze、OpenAI、小智等主流 AI 平台的适配。通过Function Calling / MCP协议实现大语言模型与系统服务的双向通信,使 LLM 能够感知和调用设备的各项能力。AI Expression 智能体表达:提供 AI 交互场景下的可视化表达能力,包括
Emote表情集与动画控制,为拟人化交互提供丰富的视觉反馈。System 系统框架 (规划中):面向不同产品形态(移动设备、音箱、机器人等)提供 GUI、系统管理与应用框架支持。
Runtime 运行时 (规划中):提供 WebAssembly、Python、Lua 等脚本运行时支持,实现应用的动态加载与执行。
应用层
基于上述各层构建的最终产品与工程:
General Projects 通用工程:面向产品的通用工程模板,集成框架各组件,可直接用于产品开发。System Apps 系统应用(规划中):面向产品的系统级应用集合,包括设置、AI 助手、应用商店等,可按需裁剪和集成。





