Files
mimiclaw/taolun.md
Z.To eedc6757d8
Some checks failed
Build / idf-build (push) Has been cancelled
使用中文提交内容
适配ESP-IDF v6.0编译 补充项目相关文档

* 修复16处头文件缺失、flash配置错误、WiFi断开原因码兼容问题
* 新增ESP-IDF v6.0迁移适配文档
* 更新变更日志,补充v1.0.0功能清单及v1.1.0版本规划
* 整理讨论记录,新增v6.0适配及国内大模型接入内容
2026-03-31 21:34:59 +08:00

3.0 KiB
Raw Blame History

讨论记录


讨论ESP-IDF v6.0 编译适配

日期2026-03-31
目标:解决 ESP-IDF v6.0 编译失败问题,完成固件烧录

问题清单

1. Flash 大小配置错误

  • 错误:分区表需要 16MB但 sdkconfig 配置为 2MB
  • 修复sdkconfigCONFIG_ESPTOOLPY_FLASHSIZE 改为 16MB

2. WiFi 断开原因码未定义

  • 错误WIFI_REASON_ASSOC_EXPIRE 等符号在 v6.0 中未定义
  • 修复wifi_manager.c 中所有 reason code 添加 #ifdef 保护

3. CMakeLists.txt 缺少源文件

  • 错误llm_provider.c 未加入编译列表,导致链接错误
  • 修复:添加 ota/ota_manager.c 到 SRCS

4. 头文件缺失(共 16 处)

文件 缺失头文件 原因
cli/serial_cli.c llm/llm_provider.h llm_provider_set_api_key
llm/llm_provider.c esp_http_client.h esp_http_client_set_header
bus/message_bus.c freertos/FreeRTOS.h, freertos/queue.h xQueueCreate, QueueHandle_t
wifi/wifi_manager.c esp_event.h esp_event_handler_instance_register
wifi/wifi_manager.c freertos/FreeRTOS.h, freertos/task.h, freertos/event_groups.h xEventGroupCreate, vTaskDelay
ota/ota_manager.c esp_system.h esp_restart
channels/telegram/telegram_bot.c freertos/FreeRTOS.h, freertos/task.h xTaskCreatePinnedToCore, vTaskDelay
tools/tool_registry.c <stdlib.h> free()
proxy/http_proxy.c <sys/time.h> struct timeval
gateway/ws_server.c <stdint.h> uint8_t

ESP-IDF v6.0 API 兼容性验证

以下 API 在 v6.0 中仍然存在,无需修改:

  • esp_spiffs_info()
  • esp_websocket_client_send_bin()
  • esp_tls_set_conn_sockfd() / esp_tls_set_conn_state()
  • esp_console_new_repl_uart() / esp_console_new_repl_usb_serial_jtag()
  • esp_https_ota() + esp_https_ota_config_t
  • esp_wifi_set_config()

烧录说明

ESP32-S3 使用 USB 口(内置 USB Serial/JTAG 控制器)烧录:

idf.py -p COMx flash monitor
  • 插 USB 口(标记为 USB),不是 UART 口
  • 如遇连接失败,按住 BOOT 键再插线进入下载模式

讨论:增加国内大模型厂商接入

日期2026-03-31
目标:为 MimiClaw 增加硅基流动和火山方舟(豆包模型)接入

项目现状

  • 当前支持Anthropic (Claude)、OpenAI (GPT)
  • 运行平台ESP32-S3纯 C 语言
  • 交互方式Telegram 机器人

国内厂商 API 兼容性

  • 硅基流动OpenAI 兼容Base URL https://api.siliconflow.cn/v1
  • 火山方舟OpenAI 兼容Base URL https://ark.cn-beijing.volces.com/api/v3

实现方案

由于两者都提供 OpenAI 兼容 API可复用现有 OpenAI 集成代码,只需:

  1. 修改 Base URL
  2. 调整认证方式Bearer Token
  3. 处理模型名称规范

待解决问题

  1. 认证方式差异确认
  2. 模型名称规范
  3. 工具调用格式兼容性验证