站内搜索
发作品签到
AI智能相框
专业版

AI智能相框

简介

AI智能语音相框,集成小智AI。以简单易用为核心设计理念,通过显示、对话、提醒等功能,帮助老年人便捷获取信息、维系亲情互动,缓解孤独感,提升生活安全感!

简介:AI智能语音相框,集成小智AI。以简单易用为核心设计理念,通过显示、对话、提醒等功能,帮助老年人便捷获取信息、维系亲情互动,缓解孤独感,提升生活安全感!
星火计划2025
复刻成本:200

开源协议

GPL 3.0

创建时间:2025-10-09 15:30:22更新时间:2025-12-31 11:46:20

描述

AI小智电子相册·PhotoTVbox

> 小智电子相册基于ESP32S3在小智AI项目基础上二开后制作的电子相册功能。
> 具有IPS高清集成触摸一体的屏幕,双麦克风采集与音频输出
> 配套了云端服务器、EMQX、微信小程序客户端、Web客户端的周边的软件设施

演示视频bilibili: https://www.bilibili.com/video/BV1g3q4BnEoX/

1. 需求

  1. AI对话功能 (集成小智AI)
  2. 电子相册显示功能
    • 支持高清显示家庭照片
    • 显示时间、日期
    • 实时天气(温度、天气状况)及所在城市
    • 每日一言
    • 室内实时温湿度
  3. 远程交互
    • 照片同步
    • 事件提醒(作息,用药、纪念日等)
    • 文字留言
    • 语音播报提醒
  4. 客户端操作中心
    • 支持微信小程序端
    • 支持Web在线页面端

2. 交互与设计

UI图纸
https://js.design/f/lVUXfm?p=F4iOLngaBL&mode=design 邀请您查看「AI智能相册」,点击链接开启协作

image.png

3. 硬件技术实现方案

  1. 主控采用ESP32-S3 8MB PSRAM 16MB FLASH
  2. 具备锂电池充电和路径管理基于BQ24075RGTR 设计最大可5W充电功率
  3. 支持长按开关机与短按的系统功能:EC190708-3-29CE-EBD7
  4. 电池电量检测,使用ADC分压方案
  5. 双麦克风采集与音频输出:ES7210+ES8311+NS4150B的组合
  6. 支持室内温湿度检测:SHT40-AD1B-R2
  7. SD卡作为存储介质
  8. 3.5寸IPS带触摸显示屏

3.1.1 专用开关机芯片与BQ24075RGTR的配合

EC190708-3-29CE-EBD7是一款长按开关机芯片
其中默认上电不工作输出为低电平,长按开机输出的高电平则是输入的VDD电压。

BQ24075RGTR 具有电源路径的独立型单芯 1.5A 线性电池充电器,集成动态电源路径管理 (DPPM) 功能可同时独立进行系统供电和对电池充电

image.png

image.png
在电路设计中,将BQ24075RGTR的SYSOFF引脚给默认上拉默认断开电源输入的路径,配合EC190708-3-29CE-EBD7开关机芯片,当开机的时候输出高电平导通NPN数字晶体管将其进行下拉,电源路径被打通则后级DCDC被上电开始输出电压整个电路开始工作。

从图中看到另外左边还有一个NMOS管的存在,当进行充电的时候需要将SYSOFF拉低否则只能外部电源只会通过OUT输出,无法给电池充电,所以这个NMOS的作用就是强行下拉,不过这样设计会导致充电则自动开机,若是不想充电则自动开机,请你阅读完本讲解后将EC190708-3-29CE-EBD7的OUT引脚的输出连接到后级的DCDC的EN引脚进行控制,这样当VBUS充电的时候也不至于ESP32会开机。

⚠️另外NTC电阻和10K的贴片电阻需要二选一,不可同时焊接。

image.png

3.1.2 I2S音频采集与输出

方案采用立创实战派同款方案,软件也可高度适配
https://wiki.lckfb.com/zh-hans/szpi-esp32s3/open-source-hardware/

3.1.3 输入与交互

在交互上,使用3.5寸TFT液晶屏IPS全视角显示屏带电容触摸购买链接¥49.00: 点击跳转

SIQ-02FVS3一款旋转编码器,可按压

长按开关机,短按进入设置,滑动可调节音量大小。
其中编码器的按键引脚与EC190708-3-29CE-EBD7开关机芯片相连,由于默认开关机芯片输入的高电平电压是输入电压,所以默认此引脚的开机后的空闲电压也就是开关机芯片的输入电压。

软件设计需要可以通过屏幕进行实现关机操作,并且还需要接收按键的事件,这就需要ESP32的其中一个IO口与此按键相连。其中ESP32安全IO电压范围最好给到3.3V,但是按键被开关机给上拉到VBat,由于我们需要双向控制,所以需要设计一个电平转换器。
于是这就是下面这个电路的实际作用,这也是一个很常见的电平转换器电路!

image.png

4. 软件实现方案

> 该项目基于 ESP-IDF 框架开发,主要运行在 ESP32-S3 芯片上。核心功能包括音频处理、AI 交互、电子相册展示等。

4.1 SDL Simulator 代码架构

SDL_Simulator 目录包含了一个基于 SDL2 的 PC 端模拟器,用于在 PC 上开发和调试 LVGL UI 界面,无需频繁烧录固件。

  • 跨平台开发: 使用 SDL2 库模拟显示屏和输入设备(鼠标模拟触摸)。
  • 代码复用: 核心 UI 代码(main 目录)与 ESP32 固件完全共用。
  • 模拟环境: 提供了简化的 HAL 层(src/hal)和文件系统模拟(src/lv_localfs.cc等等..)。

目录结构说明

  • main/: 核心 UI 代码,包含屏幕逻辑 (screen_*.cc) 和自定义控件 (widget_*.cc)。此目录下的代码会被同步到 ESP32 项目中。
  • src/: 模拟器专用代码,包含 main.cc (PC端入口)、HAL 模拟实现、字体文件等。
  • access/: 模拟的文件系统根目录,存放运行时所需的资源文件。
  • bin/: 编译产物存放目录。

代码同步脚本机制 (sync_esp_code.py)
> 为了保证 Simulator 开发的代码能无缝应用到 ESP32 固件中,项目使用 sync_esp_code.py 脚本进行单向同步

该脚本主要执行以下操作:

  1. 清理目标目录: 删除 ESP32 项目中 main/photo/widget 目录下的所有文件。
  2. 复制源文件: 将 Simulator 的 main/*.c/cc/cpp 复制到 main/photo/widget
  3. 复制头文件: 将 Simulator 的 main/inc/*.h 复制到 main/photo/widget

image.png

Simulator 的 CMakeLists.txt 巧妙地复用了 ESP-IDF 项目中的组件,特别是 LVGL 库。
Simulator 并没有单独维护一份 LVGL 代码,而是直接引用了 ESP-IDF 项目中 managed_components 目录下的 LVGL。

image.png

4.2 IDF工程改造

main\photo是增强改造AI相册的核心代码文件夹。主要提供“电子相册业务”在 ESP32 侧的业务编排、网络/存储/硬件适配层,UI 细节由 widget 目录承接。
main\boards\syswa-photo-lcd是小智项目的编译中的板级配置文件
监听小智的Idle事件进行对应的处理,例如跳转到电子相册的页面,或者调整到小智页面进行对话,和首次开机的初始化。下面是描述了首次开机触发idle事件对系统数据的初始化流程

image.png

4.3 云服务器

ServerTool\photo_http文件夹使用了Python基于构建的Flask构建的服务端
photo_http 是相册项目的“配套服务端”,对外提供两类能力:

  1. HTTP API(Flask):图片上传→预处理→转换为 LVGL BIN、文件下载、图片列表、设备在线状态、天气查询、提醒(remid)管理、TTS。
  2. MQTT 发布端:在图片转换完成、每日一句、时间刷新、提醒触发等场景向 MQTT Broker 发布消息,供设备侧订阅处理。

服务器核心是对图库进行管理,设计了账户隔离,不同的设备拥有唯一的设备ID用户绑定设备ID后则拥有独立的Space空间。
在用户进行图片上传后的流程如下:

image.png
用户可使用:ServerTool\photo_http\Dockerfile构建Docker镜像进行服务端的部署

4.4 微信小程序和Web端

两个端是通用代码,使用Uni-app打包不同平台的产物
在路径ServerTool\photo_ai_w

5. 外壳设计

> 共设计两款版本

组装视屏请转至B站: https://www.bilibili.com/video/BV1g3q4BnEoX/

image.png

6. 实物展示

7. 开源

软件全套开源地址:https://github.com/ccy-studio/xiaozhi-ai-photo-tvbox
开源技术交流群:676436122、1034434540
编译好的烧录文件可在附件中下载,如果你想私有化部署请下载源码修改服务器IP地址后重新编译!

目前由于是在线版本需要服务器运行的支持,由于微信小程序无法上架所以提供了在线Web版本的。
服务器说不定什么时候会被我关闭掉,如果你发现设备无法使用,链接无法打开了那就是我关闭了测试服务器。

开发环境服务后台Web管理手机扫码打开:

image.png

设计图

未生成预览图,请在编辑器重新保存一次

BOM

暂无BOM

3D模型

序号文件名称下载次数
1
3D壳体-上.STL
96
2
3D壳体-下.STL
61
3
3D支架.STL
54

附件

序号文件名称下载次数
1
merged-binary.bin
92
克隆工程
添加到专辑
0
0
分享
侵权投诉
知识产权声明&复刻说明

本项目为开源硬件项目,其相关的知识产权归创作者所有。创作者在本平台上传该硬件项目仅供平台用户用于学习交流及研究,不包括任何商业性使用,请勿用于商业售卖或其他盈利性的用途;如您认为本项目涉嫌侵犯了您的相关权益,请点击上方“侵权投诉”按钮,我们将按照嘉立创《侵权投诉与申诉规则》进行处理。

请在进行项目复刻时自行验证电路的可行性,并自行辨别该项目是否对您适用。您对复刻项目的任何后果负责,无论何种情况,本平台将不对您在复刻项目时,遇到的任何因开源项目电路设计问题所导致的直接、间接等损害负责。

底部导航