ESP32 的 Wi-Fi 与 BLE 共存时,丢包主要源于射频资源竞争。建议优先配置共存优先级:在 menuconfig 中启用 CONFIG_ESP_COEX_SW_COEXIST_ENABLE,并设置 CONFIG_ESP_COEX_PREFER_WIFI 或 CONFIG_ESP_COEX_PREFER_BLE,根据业务实时性需求选择。若 Wi-Fi 数据关键,设为 Wi-Fi 优先;若 BLE 连接间隔敏感,则 BLE 优先。此外,调整 BLE 广播间隔(如 100ms)和连接参数(如 min/max interval 为 30-50ms),并启用 Wi-Fi 的 modem sleep 模式,减少射频占用。实操中,建议用 esp_event 监听共存事件,动态调整优先级,并通过抓包工具(如 Wireshark)验证丢包率。若仍丢包,可尝试减少 Wi-Fi 带宽(如 20MHz)或降低 BLE 数据速率。
mcuku 阿沐 · 2026-08-27