Met behulp van een Raspberry Pi en een DVB-T USB ontvanger van enkele euros kun je het vliegverkeer en P2000 hulpdienst meldingen ontvangen. Je kunt er ook ‘gewoon’ FM radio mee beluisteren, handig als je zelf een Raspberry Pi Radio wilt maken en er niet altijd een internet verbinding beschikbaar is.
Om FM radio te kunnen luisteren via de DVB-T USB ontvanger is het noodzakelijk om de RTL SDR driver te installeren, mocht je deze al geïnstalleerd dan kun je direct hieronder doorgaan naar de stap: ‘FM Radio ontvangen’.
Gebruikte componenten
• DVB-T SDR+DAB+FM TV Tuner Receiver USB Stick RTL2832U+R820T2
Raspberry Pi Zero, Raspberry Pi 2, Raspberry Pi 3
Raspbian Jessie (2017-04-10 kernel 4.4)
RTL SDR installeren
Om gebruik te kunnen maken van de DVB T USB stick moeten we een aantal libraries installeren:
sudo apt-get -y install cmake build-essential libusb-1.0 qt4-qmake libpulse-dev libx11-dev qt4-default
Nadat de packages zijn geïnstalleerd gaan we de RTL SDR driver installeren.
mkdir -p ~/src/ cd ~/src/ git clone git://git.osmocom.org/rtl-sdr.git cd rtl-sdr mkdir build cd build cmake ../ -DINSTALL_UDEV_RULES=ON make sudo make install sudo ldconfig
Om te voorkomen dat de standaard Raspbian drivers gaan conflicteren plaatsen we deze op de blacklist configuratie. Open het bestand raspi-blacklist.conf. In de meeste gevallen is dit nog een leeg bestand.
sudo nano /etc/modprobe.d/raspi-blacklist.conf
Voeg aan het bestand de volgende regels toe:
blacklist dvb_usb_rtl28xxu blacklist rtl2832 blacklist rtl2830
Sla de wijzingen op met ctrl + X, Y, enter.
Plaats nu de DVB-T USB stick en herstart de Raspberry Pi.
sudo reboot -h 0
Nadat de Raspberry Pi is herstart kunnen we gaan testen of de drivers correct zijn geladen en de DVB-T USB stick is gedetecteerd door Raspbian. Voer hier het onderstaande commando uit:
rtl_test
Breek de test af met ctrl + C, belangrijk is dat in de eerste regels de DVB-T USB stick wordt gedetecteerd:
Found 1 device(s):
0: Realtek, RTL2838UHIDIR, SN: 00000001
Mocht de stick niet worden gedetecteerd controleer dan alle bovenstaande stappen.
FM Radio ontvangen
Als de DVB-T USB stick correct is gedetecteerd dan kunnen we naar radiozenders gaan luisteren. Sluit een luidspreker of koptelefoon aan op de Raspberry Pi en voer het onderstaande commando uit.
rtl_fm -f 100.7M -M wbfm -s 200000 -r 48000 | aplay -r 48k -f S16_LE
In het voorbeeld stemmen we de FM ontvangst af op 100.7 Mhz (in dit geval Q-Music, regio Eindhoven) en sturen ontvangen signaal via aplay naar de audio uitgang van de Raspberry Pi.
Wil je het volume aanpassen, dan kan dat via de amixer tool, start deze als volgt:
amixer set PCM -- 100%
In het voorbeeld stellen we audio output in op 100% volume.
Hij zou eigenlijk via de smartphone moeten te bedienen zijn 🙂
Werkt de rtl_test niet de eerste keer, shutdown -h now, en trek even de stekker uit de wandcontactdoos.
Sluit daarna de Raspberry weer aan en test nogmaals.
Daarna werkte de rtl_test hier wel.
Helaas kreeg ik later deze fout:
[22:29 root@RB2-171-EHV ~] > rtl_fm -f 100.7M -M wbfm -s 200000 -r 48000 | aplay -r 48k -f S16_LE
aplay: main:612: invalid rate argument ’48k’
Found 1 device(s):
0: Realtek, RTL2838UHIDIR, SN: 00000001
Using device 0: Generic RTL2832U OEM
usb_claim_interface error -6
Failed to open rtlsdr device #0.
en daar heb ik nog geen oplossing voor gevonden.
>aplay: main:612: invalid rate argument ’48k’
rtl_fm -f 100.7M -M wbfm -s 200000 -r 48000 | aplay -r 48000 -f S16_LE