基于 ESP32 单片机的桌面 AI 语音终端,说出唤醒词就能和大模型对话、控制智能家居、管理日程,让 AI 从屏幕里走出来,变成桌面上随时待命的实体助手。

【标签】 按所选赛道选择话题标签:生活娱乐/学习工作/社会服务/硬件交互必须四选一;参加附加赛题的还可加选 社会公益 标签。(需要跟报名通过的赛道保持一致)

【标题】 报名赛道 + Demo 名称
(示例:【生活娱乐赛道】+XXXX

【正文】 至少包含以下 4 个部分,可以增加额外的部分(比如自我介绍、经验总结、踩坑复盘等)

0. 先和大家打个招呼吧 :waving_hand:

  • 你是谁: 用一句话介绍你的职业 / 身份(如:一名小学老师 / 大三学生 / 独立开发者 / 全职妈妈 / 产品经理……);

  • 你是怎么用 TRAE 把 Demo 做出来的: 没有技术背景也没关系 —— 说说你和 TRAE「配合」的真实感受。比如:是怎么把脑子里的想法一句句讲给它听的?哪一步让你觉得「原来这么简单」?它帮你跨过了哪个原本以为搞不定的坎?

  • (我们相信,每个作品背后都有一个真实的人。这段不计入评分,但真诚的分享,会让你的作品更有温度、也更容易被看到 :sparkles:

  1. Demo 简介
    是什么: 一款基于 ESP32 单片机的桌面 AI 语音终端设备——说出唤醒词就能和大模型对话、查询信息、控制智能家居、管理日程,让 AI 从手机屏幕里走出来,变成桌面上随时待命的实体助手。

面向谁:

程序员 / 极客爱好者——想要一个随时能提问的桌面 AI 伴侣
办公人群——双手忙碌时通过语音快速查询信息、设提醒
智能家居用户——用语音控制家里的智能设备
老人/儿童——更自然的语音交互方式,降低数字门槛
主要功能:

功能 说明
:studio_microphone: 语音唤醒对话 说出唤醒词"小助手"即可激活,免手操作
:brain: AI 智能问答 接入大模型,支持知识问答、闲聊、翻译等
:house: 智能家居控制 语音控制灯光、空调、窗帘等智能设备
:date: 日程提醒 语音设置提醒,到点语音播报
:thermometer: 环境监测 实时显示温度、湿度、空气质量
:musical_note: 音乐播放 语音点歌,播放网络音乐
产品实物图:

(此处请替换为你的硬件实物照片)

  1. Demo 创作思路
    灵感来源
    我平时写代码的时候,经常需要查资料、算东西、设番茄钟,但每次都要拿起手机或切到浏览器,打断思路。我就在想:能不能有一个放在桌面上的小设备,说句话就能搞定这些事?

市面上的智能音箱(小爱、天猫精灵)虽然能语音交互,但功能封闭,不能自己接大模型、不能自定义技能,开发者想折腾很难。而我自己有单片机和编程基础,就想做一个完全开源、可自定义、能跑大模型的桌面语音助手。

想解决的问题
现有 AI 助手交互成本高——手机要解锁、电脑要切窗,打断工作流
智能音箱功能封闭——不能自己接大模型、不能自定义开发
开发者缺少好玩的硬件 AI 项目——想做 AI + 硬件,但不知道从哪下手
AI 缺乏物理存在感——屏幕里的 AI 总感觉"虚",实体设备更有温度
为什么做这个方向
技能匹配:我有单片机设计和编程基础,硬件 + 软件都能搞定
差异化竞争:纯软件 AI 应用很多,但真正做硬件实体的少,容易脱颖而出
实用价值高:自己每天都能用,不是为了比赛而做的玩具
可扩展性强:一个底座可以不断加功能(传感器、执行器、更多 AI 能力)
社区价值:可以开源出去,让更多爱好者一起玩
3. Demo 体验地址
硬件交互赛道作品,提供演示视频:

:television: B 站演示视频:(请上传后替换为你的视频链接)

视频内容包含:设备实物展示 → 唤醒词激活 → 语音问答演示 → 智能家居控制 → 环境监测显示 → 代码架构讲解

:package: 项目开源仓库:(请上传后替换为你的 GitHub/Gitee 链接)

包含完整的硬件原理图、PCB 图、固件源码、上位机代码,可直接复刻

  1. TRAE 实践过程
    整个项目从创意到 Demo 落地,全程使用 TRAE Work 进行开发辅助。TRAE 帮我大大加速了从 0 到 1 的过程。

阶段一:创意立项与赛道选择
用 TRAE 分析了 5 个大赛赛道,结合我的兴趣(单片机设计)和技能(编程 + 硬件),最终选定硬件交互赛道,并确定了"AI 语音交互桌面助手"这个方向。

关键产出:

赛道匹配度分析报告
3 个候选方向对比
最终立项方案
Session ID:(请替换为你对应对话的 Session ID)

阶段二:硬件方案设计
用 TRAE 帮我做硬件方案选型和电路设计:

主控选型:对比 ESP32 / ESP32-S3 / RP2040 等方案,最终选 ESP32-S3(WiFi+蓝牙+足够算力+价格低)
麦克风方案:对比 I2S 数字麦 vs PDM 麦 vs 模拟麦,选 INMP441 I2S 数字麦克风
音频输出:选 MAX98357 I2S 功放 + 小喇叭
显示屏:选 1.3 寸 OLED 或 2.4 寸 TFT 彩屏
传感器:SHT30 温湿度 + SGP30 空气质量
TRAE 帮我做的事:

生成硬件 BOM 表和选型对比
帮我 review 电路原理图,指出潜在问题
生成 PCB 布局建议
写各个模块的驱动代码
Session ID:(请替换为你对应对话的 Session ID)

阶段三:固件开发
用 TRAE 写 ESP32 固件代码,包括:

唤醒词检测(使用开源的唤醒词引擎)
音频采集与播放(I2S 驱动)
WiFi 连接与 MQTT 通信
大模型 API 对接
显示界面开发
传感器数据采集
TRAE 帮我做的事:

搭建 Arduino / PlatformIO 项目框架
逐个模块写驱动代码和示例
调试音频流处理逻辑
优化内存占用(ESP32 内存紧张)
排查编译错误和运行时 bug
Session ID:(请替换为你对应对话的 Session ID)

阶段四:上位机与 AI 能力对接
因为 ESP32 本身算力有限,大模型推理在云端/本地电脑上跑,ESP32 负责音频采集和播放。

用 TRAE 写了一个 Python 中转服务
对接了语音识别(ASR)和语音合成(TTS)API
接入大模型对话能力
实现了智能家居控制接口
Session ID:(请替换为你对应对话的 Session ID)

开发关键步骤截图
(此处请替换为不少于 3 张实际开发过程截图,例如:)

TRAE 生成硬件 BOM 表的对话截图
TRAE 帮写 ESP32 固件代码的截图
设备首次点亮成功的照片
语音对话调试过程的截图
最终成品展示图
5. 技术方案
硬件架构

Plain Text

1
2
3
4
5
6
7
8
9
ESP32-S3 主控
├── I2S 麦克风 (INMP441) — 采集语音
├── I2S 功放 (MAX98357) + 喇叭 — 播放语音
├── TFT 显示屏 (240x320) — 显示状态/天气/时间
├── 温湿度传感器 (SHT30) — 环境监测
├── 空气质量传感器 (SGP30) — eCO2 / TVOC
├── 按键 & 旋钮 — 手动控制
├── WS2812 RGB 灯环 — 状态指示(唤醒/思考/应答)
└── USB-C — 供电 + 烧录
软件架构

Plain Text

1
2
3
4
5
6
7
8
9
10
11
┌─────────────────────────────────────────────────┐
│ ESP32 端(固件) │
│ 唤醒词检测 → 录音 → 上传音频 → 接收音频流播放 │
│ 传感器采集 → 显示界面 → 状态灯控制 │
└──────────────────────┬──────────────────────────┘
│ WiFi / WebSocket
┌──────────────────────▼──────────────────────────┐
│ 中转服务(Python / 云端) │
│ ASR 语音识别 → 大模型对话 → TTS 语音合成 │
│ 智能家居控制 → 日程管理 → 天气查询 │
└─────────────────────────────────────────────────┘
技术栈
层级 技术
硬件 ESP32-S3、I2S 音频、传感器
固件 Arduino / PlatformIO、C++
中转服务 Python、FastAPI、WebSocket
AI 能力 大模型 API、ASR、TTS
显示 LVGL 图形库
6. 后续规划
V1.1:加入离线语音识别,断网也能用基础功能
V1.2:支持多唤醒词,不同唤醒词触发不同技能
V2.0:换更强的主控(如 RP2350 或全志 D1),支持端侧小模型
V2.1:加入摄像头,支持视觉对话
开源:把所有设计文件和代码开源,让更多人参与

5. 对应的报名审核通过的帖子链接

ID:1417727455802744:d1ffda0f7b277460a608772fc0db935c_6a478cfa16b6a456d0f6bd75.6a4f6279fe343dde4087893a.6a4f6279fe343dde40878938:TRAE Work CN.0.1.30.no_sid.no_ppe.T(2026/7/9 16:57:29)

这个想法很前卫,如果说这个智能助手可以链接上codex,去操控codex干活,那我岂不是可以躺在床上办公了,哈哈哈哈 :rofl: