关于
Music Baby

Music Baby 是运行在 FoloToy AI Passport(ESP32-C3、240 x 320 屏幕、三实体键)上的独立音乐玩具固件。本目录是该产品后续开发、构建和发布的唯一项目根。
当前功能
- 三首独立歌曲:
TWINKLE STAR、RAIN RAIN、ABC SONG - 菜单背景音乐和按键反馈音
- 雨滴计数从
0到10饱和,UP增加、DOWN减少 - 音量
20%-90%、亮度30%-100%,通过 NVS 持久化 - CW2017 电量显示,芯片读数无效时按电压估算,外设缺失时安全降级
OK短按播放/暂停,播放器内OK长按返回菜单
产品范围不包含 PLAY ALL、徽章、贴纸或歌曲完成奖励。
项目结构
main/ 应用入口、UI、状态和合成音频
components/bsp/ 显示、按键、音频、电池和共享 I2C
docs/ 硬件开发与故障说明
tools/ 发布辅助脚本
release/ 可刷写整包与校验文件
partitions.csv 8 MB Flash 分区表
sdkconfig.defaults 可复现 ESP-IDF 配置
构建
使用 ESP-IDF 5.5.3:
source "$HOME/esp/esp-idf-v5.5.3/export.sh"
export PATH="$HOME/.local/cmake/CMake.app/Contents/bin:$PATH"
idf.py set-target esp32c3
idf.py build size
首次构建会下载 components/bsp/idf_component.yml 中声明的依赖。不要提交 build/、managed_components/ 或本机生成的 sdkconfig。
刷机
连接设备并确认端口后:
idf.py -p /dev/cu.usbmodem1101 flash monitor
端口名称必须以当前机器实际检测结果为准。发布整包可从地址 0x0 写入,但应优先使用本项目重新生成并校验过的版本。
真机验收
- 启动日志出现
Music Baby starting和Ready: audio=1,无重启、assert 或 watchdog。 - 菜单只有三首歌和
SETTINGS,没有PLAY ALL或奖励入口。 - 三首歌可分别进入、播放、暂停并长按
OK返回。 - 雨滴从
0开始,在0和10保持饱和,每次UP/DOWN都有视觉和声音反馈。 - 音量、亮度修改后重启仍保留;电池不可用时 UI 不崩溃。
交付时分别记录 Build、Host tests、Device tests 和 Unverified。
特性
▸内置《小星星》《Rain Rain Go Away》《ABC Song》
▸实体键播放/暂停并触发星星动画等互动效果
▸菜单背景音乐与按键反馈音
▸音量/亮度设置通过 NVS 持久化保存
一键安装
通过 Web Serial API 在浏览器内直接刷写固件到你的 AI Passport
查看 GitHub 仓库 ↗需要 Chrome/Edge 89+ · 不支持时可查看手动教程
手动安装教程 ↗项目信息
仓库https://github.com/aaronluyang/music-baby
Star0
固件版本未发布
兼容硬件AI Passport v1
