The OwnTone integration allows you to control your OwnTone (previously forked-daapd) server from Home Assistant. This integration can control the OwnTone outputs (zones) with limited playback control (play/pause, previous/next track) and media info support. Playlist manipulation is not supported.


The OwnTone integration requires an OwnTone server built with libwebsockets enabled, version >= 27.0.


To add the OwnTone integration to your Home Assistant instance, use this My button:

OwnTone can be auto-discovered by Home Assistant. If an instance was found, it will be shown as Discovered. You can then set it up right away.


Once the OwnTone integration is set up, outputs will automatically be loaded from the server and added to HA in real-time.


As OwnTone supports playing audio input via a pipe, this integration supports the forwarding of basic player controls (play, pause, next track, previous track) directly to the pipe’s source. Currently, only the pipe source librespot-java is supported. To use this, configure your OwnTone server to autostart pipes and name your librespot-java pipe “librespot-java” (accompanying metadata is also supported through OwnTone via a metadata pipe named “librespot-java.metadata”). The OwnTone integration will find the librespot-java pipe in the database and will set it up as a source.


The OwnTone integration will treat playlists in the database as sources. The number of playlists shown as sources can be set in the integration’s configuration options.


The OwnTone integration supports media browsing via the Spotify integration. However, to play Spotify content, your OwnTone instance must be logged in with Spotify. This can be done through OwnTone’s own web interface. For more details, see OwnTone’s notes on Spotify. You should log in with the same Spotify account for both the OwnTone server and the Home Assistant Spotify integration.