WiFiManager: Failed to connect when we have multiple access point with same name
I tried this WiFiManager
it is working awesome. When I have more than one ap with same name(I’m using repeater, to extend WiFi Range) it is not connecting. It looks like we are not using bssid
to connect a specific access point.
I believe when we connect with bssid
, this problem will be resolved.
Thank you!
About this issue
- Original URL
- State: closed
- Created 8 years ago
- Comments: 59 (2 by maintainers)
ok fair point. I did not understand what @eyaleb was getting at with his earlier comment, which you explained. I’m sure he is correct, but i’m working through this one step at a time. Feel free to rachet the snark down one level
my observations, quick testing mutiple reboots
no bssid : 5000ms bssid set : 3100 ms (BSSID_set = 1 on printdiag, so it seems to be saving correctly)
dhcp client seems to take up a bit of time on boot
static ip config & BSSID : 549 ms static ip config & NO BSSID: 2500 ms
**** all tests timed from boot, with serial begin() included in time, channel not set (0), one AP, I will test with various environments later
So I would guess for battery powered devices it is worth saving all these settings and if a fail occurs, fall back to regular ap connect and send a flag with any data.
Also be sure to set WIFI_STA if you are not using AP.
Are you sure it reduces connection times? I know that specifying a fixed IP reduces connection times from several seconds for DHCP to about 1/3 of a second but a fixed BSSID and channel as a connection time reduction method is new to me. Reduced connection times would be of great value in deep sleep scenarios where a few sensor readings are made and reported. I know that currently most of the time awake is spent establishing the WiFi connection. Power consumption can be greatly reduced if WiFi connection times can be reduced.
You only need to specify it once, then it remembers. The most code changes are in collecting the values through the web interface. You need to display the information on the web page then have variables to collect the information. Where there are multiple access points with the same SSID it currently shows only the one with the strongest signal which is simple and probably what most people want. The duplicates are removed here https://github.com/tzapu/WiFiManager/blob/master/WiFiManager.cpp#L421 . I don’t know whether next time it boots it chooses the same one or it chooses the strongest signal but the obvious thing is strongest signal each time it connects. This logic is further down the software stack from WiFiManager.
Most people wouldn’t know what BSSID and channel means, and still wouldn’t be interested if they did so there would need to be some way to hide the options from the average user.
For a one off application don’t use WiFiManager but hard code it as described at http://www.esp8266.com/viewtopic.php?f=32&t=5604#p29465 .