diff --git a/homeassistant/components/qnap_qsw/config_flow.py b/homeassistant/components/qnap_qsw/config_flow.py index 794e8c67baa..e0d4a1f78cd 100644 --- a/homeassistant/components/qnap_qsw/config_flow.py +++ b/homeassistant/components/qnap_qsw/config_flow.py @@ -78,6 +78,13 @@ class ConfigFlow(config_entries.ConfigFlow, domain=DOMAIN): _LOGGER.debug("DHCP discovery detected QSW: %s", self._discovered_mac) + await self.async_set_unique_id(format_mac(self._discovered_mac)) + self._abort_if_unique_id_configured( + updates={ + CONF_URL: self._discovered_url, + } + ) + options = ConnectionOptions(self._discovered_url, "", "") qsw = QnapQswApi(aiohttp_client.async_get_clientsession(self.hass), options) @@ -86,9 +93,6 @@ class ConfigFlow(config_entries.ConfigFlow, domain=DOMAIN): except QswError as err: raise AbortFlow("cannot_connect") from err - await self.async_set_unique_id(format_mac(self._discovered_mac)) - self._abort_if_unique_id_configured() - return await self.async_step_discovered_connection() async def async_step_discovered_connection(