Bluetooth Speakers using Raspberry Pi

hi guys long time since i wrote a tutorial, this tutorial tells you how you can use any old speaker lying around your house into a wireless bluetooth speaker, this can also be an cheap bluetooth audio device receiver for your car. This is not my original work, but modified(added a few steps/changed a few) tutorial from who has also taken help from Colin CW, i am reproducing this tutorial because this is the only tutorial that worked for me and i don't want it to disappear from the World Wide Web when i really need it. thanks Kmonkey for this awesome tutorial. Another way to have an wireless speaker is using AIRPLAY here
Remove these adsRemove these ads by Signing Up

Step 1: What you need?

1 Raspberry pi (i am running Occidentalis_v02.img from adafruit)
1 speaker
1 Male-to-male 3.5 mm audio jack
1 bluetooth dongle ( check here for list of devices that work ) do check using the command hcitool scan
1 ethernet connection for pi/ wifi (how to connect a wifi dongle to Raspberry pi) (all u need to do is edit "/etc/network/interfaces" file)

Step 2: Installing the softwares...

you need to install a couples of things before you can get started :-)

sudo apt-get update

sudo apt-get install bluez pulseaudio-module-bluetooth python-gobject python-gobject-2 bluetooth blueman

sudo usermod -a -G lp pi

sudo nano /etc/bluetooth/audio.conf

add the following after [general] in nano 


CTRL+X to close nano, Y to save the file

sudo nano /etc/pulse/daemon.conf

add the following line under ;resample-method = speex-float-3

resample-method = trivial

run the following command to reboot the PI

sudo reboot

if you have a monitor connected to your PI you can skip this next step 

Step 3: Installing the VNC server

if you have a monitor connected to your PI you can skip this step, if you use SSH like me the following steps will install a VNC server on the PI, so that you can go into the LXD desktop.

apt-get install tightvncserver

Setup vnc password by the following command


reboot the pi

sudo reboot

run the following command to create a desktop you can connect to.

vncserver :0 -geometry 1920x1080 -depth 24 

dmüller1010 months ago
I just added a USB-soundcard to the Pi.

with some changes in the sudo nano /etc/modprobe.d/alsa-base.conf and amixer cset numid=1 0 I can play songs which are at the pi, but bluetooth streaming doesn't work anymore.

What should I change, that the bluetooth streaming will work again?

thank you :)
dantheman_21311 months ago
Hey guys! I used the work here to build a much better version of a portable A2DP bluetooth receiver then what's provided here. Check out my guide!
critak1 year ago
After my smartphone is connected to the Pi i ALWAYS have to enter
pactl load-module module-loopback source=bluez_source.10_10_FF_2B_2B_2E sink=alsaput.platform-bcm2835_AUD0.0.analog-stereo

Is there a way to automate that ? And let it also work after a reboot ?!?
sajingeo (author)  critak1 year ago
you could write a python script that would search for your device an connect it, i was trying to write one... i have attached the link to the code on git hub, if you could mod it ... u have to add

su -c "python /home/pi/Desktop/bluez/" pi

in you /etc/rc.local file and..
comment /etc/inittab(sudo nano /etc/inittab)

#1:2345:respawn:/sbin/getty 115200 tty1
like this

#1:2345:respawn:/sbin/getty 115200 tty1
and add this below
1:2345:respawn:/bin/login -f pi tty1 /dev/tty1 2>&1

this would automatically startup bluetooth, search for your device for 3 seconds, if found it would link it to the ALSA audio else it would exit, u have to modify the code to work with your phone/device bluetooth MAC address. I am still working on the code, feel free to use the idea and make it work better.

Get More Out of Instructables

Already have an Account?


PDF Downloads
As a Pro member, you will gain access to download any Instructable in the PDF format. You also have the ability to customize your PDF download.

Upgrade to Pro today!