- 移除ESP32电压监控相关代码,因为ESP32-C3无内置电压传感器 - 更新健康监控模块,从"温度+电压+WiFi RSSI监控"改为"温度+WiFi RSSI监控" - 修改OTA健康检查频率,从每次包处理改为每32个包检查一次 - 添加OTA期间WiFi RSSI采样年龄限制和更宽松的阈值 docs: 更新文档中的系统监控描述 - 从README.md、开发指南和设计文档中移除电压监控相关内容 - 更新WebUI接口文档中的状态查询描述 refactor(wifi_ota): 增加系统状态响应中的运行时间信息 - 在/system/status接口响应中添加uptime_sec字段 - 前端工具页面显示系统运行时间 feat(wifi_ota): 添加ESP32重启接口和前端控制 - 新增/restart HTTP POST接口用于重启ESP32 - 在前端界面添加重启按钮替代健康检查按钮 - 移除前端健康检查功能 perf(ota_relay): 调整OTA块大小提升传输性能 - 将OTA块大小从4096字节增加到8192字节 - 更新固件上传和存储相关的缓冲区大小配置
106 lines
4.6 KiB
Plaintext
106 lines
4.6 KiB
Plaintext
/*
|
|
* app_config.h - 统一配置文件(C++ 版本)
|
|
* ESP32-C3 OTA 中继项目
|
|
*
|
|
* 使用 constexpr 代替 #define,提供类型安全
|
|
*/
|
|
#pragma once
|
|
#include <cstdint>
|
|
|
|
// ============================================================
|
|
// 固件版本
|
|
// ============================================================
|
|
inline constexpr const char *FW_VERSION = "0.1.1";
|
|
|
|
// ============================================================
|
|
// WiFi 工作模式选择
|
|
// ============================================================
|
|
// 0 = AP 模式(设备当热点)
|
|
// 1 = STA 模式(连接路由器)
|
|
inline constexpr uint8_t CONFIG_WIFI_MODE = 1;
|
|
|
|
// ============================================================
|
|
// WiFi STA 模式配置(连接路由器)
|
|
// ============================================================
|
|
inline constexpr const char* WIFI_STA_SSID = "004舰桥";
|
|
inline constexpr const char* WIFI_STA_PASSWORD = "q13362875622";
|
|
inline constexpr uint32_t WIFI_STA_CONNECT_TIMEOUT_MS = 30000;
|
|
inline constexpr uint8_t WIFI_STA_MAX_RETRY = 5; // 最大重连次数,超过后切换 AP 模式
|
|
|
|
// STA 静态 IP
|
|
inline constexpr uint8_t WIFI_STA_USE_STATIC_IP = 0; // 先关闭静态 IP,使用 DHCP 排查连接问题
|
|
|
|
// 静态 IP 配置(始终定义,由 WIFI_STA_USE_STATIC_IP 在运行时决定是否使用)
|
|
inline constexpr const char* WIFI_STA_STATIC_IP = "192.168.31.32";
|
|
inline constexpr const char* WIFI_STA_STATIC_GW = "192.168.31.1";
|
|
inline constexpr const char* WIFI_STA_STATIC_NETMASK = "255.255.255.0";
|
|
inline constexpr const char* WIFI_STA_STATIC_DNS = "192.168.31.1";
|
|
|
|
// ============================================================
|
|
// WiFi AP 模式配置(设备当热点)
|
|
// ============================================================
|
|
inline constexpr const char* WIFI_AP_SSID = "ESP32_OTA_RELAY";
|
|
inline constexpr const char* WIFI_AP_PASSWORD = "12345678";
|
|
inline constexpr uint8_t WIFI_AP_CHANNEL = 6;
|
|
inline constexpr uint8_t WIFI_AP_MAX_CONNECT = 4;
|
|
|
|
// ============================================================
|
|
// HTTP 服务器配置
|
|
// ============================================================
|
|
inline constexpr uint16_t HTTP_SERVER_PORT = 80;
|
|
inline constexpr uint32_t HTTP_SERVER_STACK_SIZE = 8192;
|
|
|
|
// ============================================================
|
|
// OTA 配置
|
|
// ============================================================
|
|
inline constexpr size_t OTA_BLOCK_SIZE = 4096;
|
|
inline constexpr size_t ESP32_OTA_RECV_BLOCK_SIZE = 8192;
|
|
inline constexpr size_t OTA_MAX_FIRMWARE_SIZE = 2 * 1024 * 1024; // 2MB
|
|
|
|
// ============================================================
|
|
// 健康监控阈值
|
|
// ============================================================
|
|
inline constexpr int32_t WIFI_RSSI_CRITICAL = -85;
|
|
inline constexpr int32_t WIFI_RSSI_WARNING = -75;
|
|
inline constexpr int32_t TEMP_WARNING = 80;
|
|
inline constexpr int32_t TEMP_CRITICAL = 100;
|
|
inline constexpr size_t HEAP_WARNING_MIN = 10240;
|
|
|
|
// ============================================================
|
|
// 调试配置(UDP 日志)
|
|
// ============================================================
|
|
inline constexpr uint8_t DEBUG_LOG_ENABLED = 1; // 设为 0 禁用调试日志
|
|
inline constexpr const char* DEBUG_LOG_IP = "192.168.31.3"; // 上位机 IP
|
|
inline constexpr uint16_t DEBUG_LOG_PORT = 6666;
|
|
|
|
// ============================================================
|
|
// BLE OTA 配置
|
|
// ============================================================
|
|
inline constexpr const char* BLE_DEVICE_NAME = "ESP32-OTA-RELAY";
|
|
inline constexpr uint16_t BLE_MTU_SIZE = 512;
|
|
inline constexpr uint16_t BLE_OTA_SERVICE_UUID = 0xFFFF;
|
|
inline constexpr uint16_t BLE_OTA_CTRL_UUID = 0x0001;
|
|
inline constexpr uint16_t BLE_OTA_DATA_IN_UUID = 0x0002;
|
|
inline constexpr uint16_t BLE_OTA_DATA_OUT_UUID = 0x0003;
|
|
inline constexpr uint16_t BLE_OTA_VERSION_UUID = 0x0004;
|
|
|
|
// ============================================================
|
|
// 安全常量(需与 GD32 固件团队确认)
|
|
// ⚠️ 请填入实际密钥
|
|
// ============================================================
|
|
inline constexpr uint8_t MASTER_KEY[] = {
|
|
0x00, 0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07,
|
|
0x08, 0x09, 0x0A, 0x0B, 0x0C, 0x0D, 0x0E, 0x0F
|
|
};
|
|
|
|
inline constexpr uint8_t SCRAMBLE_CONST[] = {
|
|
0x11, 0x22, 0x33, 0x44, 0x55, 0x66, 0x77, 0x88,
|
|
0x99, 0xAA, 0xBB, 0xCC, 0xDD, 0xEE, 0xFF, 0x00
|
|
};
|
|
|
|
// ⚠️ 请填入实际的 GD32 芯片唯一码(12字节)
|
|
inline constexpr uint8_t GD32_CHIP_UID[] = {
|
|
0x00, 0x01, 0x02, 0x03, 0x04, 0x05,
|
|
0x06, 0x07, 0x08, 0x09, 0x0A, 0x0B
|
|
};
|