- 实现 GD32 主动推送 CAN 反馈架构,替代 ESP32 1Hz 轮询方式, 减少 SPI 总线占用提升带宽效率 - 添加 GD32 Bootloader 就绪检测机制,通过 PB6 硬件信号等待 保证 OTA 过程稳定可靠 - 集成 CREDIT 感知功能,当 GD32 写 Flash 缓冲时自动等待, 避免数据包丢失提高传输成功率 - 重构 canFdPollFeedback 为 canFdParseFeedbackPage 函数, 支持被动解析 GD32 主动推送的数据页 - 更新版本号从 0.37 到 0.3.38 并添加 Kconfig 配置选项支持
55 lines
2.1 KiB
Plaintext
55 lines
2.1 KiB
Plaintext
# WiFi perf -- OTA acceleration
|
|
CONFIG_ESP_WIFI_RX_BA_WIN=6
|
|
CONFIG_ESP_WIFI_TX_BA_WIN=6
|
|
CONFIG_DCU_OTA_POLL_BACKOFF_MS=5
|
|
CONFIG_DCU_OTA_FINISH_TIMEOUT_MS=10000
|
|
|
|
# DCU SPI clock -- default 4 MHz, can be raised via menuconfig to speed up GD32 OTA
|
|
CONFIG_DCU_SPI_CLOCK_HZ=4000000
|
|
|
|
# DCU OTA packet interval -- default 1 ms, can be lowered to speed up GD32 OTA
|
|
CONFIG_DCU_OTA_PACKET_INTERVAL_MS=1
|
|
|
|
# LWIP: HTTP server max_open_sockets=4 + WiFi/LWIP 内部 ~3 + UDP debug log + 余量
|
|
# 原值 7 与 httpd max_open_sockets=4 仅余 3 个 socket,一旦 handler 阻塞即 accept(EMFILE)
|
|
# 提到 12 留足缓冲,配合 can_feedback_task 退避从根本上避免 socket 饥荒
|
|
CONFIG_LWIP_MAX_SOCKETS=12
|
|
CONFIG_LWIP_TCP_WND_DEFAULT=11480
|
|
CONFIG_LWIP_TCP_SND_BUF_DEFAULT=11520
|
|
|
|
# FreeRTOS runtime stats -- /system/status CPU usage
|
|
CONFIG_FREERTOS_USE_TRACE_FACILITY=y
|
|
CONFIG_FREERTOS_USE_STATS_FORMATTING_FUNCTIONS=y
|
|
CONFIG_FREERTOS_GENERATE_RUN_TIME_STATS=y
|
|
CONFIG_FREERTOS_RUN_TIME_COUNTER_TYPE_U32=y
|
|
CONFIG_FREERTOS_RUN_TIME_STATS_USING_ESP_TIMER=y
|
|
|
|
# ── NimBLE: 禁用未使用的标准 GATT 服务(只保留自定义 OTA service)──
|
|
# 每项 service 含 characteristic + descriptor + UUID 注册,合计约占 8-15 KB
|
|
CONFIG_BT_NIMBLE_PROX_SERVICE=n
|
|
CONFIG_BT_NIMBLE_ANS_SERVICE=n
|
|
CONFIG_BT_NIMBLE_CTS_SERVICE=n
|
|
CONFIG_BT_NIMBLE_HTP_SERVICE=n
|
|
CONFIG_BT_NIMBLE_IPSS_SERVICE=n
|
|
CONFIG_BT_NIMBLE_TPS_SERVICE=n
|
|
CONFIG_BT_NIMBLE_IAS_SERVICE=n
|
|
CONFIG_BT_NIMBLE_LLS_SERVICE=n
|
|
CONFIG_BT_NIMBLE_SPS_SERVICE=n
|
|
CONFIG_BT_NIMBLE_HR_SERVICE=n
|
|
CONFIG_BT_NIMBLE_BAS_SERVICE=n
|
|
CONFIG_BT_NIMBLE_DIS_SERVICE=n
|
|
|
|
# ── NimBLE: 缩减内存池(单连接 OTA 场景,不需要大池子)──
|
|
# MSYS pool 1: 256B blocks, 16→8 (省 ~2 KB)
|
|
CONFIG_BT_NIMBLE_MSYS_1_BLOCK_COUNT=8
|
|
# MSYS pool 2: 320B blocks, 32→16 (省 ~5 KB)
|
|
CONFIG_BT_NIMBLE_MSYS_2_BLOCK_COUNT=16
|
|
# ACL transport buffers: 12→6 (省 ~1.5 KB)
|
|
CONFIG_BT_NIMBLE_TRANSPORT_ACL_FROM_LL_COUNT=6
|
|
# Event buffers: 30→16 (省 ~1 KB)
|
|
CONFIG_BT_NIMBLE_TRANSPORT_EVT_COUNT=16
|
|
# Prepared write entries: 64→16 (省 ~1 KB)
|
|
CONFIG_BT_NIMBLE_ATT_MAX_PREP_ENTRIES=16
|
|
# GATT procedures: 4→2 (单连接够用)
|
|
CONFIG_BT_NIMBLE_GATT_MAX_PROCS=2
|