Working on a custom integration for the BambuLabs printers. I can see in wireshark that its reguarly broadcasting notifications in response to the constant SSDP discovery message on my home network:
NOTIFY * HTTP/1.1
HOST: 239.255.255.250:1900
Server: Buildroot/2018.02-rc3 UPnP/1.0 ssdpd/1.8
Location: 10.10.10.81
NT: urn:bambulab-com:device:3dprinter:1
USN: <SERIAL>
Cache-Control: max-age=1800
DevModel.bambu.com: C11
DevName.bambu.com: 3DP-01S-557
DevSignal.bambu.com: -63
DevConnect.bambu.com: cloud
DevBind.bambu.com: occupied
But when I add ssdp to my manifest and created a basic async_step_ssdp() config_flow method, the printer is never offered up by HA as discovered. I know discovery works in my HA setup as it found my Unifi controller automatically a while back.
What am I missing? Does SSDP just not work for custom components?
Manifest content:
"dependencies": ["mqtt", "ssdp"],
"ssdp": [
{
"st": "urn:bambulab-com:device:3dprinter:1"
}
]
Config flow for testing:
async def async_step_ssdp(
self, discovery_info: ssdp.SsdpServiceInfo
) -> FlowResult:
"""Handle ssdp discovery flow."""
LOGGER.debug("async_step_ssdp");
return await self.async_step_user()