Skip to content

Installation — Home Assistant Addon

import { Aside, Steps } from ‘@astrojs/starlight/components’;

AddonBest forIngress portDefault player-port baseStartup default
StableEveryday use80808928Auto
RCRelease-candidate testing80819028Manual
BetaEarliest prerelease testing80829128Manual
  • Home Assistant OS or Supervised
  • Bluetooth adapter accessible to the HA host
  • Music Assistant running on your network
  1. Add the addon repository

    Use the button to add the repository automatically:

    Add repository to HA

    Or manually: Settings → Add-ons → Add-on store → ⋮ → Repositories and add:

    https://github.com/trudenboy/sendspin-bt-bridge
  2. Choose the addon variant

    Install Sendspin Bluetooth Bridge for the stable track. Install the RC or Beta variant only when you specifically want prerelease builds.

  3. Configure the addon

    On the Configuration tab:

    sendspin_server: auto
    sendspin_port: 9000
    web_port: 8090 # optional: extra direct listener on the host network
    base_listen_port: 8928 # optional: base port for players without explicit listen_port
    update_channel: stable # controls update checks only; does not switch addon variant
    bluetooth_devices:
    - mac: "AA:BB:CC:DD:EE:FF"
    player_name: "Living Room Speaker"
    - mac: "11:22:33:44:55:66"
    player_name: "Kitchen Speaker"
    adapter: hci1
    static_delay_ms: -500
    listen_port: 8935 # optional per-device Sendspin port override
    listen_host: 192.168.1.50 # optional advertised host/IP for URL display
  4. Start the addon

    Start the addon. The stable addon defaults to auto-start; RC and beta default to manual start so prerelease installs are easier to keep separate.

  5. Connect to Music Assistant features

    Open the web UI → Configuration → Music Assistant and click 🏠 Sign in with Home Assistant if you want MA metadata, transport controls, queue actions, and group-volume sync.

  • Ingress stays fixed per addon track. Stable uses 8080, RC uses 8081, beta uses 8082.
  • web_port does not replace ingress. It opens an additional direct listener on the HA host network. Your sidebar link and Open Web UI button still use HA Ingress.
  • base_listen_port sets the default Sendspin player range for devices without an explicit listen_port.
  • Device listen_port wins per player. Use it when one speaker needs a fixed port.
  • Device listen_host changes the advertised host/IP only. The player still binds on 0.0.0.0 internally.

Use Open Web UI on the addon page or the HA sidebar entry for the normal ingress path.

If you set web_port, you also get a direct URL on the HA host network:

http://<ha-host-ip>:<web_port>

This is useful for direct diagnostics or API access, but ingress remains the primary HA-integrated path.

  • The installed addon variant determines whether you are on stable, RC, or beta code.
  • The update_channel option only controls which releases the in-app updater checks for (stable, rc, or beta).
  • Changing update_channel does not switch the installed addon track.
  • To move from stable to RC/beta, install that addon variant explicitly from the Add-on Store.

The addon requests audio: true, so Home Assistant injects the audio bridge automatically. No manual PulseAudio or PipeWire socket mount is required.

Changes to devices, adapters, web_port, base_listen_port, and Music Assistant connection settings take effect after a restart. Use Restart on the addon page or Save & Restart in the web UI.