ESP8266(Arduino)在Mesh接入点间WiFi连接间歇性中断问询
ESP8266在多AP同SSID同信道环境下WiFi连接间歇性中断问题
我在ESP8266克隆板上运行基于Arduino框架的程序,使用原生ESP8266WiFi.h库。在仅能看到单个Netgear Orbi接入点的实验室环境中运行正常,但在能看到两个接入点的房间内,WiFi连接间歇性中断,信号强度良好,但设备性能极差,而同位置的笔记本电脑WiFi连接稳定。
Orbi系统的多个接入点广播相同SSID且处于同一信道,我怀疑ESP8266协议栈因此受到干扰。
已在代码中开启WiFi调试,但调试信息来自Expressif预制库,可获取的有效信息有限;暂未使用Wireshark等工具,手机WiFi分析工具无效,我对代码本身有信心,但缺少应对该场景的方案。
注:MQTT首次连接失败为已知bug,后续多次失败为核心问题。
调试日志示例
成功案例
15:13:56.873 -> 1db512b-dirty (Tue 2 Jan 15:08:50 GMT 2024) 15:13:56.873 -> External System 15:13:56.906 -> WIFI: INFO: MAC: 40:91:51:52:bd:7e 15:13:56.906 -> WIFI: INFO: inital connection... 15:13:56.906 -> fpm close 1 15:13:56.906 -> mode : sta(40:91:51:52:bd:7e) 15:13:56.906 -> add if0 15:13:59.863 -> scandone 15:14:00.726 -> state: 0 -> 2 (b0) 15:14:00.760 -> state: 2 -> 3 (0) 15:14:00.760 -> state: 3 -> 5 (10) 15:14:00.760 -> add 0 15:14:00.760 -> aid 3 15:14:00.760 -> cnt 15:14:00.793 -> 15:14:00.793 -> connected with XXXX, channel 9 15:14:00.793 -> dhcp client start... 15:14:00.793 -> WIFI: INFO: connected 15:14:02.354 -> ip:10.23.3.142,mask:255.255.252.0,gw:10.23.1.1 15:14:02.388 -> WIFI: INFO: got IP: 10.23.3.142 15:14:02.421 -> MQTT: INFO: starting 15:14:02.421 -> MQTT: INFO: trying to connect 15:14:02.454 -> MQTT: INFO: connect failed; will try again 15:14:07.470 -> MQTT: INFO: trying to connect 15:14:07.503 -> MQTT: INFO: connected 15:14:10.759 -> pm open,type:2 0
失败案例
15:13:07.041 -> 1db512b-dirty (Tue 2 Jan 15:08:50 GMT 2024) 15:13:07.075 -> External System 15:13:07.075 -> WIFI: INFO: MAC: 40:91:51:52:bd:7e 15:13:07.075 -> WIFI: INFO: inital connection... 15:13:07.075 -> fpm close 1 15:13:07.075 -> mode : sta(40:91:51:52:bd:7e) 15:13:07.075 -> add if0 15:13:10.032 -> scandone 15:13:10.928 -> state: 0 -> 2 (b0) 15:13:11.925 -> state: 2 -> 0 (2) 15:13:11.925 -> reconnect 15:13:11.925 -> WIFI: INFO: disconnected 15:13:14.781 -> scandone 15:13:14.781 -> state: 0 -> 2 (b0) 15:13:14.781 -> state: 2 -> 3 (0) 15:13:14.781 -> state: 3 -> 5 (10) 15:13:14.781 -> add 0 15:13:14.781 -> aid 3 15:13:14.781 -> cnt 15:13:14.814 -> 15:13:14.814 -> connected with XXXX, channel 9 15:13:14.848 -> dhcp client start... 15:13:14.848 -> WIFI: INFO: connected 15:13:22.820 -> ip:10.23.3.142,mask:255.255.252.0,gw:10.23.1.1 15:13:22.820 -> WIFI: INFO: got IP: 10.23.3.142 15:13:24.780 -> pm open,type:2 0 15:13:25.345 -> MQTT: INFO: starting 15:13:25.345 -> MQTT: INFO: trying to connect 15:13:30.328 -> MQTT: INFO: connect failed; will try again 15:13:35.346 -> MQTT: INFO: trying to connect 15:13:40.330 -> MQTT: INFO: connect failed; will try again
暂未提供代码,若需要可提供GitHub链接。
需要的帮助
- 确认该场景是否为已知问题;
- 对调试输出的解释;
- 进一步调试的可行建议。
内容的提问来源于stack exchange,提问作者Edd Inglis
相关产品推荐
相关产品推荐

