Home Assistant can discover and automatically configure zeroconf/mDNS and UPnP devices on your network. Currently the discovery integration can detect:

It will be able to add Belkin WeMo switches automatically, for Philips Hue it will require some configuration from the user.

Zeroconf discoverable integrations Axis/ESPHome/HomeKit/Tradfri/Google Cast have been migrated to use zeroconf integration to initiate discovery.

To load this integration, add the following lines to your configuration.yaml file:

# Example configuration.yaml entry
    - sonos
    - samsung_printer
    - homekit

Configuration Variables



A list of platforms that never will be automatically configured by discovery.



A list of platforms not enabled by default that discovery should discover.

Valid values for ignore are:

  • apple_tv: Apple TV
  • belkin_wemo: Belkin WeMo switches
  • bluesound: Bluesound speakers
  • bose_soundtouch: Bose Soundtouch speakers
  • denonavr: Denon network receivers
  • directv: DirecTV receivers
  • enigma2: Enigma2 media players
  • frontier_silicon: Frontier Silicon internet radios
  • harmony: Logitech Harmony Hub
  • igd: Internet Gateway Device
  • logitech_mediaserver: Logitech Media Server (Squeezebox)
  • netgear_router: NETGEAR routers
  • octoprint: Octoprint
  • openhome: Linn / Openhome
  • panasonic_viera: Panasonic Viera
  • philips_hue: Philips Hue
  • roku: Roku media player
  • sabnzbd: SABnzbd downloader
  • samsung_printer: Samsung SyncThru Printer
  • sonos: Sonos speakers
  • songpal : Songpal
  • tellstick: Telldus Live
  • wink: Wink Hub
  • yamaha: Yamaha media player
  • yeelight: Yeelight lamps and bulbs (not only Yeelight Sunflower bulb)
  • xiaomi_gw: Xiaomi Aqara gateway

Valid values for enable are:

  • dlna_dmr: DLNA DMR enabled devices



Home Assistant must be on the same network as the devices for UPnP discovery to work. If running Home Assistant in a Docker container use switch --net=host to put it on the host’s network.


64-bit Python

There is currently a known issue with running this integration on a 64-bit version of Python and Windows.

could not install dependency netdisco

If you see Not initializing discovery because could not install dependency netdisco==0.6.1 in the logs, you will need to install the python3-dev or python3-devel package on your system manually (eg. sudo apt-get install python3-dev or sudo dnf -y install python3-devel). On the next restart of Home Assistant, the discovery should work. If you still get an error, check if you have a compiler (gcc) available on your system.

DSM and Synology

For DSM/Synology, install via debian-chroot see this forum post.