Wrong BSSID on hidden network


I’ve got a hidden IoT network that I use for my ESPs, and two APs.
I know that hidden networks require fast connect, which the doc warns might pick the wrong AP and indeed it does.

So I’ve instead tried defining a networks block, with only one network, because it allows specifying the bssid in the config which I presumed would force it to connect to the correct one :

    - ssid: !secret wifi_iot_ssid
      password: !secret wifi_iot_pass
      hidden: !secret wifi_iot_fast
      bssid: !secret U6-LR-2.4ghz-mac
        static_ip: [...]

Unfortunately this morning I’m still seeing one of the ESP connect to the wrong AP, which makes it really unstable.
Is the bssid setting ignored for hidden networks ? Is there any way to force the esp to connect to a specific AP when the network is hidden ?


You mean I should remove the ssid ? I thought the SSID was required

It doesn’t, if hidden is true then ssid must be set.
Just tried it to be sure but it fails to connect without the ssid defined.

So unfortunately it looks like the bssid setting does nothing, at least for hidden networks

Similarly it seems channel does also nothing, which would have been another way to go. Not sure there’s any solutions …

1 Like

Can you explain why you use a hidden SSID in the first place?
This will not give you any security (the SSID can still be easily sniffed) but will only lead to issues especially with the mostly dumb wifi-stacks in IoT devices…

1 Like

Just to avoid polluting the list of wifi networks, if there’s only one visible network in the list it makes it easier for guests.

Sure it’s not that important, just would have been nice, unfortunate that this isn’t working well with ESPHome

If you want to make it easy & comfortable for guests print out a QR-code and/or write an NFC-tag with the guest network details so it can be scanned. No need to browse any oldschool network lists or type in credentials these days.

1 Like