Streaming Music
Sure, your new Satellite1 can control smart devices in your home, but what about streaming music?
This guide will show you how to stream music to one or many Sat1 devices around your home using Music Assistant, an open-source music player for Home Assistant that supports a wide range of providers, including Spotify, Apple Music, YouTube Music, and more.
Install Music Assistant
There are a few ways to install Music Assistant. Please read more here:
Add a Music Provider
Add a music provider like Spotify, Apple Music, YouTube Music, or many other sources by following the instructions below.
You must have a paid subscription to some of these music providers to use them with Music Assistant.
Connect a Music Provider to MA
Add Sat1 via Home Assistant Protocol
If you don't care about synchronized multi-room music playback, this is a great way to get started.
-
Add HA Player Provider
Go to "Settings -> Add Player Provider" and select "Home Assistant MediaPlayers". -
Import HA Media Players
Select the Home Assistant media players you want Music Assistant to stream music to. -
Name Your HA Speakers
Go to MA "Settings -> icon" and select "Configure". Name your Sat1 and keep the HA settings at default.
Add Sat1 via Snapcast Protocol
If you have multiple Satellite1 devices, you can use our Snapcast implementation to stream synchronized multi-room music or even pair two Sat1 speakers together for true left/right stereo sound.
Software Requirements
- Sat1 must be running firmware v1.0.3 or higher.
- Home Assistant should be running 2025.7.x or higher.
- Music Assistant should be running 2.5.7 or higher.
Network Requirements
- Ports 1704 & 1705 must be open for the Snapserver to communicate with the Sat1 Snapclient.
- Ports 4953 through 5153 must be open per Music Assistant's Snapcast requirements.
- mDNS is recommended for the Snapserver to autodetect the Sat1 Snapclient.
-
Add Snapcast Player Provider
Go to MA "Settings -> Add Player Provider" and select "Snapcast" to install the Snapserver. Leave all the server settings at default. -
Name Your Sat1 Snapcast Speakers
Go to MA "Settings -> icon" and select "Configure". Name your Sat1 and keep the Snapclient settings at default.Sat1 Snapcast Speaker(s) Missing?
- Power cycle the Sat1.
- Play music on any visible Snapcast speaker to view the hidden speakers grouped with it. This can happen after snapserver restarts.
- Check that the correct ports are open.
- Manually add your Snapserver's IP address to the Sat1's firmware. Read more here.
DSP to Achieve Better Sound
Using Music Assistant's DSP equalizer can significantly improve the sound quality of your Sat1.
DSP & Snapcast Speaker Grouping
All speakers in a Snapcast group will adopt the main speaker's DSP equalizer settings. In the future we will have individual equilizers built-in to the Sat1.
Snapcast Multi-Room Music Playback & Dynamic Grouping
This will enable you to dynamically add or remove speakers to a group for synchronized multi-room music playback.
-
Play Music on Main Speaker
Click a track, choose "Play On", select your main speaker, then click the track again and choose "Play Now". -
Show All Speakers
-
Manage Speaker Group
Click in the blank area next to the song tile to expand and view all Snapcast speakers. Select or deselect speakers to add or remove them from the group.Sat1 Snapcast Speaker(s) Drifting Out of Sync or Stuttering?
- Restart Music Assistant (this restarts the Snapserver).
- Restart Sat1
- Turn off Music Assistant DSP Equalizer on all speakers
- Run your own Snapserver instead of the one built-in to Music Assistant
- Make sure your Sat1 has a good Wi-Fi connection
Snapcast Multi-Speaker Stereo Playback & Static Grouping
This feature lets you semi-permanently group Sat1 speakers, such as combining all your upstairs speakers into one group or pairing two Sat1 speakers for stereo sound.
-
Create a Group Player
-
Name the Stereo Pair Group
Select "Snapcast Group Type". Keep "Dynamic Group" off. Give the group a name and add the two Sat1 speakers you want in the stereo pair. -
Set Channel Output
In Home Assistant, navigate to "Settings -> Devices & Services -> ESPHome" and set the correct "Speaker Channel Output" for each speaker.Tips:
- Channel selection only relates to the built-in speaker and not audio coming out of the headphone jack.
- If Music Assistant's volume control is not controlling all speakers in the group, then restart things.
Controlling Music with Your Voice
Beta Feature Zone!
These capabilities are still rough around the edges. Please be patient. :)
Not only do we want to say, "Hey Jarvis, turn down the volume" or "Hey Jarvis, play the next song", but we also want to say, “Hey Jarvis, play the Beatles,” and have it play on that speaker (or at least ask which speaker to use). Currently, this is hard to do, but not impossible.
To achieve all this, I highly recommend reading Music Assistant’s Voice Support Repository. However, I have personally found these implementations to be cumbersome and unreliable and instead have been using a different solution I'll share here (although it does currently require cloud AI).
-
Cloud AI Conversation Agent
Use a voice pipeline with a Cloud AI conversation agent. Tick on "Prefer handling commands locally" to get the best results. -
Edit Speaker Device
In Home Assistant, navigate to "Settings -> Devices & Services -> Music Assistant" and open the context menu to "Edit Device" for each speaker. -
Good Naming Conventions
Give the device an intuitive name. Be sure to assign an area. Click Update. -
Entity Settings
Click on the newly renamed device to see all its entities. Then click on the actual media player entity in the controls section. Click the settingsicon.
-
Expose Speaker to Assist
Click on "Voice assistants" and toggle on "Assist" to expose the Music Assistant speaker to your voice assistant.
My Results:
- Playing a song by artist or track name works fairly well.
- If you don’t specify a speaker, it sometimes chooses the right one automatically; therefore it is best to explicitly specify which speaker you want to control.
- You can’t control multiple speakers in an area (yet).
- You can’t group or ungroup Snapcast speakers (yet).