I've been struggling with "bcn_timout" errors for the past few months on an ESP8266. Currently, I'm running on Mongoose-OS (mgos) (mongoose-os.com) which is built on nonos-sdk (specifically: https://github.com/espressif/ESP8266_NO ... 17b7da56c7).
With basic apps that just connect to wifi, and depending on the router I connect to, I can get disconnected nearly every 30 seconds. It will then reconnect successfully. With some routers I only drop out after 10 minutes, and some ESP modules only drop out after 10 minutes as well, but most commonly I have ESPs connecting to networks and dropping every 30-60 seconds.
Code: Select all
bcn_timout,ap_probe_send_start
ap_probe_send over, rest wifi status to disassoc
I have the Arduino port build from approximately Oct 2016 and that doesn't experience this issue. I have the esp-open-rtos build from approximately Jan 2017 and that doesn't experience this issue either. I am not certain which sdk version either of those are running on.
I believe this is an SDK issue because of the wifi packets I'm seeing the device send must be generated at quite a low level. When running on Arduino, the device connects to the AP and then is quite. For mgos running on the nonos-sdk version above, the ESP is transmitting many Null packets requesting "power management bit = 1", followed by many Probe Requests which the AP then doesn't respond to. Then, the ESP just gives up and sends a pile of Disassociate commands and then goes through the reconnecting process. This can be seen in the following picture:

Here is a summary of some of the tests I have performed to try to narrow this problem down:

I really want to resolve this issue, and I'm looking for any ideas and support. If there are any tests I can perform to generate more data to help resolve the problem, let me know.