diff --git a/esphome/components/wifi/wifi_component.cpp b/esphome/components/wifi/wifi_component.cpp index a15c8d826f..c42a69f5e8 100644 --- a/esphome/components/wifi/wifi_component.cpp +++ b/esphome/components/wifi/wifi_component.cpp @@ -382,19 +382,14 @@ WiFiAP WiFiComponent::build_wifi_ap_from_selected_() const { } else { // Use config settings params.set_ssid(config->get_ssid()); - if (config->get_hidden()) { - params.set_hidden(true); - // For hidden networks, clear BSSID and channel even if set in config - // There might be multiple hidden networks with same SSID but we can't know which is correct - // Rely on probe-req with just SSID. Empty channel triggers ALL_CHANNEL_SCAN. - params.set_bssid(optional{}); - params.set_channel(optional{}); - } else { - params.set_bssid(config->get_bssid()); - params.set_channel(config->get_channel()); - } + const auto hidden = config->get_hidden(); + params.set_hidden(hidden); + // For hidden networks, clear BSSID and channel even if set in config + // There might be multiple hidden networks with same SSID but we can't know which is correct + // Rely on probe-req with just SSID. Empty channel triggers ALL_CHANNEL_SCAN. + params.set_bssid(hidden ? optional{} : config->get_bssid()); + params.set_channel(hidden ? optional{} : config->get_channel()); } - return params; }