If you have ever wanted to use an old stereo system with Bluetooth, or create a whole-home sound system, then Balena Sound is exactly what you need. I’ll show you how to get it working with a Raspberry Pi.

Balena Sound

Balena Sound is a product that turns your audio-capable Raspberry Pi into a Bluetooth, Spotify Connect, or Apple Airplay sound system.  Just hook up a receiver or spoke amplified speakers to the Pi audio output, and you’re good to go.

If you have an old Hi-fi system that sounds great but can’t connect to your modern sound sources, then Balena Sound will be your new best friend. And you don’t have to restrict yourself to just one unit, with Balena Sound you can have up to 10 units in your home, all synchronized to the same sound source.

You manage everything from your Balena Sound online control panel, so you’ll need to create a free Balena account.  Head over to the Balena Sound website and do that, you can sign up with your email address or use your GitHub account to log in.

Raspberry Pi Requirements

Balena sound is capable of working with any Raspberry Pi, as long as it has some method of connecting to your sound system. 

The Raspberry Pi 3 and Raspberry Pi 4 both have a 3.5mm audio jack, so they can be used right out of the box. As a matter of fact, so can the older Raspberry Pi 2, if you still have one around.

You can also use a Raspberry Pi Zero, however, you’ll need to attach a Digital to Analog Converter, or DAC, to it.

You can also use a DAC with a Pi 3 or Pi 4 for improved sound quality.  Balena Sound supports several Raspberry Pi DAC HATs.

Additional Requirements

The only other thing that you’ll need aside from your Raspberry Pi (and, optionally, a DAC) is a MicroSD card. The requirements here are not too stringent, a 16GB card will work well.

You’ll also need a method of burning an image file, packaged as a ZIP file, onto your microSD card. One of the most popular ways of doing this is to use another Balena product, Balena Etcher. It’s a free utility that is available for all operating systems.

If you already have a MicroSD burner that accepts ZIP images to can use that instead.

Getting Started

Gather your supplies (Raspberry Pi board and MicroSD card) together, along with any audio cables that you’ll need to hook up your sound system. Of course, you’ll also need a power supply for your Raspberry Pi.

I will assume that you have already created your Balena account, so the first step is to log in to your Balena console.

Create a Fleet

Once you have logged in, you’ll be prompted to create a “fleet”. A “fleet” is like a fleet of ships or trucks, it is just another name for a group of similar things. In this case, your “fleet“ will consist of one or more Raspberry Pi boards.

Give your fleet the following information:

  • A Fleet Name – this can be pretty well anything you like.
  • Choose a Device Type – select a Raspberry Pi board from the drop-down list.
  • A Fleet Type – Choose “Starter”.

Once you have done this, click the Create new fleet button, and your fleet will be created.

In regard to selecting a device type, you can select any Raspberry Pi type, even if you plan to use multiple models of Raspberry P{i boards in your whole-home system. You can have different types of boards in the same fleet. Just select something identical to one of your boards.

Enter into your Fleet Summary and proceed with the next step.

Add a Device

Your Fleet can contain one or more Raspberry Pi boards, and each board is considered to be a “device”.  So you’ll need to add one to start using Balena Sound.

In your Fleet Summary click the Add device button, This will bring up a modal window, where you’ll enter details about your device and then download an image to burn onto the MicroSD card.

First, select your device type, in other words, what type of Raspberry Pi board are you using? If you’re using the same type of board as you set the Fleet device type to, then this field is already populated for you.

Keep the OS type and version as the suggested values, Balena will suggest balenaOS and the latest version.

Change the edition to Development, this is an important step, so don’t neglect it.

For Network Connection, you have the choice of having either Ethernet or both Ethernet and WiFi. Select the connection type that matches your installation. This will be used when you have more than one device in your system, an Internet connection is always required so that you can manage your Balena Sound devices.

Burn your MicroSD Card

Once you have selected all the options for your device, you’ll need to burn a MicroSD card with a customized device image. There are two ways you can do that, and they both involve the Flash button at the bottom of the device window.

If you already have your MicroSD card on your computer, and you have installed Balena Etcher, then clicking the Flash button will launch Etcher and will start the burning procedure.

If you want to download the image to burn later, or if you are using a different MicroSD burner utility, then click the arrow on the right side of the Flash button.  You’ll get a menu here, select “Download balenaOS” and a ZIP file will be downloaded to your computer. You may then use this file with your MicroSD burner software.

Using Balena Sound

Place the MicroSD card that you just burned into your Raspberry Pi, and then power it up. After a bit of flashing on the activity light, it will be ready.

If you have a video monitor (not really necessary) connected to your Pi then you’ll see a Balena logo when the device is ready.  You don’t really need a monitor or keyboard, however, as you’ll be managing the device using the Balena console.

Managing your Balena Sound Devices

The Fleet Summary screen will show all of your Balena Sound devices, and each device will be assigned a name. You can change this name, so in a multiroom system, you can keep track of where each device is.

Click on your device to manage it.

The device management screen has a wealth of information, probably more than you’ll ever need to know. You can do things like reboot and shut down your device, and manage individual services that are running on it.

If you’d like to change the device name, you can click the “pencil” icon at the top of the screen (beside the name) and type in a new one.

You can also monitor the temperature of the Raspberry Pi, as well as the CPU and memory usage.

There is also a Terminal screen so that you can SSH to the device and manage it at the command line.

Play Some Music!

Of course, the whole purpose of using Balena Sound is to play some music, so it’s time to give that a test! 

Grab your music source, which can be a phone, tablet, or computer, and open the Bluetooth console. Make sure the Bluetooth is enabled, and scan for nearby Bluetooth devices.

The Raspberry Pi running Balena Sound will show up with a name that starts with “balena”. Pair your device with it, there is no PIN code required.

Once you are paired, turn on your music player. You may need to set your player’s output to the Balena device you were just paired with.

If all goes well, you’ll be playing music with Balena Sound!

Adding a DAC

If you want to improve the sound quality, or if you’re using a Raspberry Pi Zero, then you’ll want to add a DAC. There are many of these devices available as Raspberry Pi HATs.

I used a Pimoroni PHAT DAC, which is a very inexpensive and popular unit. As with most HATs, it just plugs onto the Raspberry Pi GPIO. The board is sized to match the Raspberry Pi Zero, but it will work with any Raspberry Pi board.

Balena Sound supports many popular DAC boards.

You’ll need to modify a configuration file in the Balena Sound console to make the DAC work.

DAC Configuration

First, you’ll need to determine your DAC configuration values, using the chart on the Balena Sound website.

Now go to your Balena Sound console and select your device, the Raspberry Pi that you want to modify to use a DAC.

On the menu on the left side of the console, select Device Configuration

Now scroll down to the Custom Configuration section. 

Click the Add custom configuration button. A modal window will open, where you can set the Name and Value of your custom configuration parameter.

  • Name – This will be BALENA_HOST_CONFIG_dtoverlay
  • Value – Use the value for your DAC from the chart on the Balena website.

In my case, the value was “hifiberry-dac”.

Click the Add button when you have finished entering your configuration parameters.

Now go to the main page for the device and do a Shutdown. You’ll need to confirm this before it occurs. 

Observe the Raspberry Pi activity LED, when it stops flashing the system is shut down.  You can now pull the power cable and install your DAC.  Plug your sound system into the new DAC.

Power up the Raspberry Pi and wait until it is seen on the console. Now play some music through your device. It should now be coming from the DAC.

Conclusion

Balena Sound is a great product that is very easy to use. It lets you breathe new life into old sound systems, or set up the whole-home audio system you have always wanted.

So give it a try, and enjoy the music!

 

Music Everywhere with Balena Sound
Summary
Music Everywhere with Balena Sound
Article Name
Music Everywhere with Balena Sound
Description
Balena Sound lets you use a Raspberry Pi to turn your old stereo system or amplified speakers into a wireless sound device. It works with Bluetooth, Apple Airplay, and Spotify Connect. You can even use Balena Sound to build a whole-house audio system!
Author
Publisher Name
DroneBot Workshop
Publisher Logo

If you have a question...

Comments about this article are encouraged and appreciated. However, due to the large volume of comments that I receive, it may not be possible for me to answer you directly here on the website.

You are much more likely to get answers to technical questions by making a post on the DroneBot Workshop Forum. Your post will be seen not only by myself, but by a large group of tech enthusiasts who can quickly answer your question. You may also add code samples, images and videos to your forum posts.

Having said that, please feel free to leave constructive comments here. Your input is always welcome. Please note that all comments may be held for moderation.

1 Comment
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
3 months ago

I’ve tried everything– BalenaSound, RPiPlay, Shareport Sync, nothing works. I followed this tutorial TO THE LETTER, and it’s bullshit. Waste of time.

1
0
Would love your thoughts, please comment.x
()
x