帧影(FrameFilm)✨ 一款超有氛围感的彩色电子纸冰箱贴!📺
主打胶片复古质感,把家的仪式感拉满~轻轻一贴,定格生活每一帧的美好瞬间。💫
“帧影”寓意”一帧一影,定格时光”,英文名FrameFilm结合”帧”与”胶片”,满满的复古情怀 🎞️
| 组件 | 说明 |
|---|---|
film_sys |
系统初始化、日志、配置管理 |
film_service |
核心业务服务(BLE通信、文件管理、照片播放、参数存储) |
film_hal |
硬件抽象层(电子纸、电池、LED、编码器、存储) |
| 参数 | 规格 |
|---|---|
| 主控芯片 | ESP32-S3 WROOM N16R8 |
| 显示屏 | 彩色电子纸 3.6” 600×400 (WFT驱动) |
| 存储 | TF卡 最大32GB 或 内置SDnand |
| 通信 | 蓝牙 BLE 4.2 |
| 交互 | 旋转编码器(带按键) |
| 电池 | 锂电池 304040规格 1.5mm插头 |
| 尺寸 | 约 92 × 60 × 7 mm |
| 安装方式 | 背部磁吸 磁铁 2x12mm-1mm 1x15mm-2mm |
| 参数 | 规格 |
|---|---|
| 主控芯片 | ESP32-S3 mini N4R2 |
| 显示屏 | 彩色电子纸 3.68” 792×528 (SE0368-C驱动) |
| 存储 | 内置SDnand |
| 通信 | 蓝牙 BLE 4.2 / WiFi |
| 交互 | 三按键 |
| 电池 | 锂电池 244147规格 |
| 充电 | 支持无线充电(兼容 MagSafe 充电器) |
| 尺寸 | 约 90 × 59 × 5 mm |
| 安装方式 | 背部磁吸 magasafe磁环 |
硬件设计已在立创开源硬件平台开源:
👉 立创开源硬件平台 - FrameFilm
👉 立创开源硬件平台 - FrameFilmPro
👉 立创开源硬件平台 - FrameFilm星火版
👉 立创开源硬件平台 - FrameFilm通行证
👉 立创开源硬件平台 - FrameFilmDock
💬 复刻交流 QQ 群:1103626779(欢迎入群交流制作经验)
FrameFilm/
├── assets/ # 资源文件
│ └── pic/ # 产品图片和渲染图
│
├── docs/ # 文档资料
│ ├── blecmd/ # BLE 通信协议文档
│ ├── datasheet/ # 芯片和模块数据手册
│ ├── film/ # film 文件格式规范
│ ├── filmhub/ # 云端相框服务设计文档
│ ├── hardware/ # 硬件规格说明文档
│ ├── knowledge/ # AI 知识库(架构/规范/命令速查)
│ └── wifi/ # WiFi 功能说明(Pro 版)
│
├── firmware/ # 设备固件 (ESP-IDF)
│ └── frame_film/
│ ├── components/
│ │ ├── film_service/ # 服务层
│ │ ├── film_sys/ # 系统层
│ │ └── film_hal/ # 硬件抽象层
│ ├── main/ # 主程序
│ └── sdkconfig_* # 各机型配置 (std/pro/max)
│
├── hardware/ # 硬件设计
│ ├── pcb/ # PCB 电路原理图
│ └── model/ # 外壳 3D 模型
│
├── server/ # 云端服务
│ ├── backend/ # 后端 API 服务 (FastAPI)
│ └── web/ # Web 管理前端
│
├── tools/ # 开发工具
│ ├── convert/ # 照片转换工具
│ ├── ForFilm/ # Web 端相框管理工具
│ └── wechart/ # 微信小程序
│
├── AGENTS.md # AI 开发指南
├── README.md # 项目说明文档
└── LICENSE # 许可证
固件为多机型统一源码,编译前需先完成机型配置(替换 sdkconfig + 修改设备类型宏),再编译烧录。
sdkconfig:将 firmware/frame_film/sdkconfig_<机型> 复制为 sdkconfigfirmware/frame_film/components/film_sys/inc/sys_cfg.h,将对应机型宏置 1(三选一)firmware/frame_film/components/film_hal/inc/hal_epd.h,在对应机型分支内将目标屏幕的 EPD_SELECT_E6_* 置 1、其余置 0| 机型 | 替换用的 sdkconfig | sys_cfg.h 宏 | 默认屏幕 |
|---|---|---|---|
| 基础版 | sdkconfig_std |
FRAMEFILM_STD |
3.6” 600×400 |
| Pro 版 | sdkconfig_pro |
FRAMEFILM_PRO |
3.68” 792×528 |
| Max 版 | sdkconfig_max |
FRAMEFILM_MAX |
7.09” 1200×1600 双面板 |
可选屏幕(hal_epd.h 的 EPD_SELECT_E6_* 宏):
| 屏幕 | 分辨率 | 面板 ID | 宏 |
|---|---|---|---|
| 3.68” | 792×528 | 0x01 | EPD_SELECT_E6_3_68_792_528 |
| 3.70” | 720×480 | 0x02 | EPD_SELECT_E6_3_70_720_480 |
| 3.6” | 600×400 | 0x03 | EPD_SELECT_E6_3_60_600_400 |
| 1.54” | 240×240 | 0x04 | EPD_SELECT_E6_1_54_240_240 |
| 7.09” 双面板 | 1200×1600 | 0x05 | EPD_SELECT_E6_7_09_1600_1200 |
cd firmware/frame_film
cp sdkconfig_std sdkconfig # 示例:基础版;Pro/Max 版同理
idf.py build
idf.py flash monitor
项目已包含 .vscode/settings.json(IDF 路径已配置),按以下步骤即可编译烧录:
firmware/frame_filmsdkconfig + 修改 sys_cfg.h 机型宏)Ctrl+E 然后 BCtrl+E 然后 FCtrl+E 然后 M(Ctrl+] 退出)提示:首次构建时间较长属正常;若更换串口/芯片,在底部状态栏重新选择即可。
ForFilm Web 工具,支持以下功能:
在线工具(GitHub Pages): 👉 FrameFilm Web 工具
FrameFilm 微信小程序,方便在手机端管理和传输照片:
小程序码,扫码即可体验。

局域网部署的云端相框服务,为设备提供 WiFi 内容推送、模板渲染与远程管理能力:
技术栈: FastAPI + SQLite + Vue 3,单机局域网部署。
server/backend/ | Web 前端:server/web/详细的开发文档请参考各模块 README:
技术文档目录:
本项目(FrameFilm/帧影)为开源学习与兴趣制作项目,所提供的一切源码、硬件设计、文档及资料均按「现状」提供,仅供学习、研究与非商业用途参考。
使用本项目即视为已阅读并同意上述条款。
本项目基于 GNU General Public License v3.0 (GPLv3) 开源。