diff --git a/homeassistant/components/adax/config_flow.py b/homeassistant/components/adax/config_flow.py index 2788b563678..e3921258426 100644 --- a/homeassistant/components/adax/config_flow.py +++ b/homeassistant/components/adax/config_flow.py @@ -75,12 +75,7 @@ class ConfigFlow(config_entries.ConfigFlow, domain=DOMAIN): configurator = adax_local.AdaxConfig(wifi_ssid, wifi_pswd) try: - if not await configurator.configure_device(): - return self.async_show_form( - step_id="local", - data_schema=data_schema, - errors={"base": "cannot_connect"}, - ) + device_configured = await configurator.configure_device() except adax_local.HeaterNotAvailable: return self.async_abort(reason="heater_not_available") except adax_local.HeaterNotFound: @@ -88,6 +83,13 @@ class ConfigFlow(config_entries.ConfigFlow, domain=DOMAIN): except adax_local.InvalidWifiCred: return self.async_abort(reason="invalid_auth") + if not device_configured: + return self.async_show_form( + step_id="local", + data_schema=data_schema, + errors={"base": "cannot_connect"}, + ) + unique_id = configurator.mac_id await self.async_set_unique_id(unique_id) self._abort_if_unique_id_configured()