|
|
6b166f4463
|
feat: add EAF RTC and badge dual mode
1. 固定 RTC 数字人链路使用 ai_chat_ui_eaf,双模式开启后不再回退 LVGL/GIF 旧 RTC UI。
2. 保留电子吧唧 LVGL/SquareLine UI,只在电子吧唧运行模式启动 LVGL,避免与 EAF 抢同一 LCD flush。
3. 拆分 dzbj_hw_display_init 与 dzbj_display_init,AI/配网只初始化 LCD Touch 硬件,电子吧唧再启动 LVGL UI。
4. 配网模式使用 EAF 最小显示栈显示中文提示,请使用APP 蓝牙配网,不加载数字人资源和动画。
5. 开启 CONFIG_BAJI_BADGE_MODE,形成 RTC 数字人对话与电子吧唧图片显示双模式固件。
6. 电子吧唧图片扫描跳过 Background_360x360.jpg,避免 RTC 数字人背景进入吧唧图片列表。
7. BLE 图传在 BLE 5.0 关闭时跳过 2M PHY API,保持 legacy 1M PHY 兼容配网和图传。
8. sdkconfig.defaults 同步 BLE 内存优化,限制连接数和缓存,保留 GATT 与扫描能力。
9. 移除 ota.cc 编译和 app_update 直接依赖,双模式固件不创建 OTA 检查任务。
10. Ota 接口改为禁用 stub,保留接口兼容但不执行升级和版本检查。
11. Board 上报 JSON 的 OTA label 改为 disabled,避免依赖 OTA 运行分区。
12. partitions.csv 改为 factory 单 app 分区,扩大 app 到 0x900000,并扩大 storage 到 0x6F0000。
13. application 去除 OTA 任务句柄和服务器时间依赖,减少运行时资源占用。
14. system_info 去除 esp_ota_ops 依赖,配合无 OTA 分区配置。
15. 同步最新烧录运行日志,记录本轮双模式与配网测试结果。
|
2026-06-02 13:16:39 +08:00 |
|
|
|
24e0d19d29
|
fix(config): 对齐 Baji RTC 衍生项目配网配置
1. BLE / RTC 默认配置
- 开启 CONFIG_BT_ALLOCATION_FROM_SPIRAM_FIRST,让 Bluedroid host 动态分配优先走 PSRAM
- 关闭 CONFIG_BT_BLE_50_FEATURES_SUPPORTED,数字人 RTC 与 BLE 配网继续使用 legacy advertising
- 增加 CONFIG_LWIP_MAX_SOCKETS=20,给火山 RTC ICE/socket 建连预留 fd
- 保持 BluFi 关闭,项目继续使用自定义 GATT 配网服务
2. ESP32-S3 PSRAM defaults
- 开启 CONFIG_SPIRAM_ALLOW_BSS_SEG_EXTERNAL_MEMORY
- 开启 CONFIG_SPIRAM_ALLOW_NOINIT_SEG_EXTERNAL_MEMORY
- 将 BT/WiFi/LWIP 的静态段迁移到 PSRAM,释放内部 SRAM 给 BLE controller 和 RTC
3. 实机测试记录
- 更新 05-最新日志.txt,记录配网模式启动、BLE controller feature、EAF/音频初始化和复位现象
- 保留串口原始日志格式,便于后续对比 BLE 配网行为
4. 本地开发配置
- 更新 VSCode ESP-IDF 串口为 /dev/tty.usbmodem834401,匹配当前测试设备
|
2026-05-29 13:53:55 +08:00 |
|
|
|
32c3dc69bc
|
fix: 滑动切换图片时自动跳过解码失败的无效图片
1、update_ui_ImgBle 返回类型 void → bool,解码成功返回 true,失败返回 false;
2、左滑/右滑手势回调添加 for 循环,解码失败自动跳到下一张(最多尝试 10 张防死循环);
3、更新最新设备运行日志;
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
2026-03-24 18:22:53 +08:00 |
|
|
|
4e2f6906f9
|
feat: 启用 BLE 5.0 2M PHY 图传加速 + 移除未使用的 BluFi 组件 + BLE 断连内存泄漏修复
1、dzbj_ble.c 新增 BLE 5.0 2M PHY 请求(连接时自动协商,不支持则回退 1M);
2、dzbj_ble.c 新增 PHY 更新事件日志(tx_phy/rx_phy: 1=1M, 2=2M, 3=Coded);
3、dzbj_ble.c 断连时清理未完成的图片传输状态,释放 img_data/filepath/file_img 防止内存泄漏;
4、移除未使用的 BluFi 组件依赖(Kconfig select、编译检查、sdkconfig),解除与 BLE 5.0 的兼容冲突;
5、sdkconfig.defaults 及生产环境配置统一启用 BLE 5.0 + 保留 BLE 4.2 legacy advertising 兼容;
6、新增 BLE 图片传输问题分析与优化建议文档(含 UniApp vs Flutter 对比分析,供 APP 开发者参考);
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
2026-03-24 17:12:35 +08:00 |
|
|
|
1e7ba0763a
|
1、更新了postman参数、约束和语音请求讲故事的Function Call参数;
2、字幕增加了情绪标签,并且emoji表情跟随情绪和设备状态而更新;
|
2026-03-02 17:27:03 +08:00 |
|
|
|
14776acb0a
|
feat: 完成 AI/吧唧双模式完全隔离重构 + 触摸坐标日志 + SPIFFS 预烧录
## 核心变更
### 1. 双模式完全隔离 (Phase 2+4)
- 拆分 InitializeButtons() 为 InitializeBadgeModeButtons() + InitializeAiModeButtons()
- 构造函数按 device_mode 分支:吧唧模式不创建 PowerSaveTimer/BackgroundTask
- 吧唧模式不注册音量/故事按键回调,避免调用 GetAudioCodec() 崩溃
- GPIO0 由 iot_button 统一处理,dzbj_button 仅注册 KEY2(GPIO4)
- SetDeviceState() 中 background_task_ 空指针保护
### 2. 吧唧模式 BOOT 按键崩溃修复
- 新增 dzbj_boot_click_handler()(C 函数,避免 lvgl.h 与 display.h 冲突)
- 移植 dzbj 的唤醒屏幕/退出手电筒/返回Home 完整逻辑
### 3. esp_timer 阻塞 LVGL 渲染修复
- iot_button 回调在 esp_timer 任务中执行,vTaskDelay 会阻塞 lv_tick_inc
- 改为 xTaskCreate 派发到独立 FreeRTOS 任务,避免冻结 LVGL 渲染
### 4. 触摸坐标日志 + SPIFFS 预烧录
- esp_lvgl_port_touch.c 添加触摸坐标打印
- CMakeLists.txt 添加 spiffs_create_partition_image 自动打包 spiffs_image/
### 5. dzbj 模块文件新增
- device_mode: NVS 设备模式管理 (AI=0/吧唧=1)
- dzbj_button: GPIO4 KEY2 中断 + BOOT 点击处理
- dzbj_ble: BLE GATT 图传服务 (0x0B00)
- dzbj_battery: ADC 电池电压监测
- sleep_mgr: 10s 超时熄屏低功耗管理
- pages: 图片浏览/GIF播放/PWM亮度
- fatfs: SPIFFS 文件管理
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
2026-02-28 10:23:04 +08:00 |
|
|
|
bcfd35b9b8
|
chore: 从 Git 索引中移除 build/ 和 sdkconfig.old
build/ 目录和 sdkconfig.old 之前已被提交到仓库,
.gitignore 只能忽略未跟踪文件。
使用 git rm --cached 从索引中移除,本地文件不受影响。
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
|
2026-02-27 17:10:45 +08:00 |
|
|
|
03496efecb
|
1、初始化代码,待适配中....
|
2026-02-24 15:28:34 +08:00 |
|