Editors Note: The instructions in this post are valid for Raspbian Jessie versions up to March 18, 2016. Bluetooth audio now works out of the box with the latest May 10, 2016 version. See our post about it here.
The Raspberry Pi is a handy little computer for so many uses, but Raspbian doesn’t come already set up for listening to audio over Bluetooth headphones or speakers. However, it’s not hard to do, it’s a lot of fun, and it works!. As I’m writing this, I’m listening to 40s Big Band music on my Pi 3 through my Bluetooth headphones.
The instructions in this post are for the February 26, 2016 version of version of Raspbian or Noobs, but they work with all previous versions of Raspbian Jessie. They work for the Raspberry any Pi version, although the Zero and the original Pi are not really powerful enough to stream from the internet. They work great for playing mp3 files with a media player like VLC.
Except for the Pi 3, you’ll need a Bluetooth adapter like the Plugable Bluetooth adapter. For the Pi Zero, you’ll also need a way to connect to the Internet like a Plugable USB-Ethernet adapter or WiFi adapter, along with an OTG cable and a powered hub like the compact Plugable 4-port USB 2.0 hub. Whichever Pi you use, you end up with is a great little music server that opens the door to a lot of fun projects.
Download the latest version of Raspbian Jessie and put it onto an 8 GB or higher mircoSD card. Make the necessary connections to the Pi and boot it up. If you installed the Jessie image directly without using Noobs, be sure to expand the file system by opening a terminal window, then typing:
Select the first option, then reboot.
Next, open a terminal and run the following commands to make sure everything is up-to-date. If you open this page in the browser on your Pi, you can copy and paste these commands directly into your terminal to avoid typos.
sudo apt-get update
sudo apt-get upgrade
Accept all offered upgrades from the upgrade command.
If you are using a Jessie version earlier than the February 26, 2016 version on a Pi 3, you will also need to issue this command:
sudo apt-get install pi-bluetooth
If you aren’t sure which Jessie version you have, go ahead and issue the command. If pi-bluetooth is already installed, you will get a message to that effect.
Set Up Bluetooth
1. Open a terminal and issue the following command to install the Bluetooth support software:
sudo apt-get install blueman pulseaudio pavucontrol pulseaudio-module-bluetooth
2. Plug in your Bluetooth adapter if you are using a Pi 2 or Zero.
3. Restart your Pi.
4. Click Menu > Preferences > Bluetooth Manager to open the Bluetooth Manager Window.
5. Follow the manufacturer’s instructions to make your Bluetooth headphones or speaker discoverable. Be sure to turn off Bluetooth on any other device you have previously used the adapter with to ensure it doesn’t automatically connect with that device.
6. In the Bluetooth Devices window that appears, click Search. You should see your headphones or speaker in the listed devices.
7. Right-click on your device and select Connect. Your device should connect. Blue, green, and blue symbols should appear at the right.
8. You should now be able to listen through your speakers or headphones. On the Pi 2 or Pi 3, try opening your favorite YouTube video in the web browser. The Pi Zero and original Pi don’t really have enough horsepower for YouTube, but you should get good results playing mp3 files with VLC. To install it, open a terminal and type:
sudo apt-get install vlc
9. Open Menu > Sound & Video > PulseAudio Volume Control to adjust volume and balance for your Bluetooth device. You should see your headphones or speaker listed under the Output Devices tab. You can mute the Pi’s speaker output by going to the Configuration tab and selecting Off for bcm2835 ALSA.
These instructions have been tested on the Pi 2, Pi 3, Pi Zero, and an original Pi B. The VLC player works well for playing mp3 files on any of those, and Youtube videos can be enjoyed on the Pi 2 and Pi 3, although there can be occasional skipping in the sound.
I hope this guide has been helpful. If you have any questions or comments, please comment below. Thanks!