71WJAlGlcAL._SL1500_

Projekte

Raspberry Pi als Radioempfänger benutzen (Autoradio, Car PC)

Wer schon mal an einen Car PC gedacht hat, wird sich sicherlich auch mit Radio-Empfang beschäftigt haben. Nun gibt es nicht all zu viele Möglichkeiten den Pi als FM Empfänger zu nutzen, eine ist allerdings das Si4703 Modul, welches hier verwendet wird.

In einem vorherigen Tutorial habe ich bereits gezeigt, wie man den Raspberry Pi ohne weiteres als Radiosender benutzen kann. In diesem Teil soll es darum gehen, wie man Funkfrequenzen empfangen und wiedergeben kann.



 

Zubehör

Um dein Raspberry Pi als Radioempfänger zu nutzen, brauchst du folgendes:

 

 

Aufbau

Der Anschluss des Si470x Moduls ist wie folgt:

si4703_Steckplatine

Raspberry PiSI470x
3.3V (Pin 1)3.3V
GND (Pin 6)GND
SDA (Pin 3)SDIO
SCL (Pin 5)SCLK
GPIO23 (Pin 16)RST

Auf dem schematischen Bild habe ich GND an Raspberry Pi Pin 25 angeschlossen, was auch ein Masse Anschluss ist.

 

Vorbereitung

(Damit die Software kompiliert werden kann, muss wiringPi installiert sein. Falls du das noch nicht getan hast, kannst du hier nachlesen wie das geht)

Als erstes aktivieren wir SPI und I2C. Falls du das bereits in einem vorherigen Tutorial gemacht hast, kannst du diesen Schritt überspringen.

sudo raspi-config

Unter “8. Advanced Options” gibt es den Eintrag “A7 I2C”, welchen wir aktivieren. Bei älteren Raspbian Versionen müssen die Einträge in der Datei /etc/modprobe.d/raspi-blacklist.conf auskommentiert (mit #) werden.

Anschließend bearbeiten wir die modules-Datei:

sudo nano /etc/modules

Am Ende der Datei fügen wir noch folgende zwei Zeilen ein:

Zuletzt installieren wir noch die benötigten Tools, falls sie noch nicht vorhanden sind.

sudo apt-get update
sudo apt-get install i2c-tools

 

 

Software

 

git clone https://github.com/achilikin/RdSpi && cd RdSpi

Anschließend kompilieren wir:

make

Bevor wir aber starten, muss das Modul über I2C erst aktiviert werden. Dazu erstellen wir ein weiteres Skript in diesem Ordner:

sudo nano i2c-init.c

Nach dem Speichern (STRG+O, STRG+X) kompilieren wir es.

gcc -o i2c-init i2c-init.c -lwiringPi

 

Dieses Skript initialisiert das Modul, sodass es verwendet werden kann (es muss nach jedem Neustart muss neu initialisiert werden, es würde also Sinn machen das Programm in den Autostart zu setzen).

sudo ./i2c-init

Um zu testen, ob es erkannt wurde, kannst du i2cdetect -y 1 eingeben, was eine solche Ausgabe erzeugen sollte:

     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00:          -- -- -- -- -- -- -- -- -- -- -- -- --
10: 10 -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
60: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- --
70: -- -- -- -- -- -- -- --

 

 

Test

Nachdem das Modul initialisiert wurde, können wir über das Aux Kabel unsere Lautsprecher / Kopfhörer verbinden (welche als Antenne dienen) und nach Sendern suchen.

Zu erst müssen wir dafür den Empfänger resetten:

sudo ./rdspi reset

Eine Frequenz einstellen und die Lautstärke (0-30) kannst du folgendermaßen:

sudo ./rdspi tune 95.00
sudo ./rdspi volume 10

Alle weiteren Befehle kannst du auf der Github Projektseite einsehen.

 

 

PS: Wenn du die kompilierten Dateien direkt und ohne ./ aufrufen willst, kannst du folgende Rechte verteilen:

chmod +x i2c-init
chmod +x rdspi

Dann muss nur noch die Pfadvariable ergänzt und eine Verknüpfung angelegt werden (den Pfad des aktuellen Verzeichnisses bekommst du mit pwd):

export PATH=$PATH:/home/pi/RdiSpi
cd /usr/bin
sudo ln -s /home/pi/RdSpi/i2c-init i2c-init
sudo ln -s /home/pi/RdSpi/rdspi rdspi

Im Anschluss solltest du von überall den Befehl aufrufen können.



, , , , , , , , , , , ,


1 Kommentar

  1. hf;-) sagt:

    cool was man alles machen kann!!

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind markiert *

Blog abonnieren

Abonniere Tutorials-RaspberryPi, um kein Tutorial mehr zu verpassen!