- 新增ota目录和esp32_ota_core.cpp实现ESP32 OTA核心功能,支持begin/write/finalize操作 - 修改CMakeLists.txt添加ota源文件和包含目录 - 重构ble_ota.cpp将OTA写入/收尾逻辑委托给Esp32OtaCore,移除mbedtls直接引用 - 新增BLE_OTA_CTRL_RESTART_ESP32(0xFA)命令用于重启ESP32设备 - 更新BLE_OTA_CTRL_TRIGGER_ESP32(0xF8)逻辑,要求前端提供SHA-256校验并比对 - 添加SHA-256校验不匹配错误码BLE_OTA_FINISH_ERR_SHA_MISMATCH(0x85) - 优化OTA收尾流程,设备端读取分区计算SHA-256并与前端提供的哈希比对 - 添加BLE_OTA_NOTIFY_SHA256通知类型用于上报设备端计算的SHA-256值 - 更新app_config.h中的BLE OTA命令描述文档 - 移除BleOta类中的OTA状态变量,仅保留BLE传输层相关状态 - 更新版本构建时间和Git哈希信息
48 lines
1.1 KiB
CMake
48 lines
1.1 KiB
CMake
idf_component_register(
|
||
SRCS
|
||
"core/main.cpp"
|
||
"ota/esp32_ota_core.cpp"
|
||
"relay/ota_relay.cpp"
|
||
"transport/spi_master.cpp"
|
||
"transport/protocol.cpp"
|
||
"server/wifi_ota.cpp"
|
||
"server/ble_ota.cpp"
|
||
"monitor/health_monitor.cpp"
|
||
"monitor/debug_log.cpp"
|
||
INCLUDE_DIRS
|
||
"."
|
||
"core"
|
||
"ota"
|
||
"relay"
|
||
"transport"
|
||
"server"
|
||
"monitor"
|
||
"include"
|
||
REQUIRES
|
||
app_update
|
||
cjson
|
||
esp_driver_spi
|
||
esp_driver_tsens
|
||
esp_driver_uart
|
||
esp_wifi
|
||
esp_netif
|
||
esp_event
|
||
esp_partition
|
||
esp_timer
|
||
esp_http_server
|
||
esp_blockdev
|
||
nvs_flash
|
||
freertos
|
||
mbedtls
|
||
bt
|
||
)
|
||
|
||
# 每次构建时自动刷新 version.h(BUILD_TIME / GIT_HASH)
|
||
add_custom_target(version_header ALL
|
||
COMMAND ${CMAKE_COMMAND}
|
||
-DSOURCE_DIR=${CMAKE_SOURCE_DIR}
|
||
-DOUTPUT_FILE=${CMAKE_CURRENT_SOURCE_DIR}/include/version.h
|
||
-P ${CMAKE_SOURCE_DIR}/cmake/gen_version_script.cmake
|
||
COMMENT "Refreshing version.h"
|
||
VERBATIM
|
||
) |