In deze aflevering gaan we kijken hoe we de Bluetooth van de Raspberry Pi kunnen gebruiken om met een Bluetooth JBL speaker naar de Radio te luisteren. Ook gaan we een logo van het Radio station op de display tonen.
Allereerst gaan we ffmpeg installeren. Met dit programma kun je audio bestanden streamen. En nog veel meer. De website van FFMPEG zegt zelf: “decode, encode, transcode, mux, demux, stream, filter and play pretty much anything that humans and machines have created.”
Dit is dus een hele mooie tool. En nu de kracht van Linux. Type het volgende commando in.
We gaan voor de zekerheid eerst naar onze home directory.
cd
En nu installeren we FFMPEG.
sudo apt install ffmpeg
En hij is geinstalleerd.
Nu gaan we Bluealsa installeren. Met Bluealsa kun je Bluetooth apparaten registreren op je systeem.
sudo apt-get install bluealsa
sudo service bluealsa start
Schakel je JBL GO, of een ander BleuTooth device, in en druk op de Bluetooth discovery knop.
We gaan nu onze JBL GO zoeken.
sudo bluetoothctl
We komen nu in het bluetooth menu en zetten scan on.
[bluetooth] scan on
Ik schrok van het aantal devices wat er langs komt. Dit was een behoorlijke lijst.
In de lijst zie je de Bluetooth speakers staan.
[NEW] Device 30:C0:1B:C5:25:DD JBL GO
Het MAC adress is belangrijk dus deze copieeren we even naar kladblok o.i.d.
Let op: In de voorbeelden hieronder gebruik ik het MAC adress van mijn JBL GO. Gebruik hier het MAC Adress van je eigen Bluetooth Speaker.
Nu gaan we hem pairen, trusten en connecten. Het kan zijn dat je inmiddels weer op de discovery button op je speaker moet drukken.
[bluetooth] pair 30:C0:1B:C5:25:DD
[bluetooth] trust 30:C0:1B:C5:25:DD
[bluetooth] connect 30:C0:1B:C5:25:DD
[bluetooth] exit
Om Bluetooth af te kunnen spelen vanaf de User pi ,moet je de User pi aan de Bluetooth groep toevoegen. Anders gaat het niet werken.
getent group | grep pi
Je ziet we zijn geen lid van de bluetooth groep. Nu voegen we de User pi toe aan de Bluetooth groep.
sudo usermod -G bluetooth -a pi
getent group | grep pi
We gaan het systeem herstarten en loggen opnieuw in.
sudo shutdown -r now
Na de herstart moet je de JBL GO speaker opnieuw connecten.
bluetoothctl connect 30:C0:1B:C5:25:DD
We gaan eens kijken of het allemaal werkt. We downloaden een klein wav filetje om te testen.
wget www.kozco.com/tech/organfinale.wav
En dit spelen we af.
aplay -D bluealsa:SRV=org.bluealsa,DEV=30:C0:1B:C5:25:DD,PROFILE=a2dp organfinale.wav
Als het werkte gaan we een standaard profiel aanmaken voor onze JBL GO speaker.
cd
sudo nano ~/.asoundrc
In dit filetje plakken we het volgende profiel. Let op dat je het MAC adress van je eigen speaker in het filetje plakt.
defaults.bluealsa.interface “hci0”
defaults.bluealsa.device “30:C0:1B:C5:25:DD“
defaults.bluealsa.profile “a2dp”
defaults.bluealsa.delay 10000
pcm.btreceiver {
type plug
slave.pcm {
type bluealsa
device “30:C0:1B:C5:25:DD“
profile “a2dp”
}
hint {
show on
description “Bluetooth Receiver”
}
}pcm.!default {
type plug
slave.pcm “btreceiver”
}
We slaan dit op met CTRL X en Y en herstarten weer het systeem.
sudo shutdown -r now
Na de herstart weer connecten:
bluetoothctl connect 30:C0:1B:C5:25:DD
Na de herstart testen we de Radio Stream.
ffplay http://sc6.radiocaroline.net:8040
Als het goed is hoor je nu Radio Caroline. Volgende keer gaan we een logo op het display toveren.