Problem with SSDP Discovery logic

I’m trying to build out my Evonic Fires integration to get auto-discovery with SSDP, however I’m having issues getting it to even trigger the SSDP config flow.

I have an Android app that automatically finds the fire and connects to it via IP. Looking at the source code, I can that it does an SSDP search using the below parameters

INFO: M-SEARCH * HTTP/1.1
Host: 239.255.255.250:1900
Man:"ssdp:discover"
MX: 60
ST: upnp:rootdevice

With this in mind, I added the following to my manifest.json:

  "dependencies": ["ssdp"],
  "ssdp": [
        {
      "st": "upnp:rootdevice"
    }

And then just to test, in my config_flow I put the below, but nothing is logged. Does anyone know if I’m missing something?

   async def async_step_ssdp(self, discovery_info: ssdp.SsdpServiceInfo) -> FlowResult:
        _LOGGER.debug("Starting discovery via: %s", discovery_info)
        return self.async_show_form(
            step_id="user",
            data_schema=vol.Schema({vol.Required(CONF_HOST): str}),
            errors=errors or {},
        )

The source code for my integration can be found here (no SSDP discovery pushed to git yet)