









FoloToy AI Passport 是 TRAE AI 创造力大赛线下活动发放的纪念勋章,硬件配置:ESP32‑C3 主控、240×320 彩屏、ES8311 音频芯片、自带扬声器与锂电池。官方固件主打「AI 伙伴」,我将其重制固件,改造为桌面网络音乐盒项目:TY MUSIC。

开机自动连接 WiFi,拉取网易云公开歌单曲目循环播放。整机仅三颗按键完成全部交互:上/下键切歌,OK 单击暂停播放,长按唤起菜单。
屏幕顶栏展示:TY MUSIC 标识、实时时钟、WiFi 信号、电池电量。 播放界面:频道号 CH 01/21、大号歌名,一排曲目进度格子,当前播放曲目格子高亮红色。
无需手机 App:设备启动后会广播热点 TYMusic‑XXXX,手机连接该热点,访问网页 192.168.4.1。 在配置网页搜索家庭 WiFi、填写密码、填入网易云歌单 ID,保存后设备自动重启,直接开始播放。
基于开源项目 FoloToy/ai‑passport,ESP‑IDF 5.5 工程,硬件驱动直接复用官方资料,工程分为两层:
音频方案:基于 Meting API 获取歌单列表,解析音频直链;HTTP 流式接收音频,Helix MP3 软件解码,通过 I2S 输出至 ES8311 播放。无外置存储、不缓存音频,边拉边播。
ESP32‑C3 仅有 400KB RAM,同时运行 TLS、JSON 解析、LVGL,内存资源十分紧张:
视觉采用复古电台风格:深色背景、琥珀色高亮,大字号歌名,曲目格子模拟调频刻度。屏幕分辨率仅 240×320,字号、间距全部像素级微调。
开发采用模拟器先行策略:先实现 1:1 屏幕尺寸的 HTML 模拟器,界面布局、配色、按键逻辑全部在浏览器调试完成,再移植为 LVGL 代码烧录。减少反复烧录、反复配网带来的调试成本。
两个关键移植难点:
开机 10 秒内完成 WiFi 连接并自动播放;顶栏时钟精确到分钟,电量显示准确。 按键逻辑完整:上下切歌、OK 暂停、长按唤起菜单;更换歌单只需要在配置网页修改歌单 ID。 硬件零改动,几乎重写全部上层固件,把一枚大赛纪念勋章变成桌面网络电台。
设备 USB‑C 连接电脑,Chrome / Edge 浏览器打开: https://ai‑passport.folotoy.cn/plays/184 点击「连接设备」,选择对应串口,网页直接烧录固件,无需额外安装工具。
# 1. 擦除 Flash(建议执行,清除旧固件残留配置)
esptool.py --chip esp32c3 --port COM3 --baud 115200 erase_flash
# 2. 0x0 地址烧录完整固件包
esptool.py --chip esp32c3 --port COM3 --baud 115200 write_flash 0x0 FoloToy-AI-Passport-full-0x0.bin
COM3 修改为你电脑实际设备端口;也可使用乐鑫 flash_download_tool 图形工具。
⚠️ 注意:整包烧录会清空 NVS,WiFi 配置丢失,烧完设备进入配网模式,需要重新配置网络。 直接烧录完整包 FoloToy‑AI‑Passport‑full‑0x0.bin;
| 页面 | 上键 | 下键 | OK 单击 | OK 长按 |
|---|---|---|---|---|
| 播放页 | 上一曲 | 下一曲 | 暂停/继续 | 打开菜单 |
| 菜单页 | 上移 | 下移 | 进入选项 | 返回播放页 |
| 曲目列表 | 上移 | 下移 | 播放选中曲目 | 返回菜单 |
| 音量/亮度调节 | +5 | -5 | 保存并返回 | 返回菜单 |
| 错误页面 | — | — | 重试 | 重新进入配网 |
此内容由惯性聚合(RSS阅读器)自动聚合整理,仅供阅读参考。 原文来自 — 版权归原作者所有。