feat(core): 移除状态监控任务并优化系统资源

移除原有的周期性状态监控任务,减少系统负载和内存占用。

perf(relay): 优化OTA中继挑战响应验证逻辑

重构挑战响应验证流程,统一响应长度定义,并改进验证算法。

fix(wifi): 修复OTA中继重复触发问题

确保中继状态正确重置,防止在非空闲状态下重复触发中继。

perf(transport): 优化SPI通信时序参数

调整CS片选信号的前后延时参数,提高SPI通信稳定性。

refactor(ui): 分离ESP32和GD32文件上传界面

重构前端界面,为ESP32和GD32分别提供独立的文件上传区域。
This commit is contained in:
小龙虾
2026-05-28 23:40:19 +08:00
parent e014ca7704
commit 235b9c0420
7 changed files with 296 additions and 307 deletions
+9 -3
View File
@@ -768,10 +768,13 @@ static esp_err_t ota_relay_trigger_handler(httpd_req_t *req)
return ESP_FAIL;
}
if (s_relay_triggered) {
if (s_relay_triggered && g_relay_state != RELAY_IDLE &&
g_relay_state != RELAY_DONE && g_relay_state != RELAY_ERROR) {
httpd_resp_send_err(req, HTTPD_400_BAD_REQUEST, "relay already triggered");
return ESP_FAIL;
}
/* 上一轮中继已结束/失败/空闲,重置标志允许重新触发 */
s_relay_triggered = false;
if (!g_ota_dispatch_queue) {
httpd_resp_send_err(req, HTTPD_500_INTERNAL_SERVER_ERROR, "relay queue not ready");
@@ -1404,10 +1407,13 @@ void wifi_ota_signal_relay(void)
return;
}
if (s_relay_triggered) {
DEBUG_WARN("WIFI", "转发已经触发过");
if (s_relay_triggered && g_relay_state != RELAY_IDLE &&
g_relay_state != RELAY_DONE && g_relay_state != RELAY_ERROR) {
DEBUG_WARN("WIFI", "转发正在执行中,状态: %d", g_relay_state);
return;
}
/* 上一轮中继已结束/失败/空闲,重置标志 */
s_relay_triggered = false;
/** @brief OTA 中继是否已触发标志。 */
s_relay_triggered = true;