We are getting a strong pattern of user complaints about our ESP32-based products either losing connectivity or having intermittent connectivity after either adding a wireless extender or switching to a "mesh" network such as Eero, Airport Time Capsule, and others.
We run IDF v3.3.2.
This is becoming a very embarrassing issue for us.
I thought that ESP32 was "Wi-Fi Alliance Certified" and this sort of issue would not appear. Please assist.
Compatibility Issues with Wireless Extenders and WiFi "Mesh" Networks
-
- Posts: 76
- Joined: Tue May 29, 2018 8:00 pm
-
- Posts: 7
- Joined: Tue Oct 20, 2020 2:57 am
Re: Compatibility Issues with Wireless Extenders and WiFi "Mesh" Networks
Hi Chrismerck, Could you provide us the log and the packet capture for the losing connectivity issue? We will take a look at it.
Re: Compatibility Issues with Wireless Extenders and WiFi "Mesh" Networks
Experiencing similar enterprise level issues with mesh topology based networks.
These are customer reports and so logging is limited but anecdotally we find situations where networks have multiple identical SSIDs that the device fails to connect or frequently loses connection (like it connects to a low signal strength AP vice one near the device).
For instance, I pulled scan logs from two customers today that both have bgw320-500 and ATT service provided modems. The scan log lists multiple identical SSIDs like "ATTxxx" coming from different range extenders and different channels. We are going to try to search by rssi and connect based on bssid as we are kind of at a loss...but I have to assume the library is already connecting to the strongest signal first and so Ill be surprised if this has any effect.
Ideas would be appreciated.
These are customer reports and so logging is limited but anecdotally we find situations where networks have multiple identical SSIDs that the device fails to connect or frequently loses connection (like it connects to a low signal strength AP vice one near the device).
For instance, I pulled scan logs from two customers today that both have bgw320-500 and ATT service provided modems. The scan log lists multiple identical SSIDs like "ATTxxx" coming from different range extenders and different channels. We are going to try to search by rssi and connect based on bssid as we are kind of at a loss...but I have to assume the library is already connecting to the strongest signal first and so Ill be surprised if this has any effect.
Ideas would be appreciated.
Re: Compatibility Issues with Wireless Extenders and WiFi "Mesh" Networks
scan_method For WIFI_FAST_SCAN scan, the scan ends when the first matched AP is found, for WIFI_ALL_CHANNEL_SCAN, the scan finds all matched APs on all channels. The default scan is WIFI_FAST_SCAN.
Re: Compatibility Issues with Wireless Extenders and WiFi "Mesh" Networks
Thanks for that...but it seems that the default in the arduino libs is already set to scan all (not fast).
https://github.com/espressif/arduino-es ... A.cpp#L169
https://github.com/espressif/arduino-es ... A.cpp#L169
Re: Compatibility Issues with Wireless Extenders and WiFi "Mesh" Networks
Actually, on further inspection, it seems wifi.begin(ssid,pass) does not set the scan mode, only wifi.begin(ssid,pass,channel, bssid, connect) does. The arduino library is such a mess sometimes. We will try this and report back. Thanks.
Re: Compatibility Issues with Wireless Extenders and WiFi "Mesh" Networks
Replacing WiFi.begin(ssid, pass) with WiFi.begin(ssid,pass, 0,0,true) seems to have resolved this issue. I am at a loss as to how this would not be the default behavior for both methods.
Re: Compatibility Issues with Wireless Extenders and WiFi "Mesh" Networks
Apologies for practicing necromancy but I was experiencing a very similar issue with an ESP32 auto selecting an AP for the specified SSID with a far from ideal RSSI / connection when one with a much higher quality signal was right next to it (literally within feet).
I have a mesh / repeater network (multiple APs at varying distances with an RSSI level of -30 all the way up to -80). What I found was my ESP32 was connecting to the AP with the worst possible RSSI rating.
To work around this I have to initiate an active scan. Once the scan is complete, I iterate through results checking the entries for the appropriate SSID and picking the one with the lowest RSSI matching it. This is typically the first entry for the SSID in the list. I then use the BSSID for that AP in addition to the SSID when executing my wifi.begin...
I have a mesh / repeater network (multiple APs at varying distances with an RSSI level of -30 all the way up to -80). What I found was my ESP32 was connecting to the AP with the worst possible RSSI rating.
To work around this I have to initiate an active scan. Once the scan is complete, I iterate through results checking the entries for the appropriate SSID and picking the one with the lowest RSSI matching it. This is typically the first entry for the SSID in the list. I then use the BSSID for that AP in addition to the SSID when executing my wifi.begin...
Who is online
Users browsing this forum: Accound, Bing [Bot] and 85 guests