Internetradio-Empfänger von Raspberry Pi. UKW-Radiosender auf Raspberry Pi. Schritt #3: Bearbeiten Sie die Konfigurationsdatei


Dieser Internetradio- und MP3-Player verfügt zur Bedienung über einen 3,5-HDMI-LCD-Touchscreen. Das ursprüngliche Projekt wurde von Adafruit veröffentlicht und das Projekt verwendet MPC, MPD und Pygame.

Komponenten von Internetradio und MP3-Player auf Raspberry Pi 3

Installieren von Internetradio und MP3-Player auf Raspberry Pi 3

  • Laden Sie Raspbian herunter und brennen Sie das Image auf microSD mit 8 GB oder mehr. Sie müssen auch wissen, wie Sie über SSH eine Verbindung zum Raspberry Pi herstellen. Schließen Sie eine Tastatur und eine Maus an
  • Befestigen Sie den LCD-Bildschirm am Raspberry Pi.
  • Öffnen Sie ein Terminalfenster und geben Sie ein

sudo raspi-config

  • Nehmen Sie erste Einstellungen für Zeit und Eingabesprache vor
  • Gehen Sie zu „Erweiterte Optionen“ und aktivieren Sie VNC, SSH und stellen Sie die Auflösung auf 640 x 480 ein
  • Starten Sie den Raspberry Pi neu
  • Das Image enthält für das Projekt unnötige Programme, die Platz beanspruchen, der zum Speichern von Musik benötigt wird. Daher entfernen wir Wolfram und Libreoffice, indem wir die Maus auf dem Pi verwenden und Hinzufügen/Entfernen oder über SSH auswählen

sudo apt-get purge wolfram-engine libreoffice* -y

sudo apt-get clean

sudo apt-get autoremove

Sudo apt-get update

sudo apt-get upgrade

  • Nach dem Update können Sie alles installieren, was Sie benötigen. Installieren Sie nun die LCD-Treiber.

Git-Klon https://github.com/goodtft/LCD-show.git

chmod -R 755 LCD-Anzeige

sudo ./MPI3508_600_400-show

  • Die mit Pi Radio verwendete Auflösung beträgt 640 x 480, daher müssen Sie config.txt ändern

sudo nano /boot/config.txt

  • und ändern Sie die Auflösung am Ende der Datei auf 640x480. Speichern, beenden und neu starten.
  • Zu diesem Zeitpunkt sollte der Pi auf dem Desktop und dem Touchscreen starten. Installieren Sie nun die Pi-Radio-Dateien.

sudo apt-get install mpc mpd

Git-Klon https://github.com/granpino/Pi-Radio-mp3-.git

chmod -R 755 Pi-Radio-mp3-

cd Pi-Radio-mp3-

sudo ./install.sh

  • Die Installationsdatei erstellt die notwendigen Playlists für MP3 und Internetradio. Auf dem Raspberry-Desktop sollte ein Symbol vorhanden sein. Um Pi-Radio zu öffnen, tippen Sie zweimal auf die Radio-Verknüpfung. Um den Desktop mit einem Klick zu ändern, gehen Sie zum Dateimanager, klicken Sie auf Bearbeiten und wählen Sie ganz unten Eigenschaften aus. Wählen Sie „Dateien mit einem Klick öffnen“.
  • Ich habe mich entschieden, die App vom Desktop aus auszuführen, weil ich andere Apps auf demselben Pi ausführen möchte, die den LCD-Bildschirm verwenden. Ich habe einige Beispiel-MP3s und Radiosender zum Testen beigefügt. Um weitere Radiosender zur Playlist hinzuzufügen, gehen Sie zu http://www.radiosure.com/stations/ und kopieren Sie die M3U-Links.

MPC Playlist speichern

  • oder bearbeiten Sie die Datei

sudo nano ~/var/lib/mpd/playlists/playlist

  • Fügen Sie MP3-Dateien hinzu und verschieben Sie sie in den Musikordner

sudo ls -1 /home/pi/Music/*.mp3 > /var/lib/mpd/playlists/mp3.m3u

In diesem Projekt verwandeln wir Ihren Raspberry Pi in ein leistungsstarkes UKW-Radio! Die Reichweite reicht aus, um Ihr Zuhause, ein selbstgebautes Autokino, ein Baseballfeld einer High School oder sogar eine Motorradparade abzudecken.

Für das Projekt benötigen Sie ein PiFM-Programm, das die Fähigkeiten Ihres Pi erheblich verbessert, sowie ein Stück Draht einer bestimmten Länge. Mit anderen Worten: Sie benötigen ein absolutes Minimum an Komponenten, um den Raspberry Pi zu steuern – SD-Karte, Netzteil, Platine selbst Raspberry Pi (auf AliExpress kaufen)- Nun, fügen Sie ein Stück Draht hinzu. Das Ergebnis sollte das coolste Pi-Gerät aus nur wenigen Komponenten sein.

PiFM wurde ursprünglich von Oliver Mattos und Oskar Weigl erstellt und dann von Ryan Grassel neu gestaltet. Mein besonderer Dank gilt der gesamten PiFM-Community für die Beratung. Das MAKE-Labor hat zum Projekt beigetragen – Skript PirateRadio.py, mit dem Sie Musikdateien ohne Verwendung der Befehlszeile abspielen können und außerdem eine automatische Verarbeitung und Verwaltung ermöglichen. Das Drehbuch wurde von einem jungen MAKE Labs-Spezialisten, Wynter Woods, erstellt. Der Quellcode ist zu finden.

NOTIZ: Die Rundfunkbandfrequenz des Raspberry Pi liegt zwischen 1 MHz und 250 MHz und kann sich mit Regierungsbändern überschneiden. Wir empfehlen, Ihre Übertragungen auf das Standard-FM-Band 87,5 MHz – 108,0 MHz zu beschränken (siehe Schritt 3) und immer eine Frequenz zu wählen, die noch nicht verwendet wird, um Frequenzüberschneidungen mit lizenzierten Sendern zu vermeiden.

Schritt #1: Machen Sie eine Antenne

  • Für den Bau einer Antenne benötigen Sie lediglich ein Stück Draht. Dazu müssen Sie ein 75 cm langes Kabel an Pin 4 anschließen (Dadurch können Sie eine Antenne in Form eines symmetrischen Halbwellenvibrators bei 100 MHz im mittleren FM-Bereich korrekt erstellen). Wir haben 40 cm massives 12 AWG (2,053 mm) Kabel verwendet, da das Gerät anfing zu reagieren, wenn das Kabel länger war.
  • Schneiden Sie den weiblichen Anschlussdraht ab und legen Sie ihn frei. Löten Sie es an ein Ende Ihrer Antenne und isolieren Sie die Lötstelle mit einem Schrumpfschlauch.
  • Tragen Sie etwas Aufwärmkleber um den Anschluss auf und platzieren Sie ihn auf dem 4 GPIO-Pin Ihres Raspberry Pi. Durch den Kleber wird die Struktur Ihrer Antenne steifer, sodass sie besser steht.
  • NOTIZ: Wenn Sie ein Raspberry Pi Starter Kit haben und es eilig haben, können Sie das männliche Verbindungskabel verwenden, das in das Cobbler-Erweiterungs-Riser-Board eingesteckt ist! (Beides ist im Paket enthalten). Dies funktioniert, aber die Reichweite ändert sich im Vergleich zu 40 cm massivem Kupferdraht mit 12 AWG (2.053 mm) um fast die Hälfte.

Schritt #2: Laden Sie das Disk-Image auf Ihre SD-Karte herunter und fügen Sie Musik hinzu

  • Um bei der Konfiguration des Systems Zeit zu sparen, hat MAKE Labs ein Disk-Image erstellt. Laden Sie es hier herunter (Fortgeschrittene Benutzer, die nur den Quellcode benötigen, finden die Download-Fußnote im dritten Absatz dieses Dokuments).
  • Der ursprüngliche PiFM-Code zeigte beeindruckende Ergebnisse. Das MAKE-Image partitioniert die Karte und erstellt eine Systempartition und eine Datenpartition. Außerdem können Sie Ihre Datenpartition automatisch bereitstellen. Das Bild verwendet einen Teil des Originalcodes und ermöglicht die Wiedergabe von MP3, FLAC und anderen Formaten. Das Skript wird beim Start ausgeführt PirateRadio. py, sodass Ihre Musik sofort ausgestrahlt wird, sobald Sie den Radiosender herunterladen. Letztendlich sparen wir dadurch viel Zeit. Sie können Dateien jedoch nicht einfach auf Ihre SD-Karte kopieren; Die Karte muss für die Arbeit vorbereitet werden.
  • Laden Sie das Bild auf Ihre SD-Karte herunter. Wenn Sie nicht wissen, wie das geht, machen Sie sich keine Sorgen, es ist ganz einfach. Sie können Win32DiskImager unter Windows oder Befehlszeilenanweisungen (1) verwenden, wenn Sie einen OSX-Computer verwenden. Ich vermute, dass Linux-Benutzer mit der Befehlszeile besser vertraut sind.
  • Für OSX- und Linux-Benutzer müssen Sie nur den PirateRadio-Bereich öffnen und loslegen. Benutzer von Windows-Betriebssystemen sollten unsere Anweisungen zum Verbinden Ihres Pi über SSH mit WinSCP befolgen.
  • Um Musik hinzuzufügen, kopieren Sie einfach Ihren Künstler- oder Albumordner in das Stammverzeichnis von „Pirate Radio“ auf der SD-Karte. Ihre Musikdateien werden in diesen Ordnern gespeichert, sodass Sie nicht alle Ihre Musiktitel zusammen im Hauptverzeichnis ablegen müssen.

Schritt #3: Bearbeiten Sie die Konfigurationsdatei

In der Datei können Sie die gewünschte Sendefrequenz einstellen Piratenradio. config. Öffnen Sie die Datei in einem Texteditor. Sie sollten Folgendes sehen:

Häufigkeit = 108,2 Shuffle = Wahr, Wiederholung_all = Wahr

  • Stellen Sie die Frequenz des Senders ein, den Sie im Radio senden möchten. Standard-UKW-Frequenzen reichen typischerweise von 87,5 MHz bis 108,0 MHz (108,2 war die höchste Frequenz, die unser Testradio ohne Überschneidungen mit anderen Sendern erreichen konnte).
  • Setzen Sie die Zufallswiedergabeoption auf „True“ oder „False“, um sie in alphabetischer Reihenfolge abzuspielen.
  • Setzen Sie „repeat_all“ auf „True“, wenn die Wiedergabeliste in einer Schleife abgespielt werden soll.

Schritt #4: Starten!

Stellen Sie Ihr UKW-Radio auf die gewünschte Frequenz ein und starten Sie den Raspberry Pi. Das Hochfahren des Mikrocomputers dauert etwa 15 Sekunden. Anschließend sollten Sie Ihre Musik laut und deutlich hören können.

Schritt #5: So funktioniert PiFM


  • Auszug aus dem PiFM-Wiki: „Das Programm nutzt Raspberry-Pi-Hardware; das bedeutet, breitbandige Taktsignale auf den GPIO-Pins für ein leistungsstarkes UKW-Radio zu erzeugen. Das bedeutet, dass Sie den Raspberry Pi nur mit einem Stück Draht (ca. 20 cm lang) verbinden müssen.“ ) in den GPIO-Pin 4 eingefügt und den Programmcode ausgeführt.“
  • Die Frequenzmodulation „wird durch Anpassen der Frequenz mithilfe eines Bruchteilers erreicht.“ Um beispielsweise eine Zielfrequenz von 100 MHz zu erhalten, wird das Signal zwischen 100,025 MHz und 99,975 MHz variiert, was zu einem Audiosignal führt.
  • Im Python-Code beträgt die Standardfrequenz 87,9 FM mit deaktivierter Zufallswiedergabe und Musiklistenschleife. Das Programm durchsucht die SD-Karte nach Musikdateien und erstellt eine Liste basierend auf den in angegebenen Optionen config Datei. Anschließend wird jede Datei je nach Typ an den Decoder übertragen. Danach wird jede Datei in ein für PiFM verständliches Monoformat neu kodiert. Dadurch können Sie nicht nur WAV-Dateien, sondern auch MP3-, FLAC-, M4A-, AAC- oder WMA-Dateien abspielen.

Schritt #6: Letzte Phase

Der Perfektion sind bekanntlich keine Grenzen gesetzt. Sogar für selbstgebaute tragbare Akustikgeräte, deren Benutzerpublikum nur eine Person umfasst. Ein sehr anspruchsvoller und manchmal zwanghaft hartnäckiger Mensch. Fast 5 Monate sind seit der Veröffentlichung des ersten Beitrags über Pi-Sonos vergangen. Während dieser Zeit gelang es der Software innerhalb dieser Akustik zweimal, sich dramatisch zu verändern. Der Grund für die Änderungen waren sowohl nützliche Ratschläge von Khabravianern als auch unsere eigene UX.

Pi-Sonos ist ein selbstgebauter Kompaktlautsprecher, der vom Sonos Play 1 inspiriert wurde. Der Zweck dieses Lautsprechers bestand in erster Linie darin, Musik von Internetradiosendern abzuspielen. Bei der Entwicklung habe ich Wert auf Minimalismus und Komfort gelegt: Schließen Sie es an eine Steckdose an und steuern Sie dann die Musik von Ihrem Smartphone/Computer/Tablet überall im Haus aus.


Wovon handelt der Artikel?

Zunächst geht es um Ausdauer und Neugier auf dem Weg zum Ideal. Unter dem Schnitt, Benutzername, wird es weder eine Lösung für ein globales Problem noch eine Beschreibung einer neuen einzigartigen Technologie geben. Der Artikel skizziert lediglich einen Vergleich gängiger Mediacenter für den Raspberry Pi, verrät deren Vor- und Nachteile sowie meine persönliche Vorstellung vom optimalen Rahmenwerk für einen Internetradio-Receiver. Tatsächlich habe ich bei der Entwicklung meiner eigenen Software für den Lautsprecher den Weg der Entwickler von Volumio nur teilweise wiederholt und einfach nur eine seiner Funktionen von Grund auf implementiert (sprich: „ein anderes Rad erfunden“).
Obwohl der Artikel das Thema Softwareentwicklung berührt, enthält er keinen Code, da der Zweck des Artikels darin besteht, die Idee und Funktionalität zu beschreiben und nicht den Prozess ihrer Umsetzung. Wenn das Thema Code für die Bewohner von Khabra von Interesse ist, werde ich versuchen, einen separaten Artikel zu verfassen, der den Entwicklungsprozess beschreibt.


Ursprünglich war die Softwarefüllung der Akustik OSMC, aber weise Leute machten in den Kommentaren darauf aufmerksam, dass Kodi (auch bekannt als OSMC) als „Gehirn“ für einen Internetradiosender zu fett sei. Es ist zu schlau und zu groß, aber Volumio eignet sich besser für Audioprojekte. Eigentlich ist es so gekommen. Volumio ist leichter, für eine Weboberfläche konzipiert und verfügt über eine fortschrittlichere und einfacher zu entwickelnde API. Es ist auch nicht erforderlich, dass ein HDMI-Kabel an der Rückseite herausragt, da Volumio in jedem Browser vollständig konfigurierbar ist.

Allerdings wies Volumio auch einige wichtige Mängel auf, die mich zu weiteren Nachforschungen veranlassten. Das liegt zum einen an der Ladezeit und zum anderen am fehlenden Autoplay. Nachdem ich die offizielle Dokumentation studiert hatte (aus der hervorgeht, dass Volumio ein Add-on für mpd (Music Player Daemon) ist), entschied ich, dass es an der Zeit war, meinen eigenen Wrapper in js namens RPi-Radio zu schreiben, der diese Probleme lösen würde Probleme. Sein Serverteil läuft auf Node.js, und der Clientteil (GUI), der React.js verwendet, war seit den Tagen der Verwendung von OSMC bereit; er musste nur ein wenig optimiert werden. So sieht es derzeit auf einem Smartphone-Bildschirm aus:


Nachfolgend finden Sie eine Tabelle, die die Vor- und Nachteile der einzelnen Frameworks deutlich zeigt.
Kriterium OSMC Volumen RPi-Radio
Ladezeit 35 Sek 45 Sek 20 Sek
Autoplay beim Start Nein* Nein* Ja
Anzahl der Tippvorgänge auf dem Hauptbildschirm der „nativen“ Benutzeroberfläche eines Smartphones, um einen Radiosender aus der Favoritenliste auszuwählen** 5+1 Schriftrolle 4 1
Anforderungen an Monitor, Tastatur und Maus*** Ja Nein Nein
Webkontrolle teilweise vollständig teilweise
Bearbeiten der Senderliste so la la normal so la la
Einfache Ersteinrichtung so la la Großartig mittelmäßig
Integration mit meiner GUI zur Steuerung über ein Smartphone mit Krücken mit Krücken aus der Schachtel
Einfache tägliche Nutzung ☆☆ ☆☆☆
* Tatsächlich ja, aber Sie müssen eine Krücke bauen und sie in das automatisch ladende Raspbian stecken; Im Fall von OSMC ist die Krücke in Python und im Fall von Volumio in JS oder Bash geschrieben. Aber in beiden Fällen funktioniert es immer noch nicht wie erwartet.
** Für OSMC und Volumio sind dies sehr wichtige Parameter, da alle diese Scroll-Tips jedes Mal ausgeführt werden müssen, wenn der Lautsprecher eingeschaltet wird. Für RPi-Radio ist dieser Parameter zwar minimal, aber dennoch nicht so wichtig, da der Lautsprecher beim Einschalten automatisch zu spielen beginnt.
*** Damit ist die physische Verbindung von Monitor, Tastatur und Maus mit dem Raspberry Pi selbst gemeint, also die Fälle, in denen es nicht möglich ist, das integrierte Webinterface oder die SSH-Verbindung zu verwenden.

Unter diesem Spoiler verbirgt sich eine detaillierte Erklärung der einzelnen Vergleichspunkte.

Eine Ladezeit von 20 Sekunden ist meiner Meinung nach das Minimum, das man erreichen kann, ohne sich für dieses Projekt in den Dschungel der Raspbian-Optimierung zu stürzen. Genau so lange dauert es, bis Raspberry das Betriebssystem lädt und den mpd-Dienst startet. Wahrscheinlich lässt sich dieses Ergebnis verbessern, wenn wir microSDHC durch microSDXC mit einer höheren Lese-/Schreibgeschwindigkeit ersetzen (ich werde es nach Möglichkeit prüfen). Überraschenderweise lädt Volumio, der vorgibt, leicht und wendig zu sein, länger als der OSMC-Monster-Harvester. 45 Sekunden Wartezeit liegen jenseits der Schwelle einer komfortablen Bedienung, und dies war der Hauptgrund, Volumio zu verlassen.

Autoplay ist in mpd standardmäßig vorhanden, ich musste nichts tun, um es zu aktivieren – praktisch! Obwohl es sich in Volumio um einen MPD-Wrapper handelt, wurde diese Funktion zugunsten eines schönen Begrüßungsklangs unterdrückt. Wie ich bereits geschrieben habe, können Sie ein Skript erstellen und es in den Startvorgang einfügen. OSMC hat eine ähnliche Situation.

Bei OSMC erfolgt der größte Teil der Benutzerinteraktion über den Monitor: Es gibt eine schöne Benutzeroberfläche, die Möglichkeit, Videos und Bilder anzusehen, Nachrichten zu lesen und das Wetter zu beobachten – viele Dinge, die meine Kolumne in ihrem Leben nie tun wird.

Die Webverwaltung von OSMC ist jedoch sehr eingeschränkt und Sie können die Liste der Lieblingssender im Radio-Plugin nicht einmal aus der Ferne konfigurieren – nur über den Monitor. Bei Volumio hingegen erfolgt alles nur über die Weboberfläche. Am bequemsten bearbeiten Sie die Senderliste im Browser auf einem Desktop/Laptop, können diese aber bei Bedarf auch auf einem Smartphone nutzen. Mit RPi-Radio können Sie nur über die Weboberfläche einen Sender auswählen und den Ton anpassen. Die Liste der Stationen und alles andere muss über die Konsole per SSH erfolgen. Die Liste der Sender ist am schwierigsten: Während OSMC und Volumio über eigene umfangreiche Bibliotheken von Internetradiosendern verfügen, musste ich bei RPi-Radio die Adressen meiner Lieblingssender manuell im JSON-Format eingeben. Es ist unbequem, aber nur einmal (oder mehrmals) im Leben.

OSMC hat mit der Ersteinrichtung die schlechtesten Erfahrungen gemacht. Zuerst müssen Sie einen Monitor an den Raspberry anschließen und das Radio-Plugin konfigurieren. Anschließend müssen Sie die Audioausgabe an einen externen IQAudio-DAC (den auf der Suptronics X400-Karte) über die Konsole oder über SSH konfigurieren. Das DAC-Setup von RPi-Radio ist das gleiche, aber zumindest wird alles andere über ssh erledigt. Der Spitzenreiter in dieser Kategorie ist natürlich Volumio – um Ton über einen externen DAC auszugeben, müssen Sie lediglich den entsprechenden Eintrag aus der Dropdown-Liste im Einstellungsmenü auswählen. Es gibt sogar einen Vergleich auf der offiziellen Suptronics-Website (http://www.suptronics.com/xseries/x400.html).

Die GUI in RPi-Radio ist eine einfache Webseite, die in React.js implementiert ist. Der Serverteil, der für die Interaktion zwischen der Client-GUI und mpd verantwortlich ist, läuft auf Node.js und ist ein einfacher HTTP- und WebSocket-Server, der auf der Kombination Socket.io + http + Express basiert. Es läuft auf Raspbian als Dienst, wenn das System unmittelbar nach dem Start des mpd-Dienstes eingeschaltet wird, und verwendet das Modul mpc-js zur Verwaltung von mpd. Die Client-GUI ist für jeden Browser in meinem Heimnetzwerk einfach über die IP oder den Hostnamen der „Himbeere“ zugänglich. Perfekt.


RPi-Radio-Quellen veröffentlicht am

Die Vielseitigkeit eines Mini-PCs kennt, wie bereits mehrfach gesagt, keine Grenzen. Um einzigartige Projekte zu erstellen, reichen grundlegende Programmierkenntnisse und ein freier Tag aus. Aber nicht jeder hat zusätzliche Zeit, sondern möchte etwas mit eigenen Händen machen. Aus diesem Grund haben wir einen kurzen Artikel darüber vorbereitet, wie Sie über das Internet oder Plug-Ins Radio auf Raspberry hören können.

Internetradio auf Raspberry Pi

Um mit dieser Methode einen Radiosender zu erstellen, benötigen wir ein Gadget-Modell, das mit dem entsprechenden Modul ausgestattet ist. Für mehr Komfort können Sie ältere Modifikationen mit integriertem WLAN-Modul verwenden, wodurch viele unnötige Kabel entfallen. Dann beginnen wir mit der Herstellung eines Internetradioempfängers mit dem Raspberry Pi, indem wir die folgenden Anweisungen befolgen:

  1. Wir schließen an die Platine ein Audiogerät an, von dem Musik abgespielt wird. Auf Wunsch können Sie eine Hülle und einen kleinen Bildschirm für das Gadget wählen.
  2. Wir schreiben den Befehl „sudo_apt-get_install_mplayer“, der einen Player auf dem Mini-PC installiert, der die gängigsten Audiodateiformate abspielen kann, darunter auch Radiosendungen.
  3. Wir installieren auf einem Smartphone oder Tablet mit Android-Betriebssystem eine Anwendung, die ohne Anschluss einer Tastatur Befehle auf dem Raspberry ausführen kann. In unserem Fall ist es Raspi SSH. Darüber hinaus können Sie separate Tasten an das Gadget anlöten und die entsprechenden Befehle zum Ein- und Stoppen der Wiedergabe von Radiosendern schreiben.
  4. Wir schreiben den Befehl zum Einschalten des Radios „mplayer_-playlist_http://direkter Link zum Radiosender“. Bitte beachten Sie, dass nur der registrierte Radiosender abgespielt wird. Um zu einem anderen zu wechseln, müssen Sie den Befehl erneut eingeben. Offizielle Links finden Sie auf den entsprechenden Websites und können für eine schnelle Navigation an einem praktischen Ort gespeichert werden.
  5. Um das Radio nach dem Hören auszuschalten, geben Sie den Befehl „killall_mplayer“ ein, der die Anwendung mit minimalem Risiko einer Beschädigung des Gadgets beendet, und trennen Sie dann den Mini-PC von der Stromquelle.

Um Internetradio auf Raspberry zu hören, können Sie außerdem ein Betriebssystem mit Unterstützung für entsprechende Anwendungen installieren oder Firmware mit vorgefertigten Dienstprogrammen verwenden (zu finden auf Github). Schauen wir uns nun die Funktionen der Verwendung von Raspberry mit einem RTL-SDR-Empfänger an.

Um den Mini-PC von einer dauerhaften Internetverbindung zu entkoppeln, können Sie in jedem verfügbaren Online-Shop einen kleinen SDR-Empfänger für Raspberry Pi und ein Display (PiTFT) mit einer Diagonale von 2,8 Zoll oder mehr erwerben. Befolgen Sie anschließend die Anweisungen:

  • Wir schließen das Display an und konfigurieren es. Laden Sie dazu das Image mit der gesamten erforderlichen Software herunter (direkter Link adafruit-download.s3.amazonaws.com/2015-02-16-raspbian-pitft28r_150312.zip) und flashen Sie es auf die Speicherkarte des Gadgets. Wenn das Betriebssystem bereits auf Raspberry installiert ist und Sie keine wichtigen Daten verlieren möchten, können Sie die Einstellungen manuell vornehmen (nur für erfahrene Benutzer).
  • Laden Sie RTL-SDR-Bibliotheken auf den Raspberry Pi herunter (auf Github finden Sie ein fertiges Archiv mit allem, was Sie brauchen, oder registrieren Sie jede Bibliothek manuell, was dringend nicht empfohlen wird).
  • Installieren Sie den Modul-Wrapper für Python. Geben Sie dazu den Befehl „sudo_pip_install_pyrtlsdr“ ein und warten Sie, bis die Installation auf der Speicherkarte abgeschlossen ist.
  • Wir installieren die FreqShow-Anwendung, die in Zukunft die Überwachung des Signalempfangs und die Möglichkeit bietet, Radio zu hören. Schreiben Sie dazu den Befehl „cd_~ Paragraph git_clone_https://github.com/adafruit/FreqShow.git Paragraph cd_FreqShow“.
  • Wir starten die Anwendung mit dem Befehl „sudo_python_freqshow.py“ und warten, bis alle Funktionen vollständig geladen sind.
  • Wir verwenden das Programm rtl_fm, um ein Radiosignal mit dem Befehl „rtl_fm_-f_104.7M (kann eine beliebige Frequenz sein) -M_wbfm_-s 200000_-r_48000_-_|_aplay_-r_48k_-f_S16_LE“ abzuspielen. Mit dieser Methode können Sie nicht nur die Frequenzen offizieller Radiosender hören, sondern auch alle Signale erfassen, die die Erfassungszone des Funkmoduls passieren.

Darüber hinaus können Sie auf dem Raspberry Gqrx SDR-Module verwenden, die für einen besseren Klang sorgen. Beim Betrieb dieser Module ist es jedoch deutlich schwieriger, das gewünschte Signal zu empfangen und einen stabilen Betrieb auf einem Mini-PC einzurichten, da sie in der Raspberry-Benutzergemeinschaft weniger verbreitet sind.

Damit sind alle nützlichen Informationen zur Nutzung des Internets und SDR auf Raspberry zum Radiohören abgeschlossen. Genießen Sie den klaren Klang Ihrer Lieblingsradiosender in kompakter Form und überraschen Sie Ihre Freunde mit den Möglichkeiten eines kleinen Gadgets.

Wenn Sie in einer Großstadt leben und sogar über einen einfachen Radioempfänger verfügen, können Sie mehrere Dutzend Radiosender im UKW-Bereich in sehr guter Qualität hören. Es scheint, dass das völlig ausreicht...

Allerdings haben terrestrische Radiosender mehrere Nachteile. Erstens ist der Signalempfang in manchen Gegenden schlecht, und zweitens ist es trotz der scheinbaren Vielfalt nicht immer einfach, einen Radiosender zu finden, der den Musikgeschmack voll und ganz trifft. Dazu noch nervige Werbung und ein eher begrenztes Repertoire der meisten Sender.

Es ist nicht verwunderlich, dass viele Nutzer inzwischen lieber Radiosender hören, die im World Wide Web ausgestrahlt werden. Derzeit liegt die Zahl der Internetradiosender bereits bei über 10.000. Über das Internet können Sie Programme von Sendern in fast jedem Land der Welt hören, die in einer Vielzahl von Sprachen senden. Aber den Computer einzuschalten, um Radio zu hören, ist, gelinde gesagt, umständlich. Irgendwie war es vertrauter und bequemer – ich drehte den Knopf und stellte den Sender ein …

Und so werde ich einen Internetradioempfänger bauen. Diese Idee kam mir, als ich überlegte, ob ich für ein Projekt den Mikrocomputer Raspberry Pi Modell B verwenden sollte, der nach dem Kauf des viel leistungsstärkeren Raspberry Pi 2 nicht mehr verwendet wurde.

Es gibt viele Internetradio-Projekte auf Raspberry Pi. Das Beste, was ich finden konnte, war Pi Radio. Autor - Bob Rathbone- arbeitet seit mehr als 2 Jahren an diesem Projekt. Besonders hervorzuheben sind die Offenheit und Zugänglichkeit aller Informationen sowie eine sehr detaillierte Beschreibung der Hardware- und Software-Konfigurationsmethoden.

Es war diese Entwicklung, die ich beschloss, zu wiederholen. Natürlich habe ich den Entwurf nicht einfach nur kopiert, sondern bin kreativ an den Prozess herangegangen und habe etwas Eigenes hinzugefügt.

Was ist Pi Radio? Hierbei handelt es sich um einen Internet-Receiver, mit dem Sie Online-Radiosender hören können. Darüber hinaus kann er Musikdateien von einem Flash-Laufwerk oder Netzlaufwerk in Ihrem Heimnetzwerk abspielen. Das Programm enthält viele verschiedene Servicefunktionen - Timer, Wecker, RSS-Nachrichten, Podcasts...

Die Verbindung zum Internet kann entweder kabelgebunden oder über WLAN erfolgen. Der Empfänger basiert auf dem beliebten Mikrocomputer Raspberry Pi und Sie können jedes Modell verwenden: B, B+, 2 oder Zero.

Bob Rathbone entwickelte mehrere Variationen der Schaltung und Software. Die Steuerung ist sowohl über einen Encoder als auch über Tasten möglich und zeigt Informationen auf einem 2- oder 4-zeiligen LCD-Display an. Sie können den Receiver mit der Fernbedienung steuern.

Das Display kann entweder direkt an die I/O-Ports des Raspberry Pi oder mithilfe einer PCF8574-basierten Platine über den I2C-Bus angeschlossen werden. Der Autor hat die Möglichkeit bereitgestellt, zwei weitere Arten von Displays zu verwenden – AdaFruit LCD mit I2C-Schnittstelle und PiFace CAD mit SPI-Schnittstelle.

Ich habe die Option wiederholt, ein zweizeiliges Display direkt an die I/O-Ports anzuschließen und die Encoder zu steuern. Die Ergebnisse waren für mich vollkommen zu meiner Zufriedenheit, und als der Bedarf an einem anderen Empfänger entstand, habe ich eine zweite Version erstellt, alles war gleich, wurde jedoch über Tasten gesteuert. In Zukunft werde ich diese beiden Modifikationen beschreiben.

Beachten Sie, dass ich zunächst versucht habe, das Display über den I2C-Bus mithilfe einer PCF8574-Karte anzuschließen. Ich habe viel Zeit damit verbracht, es einzurichten, aber am Ende musste ich diese Option aufgeben. Die Software ist recht komplex und umfangreich; offensichtlich hat der Autor einfach nicht die Kraft und die Möglichkeit, alle Optionen seines Radios gründlich zu testen.

Das Programm fror ständig ein, insbesondere beim Senden eines Befehls von der Fernbedienung. Es ist schwierig herauszufinden, was hier vor sich geht. Aber auch Optionen mit direktem Anschluss des Displays an den Raspberry Pi funktionieren zuverlässig. Daher empfehle ich nicht, den I2C- oder SPI-Bus in diesem Receiver zu verwenden.

Meiner Meinung nach hat der Autor allen möglichen Hilfsfunktionen zu viel Aufmerksamkeit geschenkt, zum Nachteil der Hauptfunktionen. Schließlich sind die Möglichkeiten des LCD-Indikators sehr begrenzt und das Ablesen von Nachrichten beispielsweise ist nicht sehr komfortabel. Die Verwendung des Empfängers als Wecker ist sehr riskant; wenn aus irgendeinem Grund kein Internet vorhanden ist, gibt es auch kein Radio. Und nachts kann der Strom abgeschaltet werden...

Im Allgemeinen hat jedoch alles geklappt, der Empfänger kann verwendet werden.

Im Wesentlichen handelt es sich bei dem Funkempfänger um eine Raspberry-Pi-Platine mit einem Display und zwei Encodern, die an die I/O-Ports angeschlossen sind. Mit einem davon wählen Sie einen Sender aus, mit dem zweiten regeln Sie die Lautstärke. Das verwendete Display ist das am häufigsten verwendete, basierend auf dem HD44780-Controller mit 2 Zeilen mit 16 Zeichen. Anstelle von Encodern können Sie 5 Tasten zur Navigation verwenden.

Für Liebhaber hochwertiger Sounds besteht die Möglichkeit, anstelle des AUDIO-Ausgangs des Raspberry Pi eine externe USB-Soundkarte zu verwenden.

Natürlich benötigt der Receiver eine Stromversorgung. Es stehen viele Optionen zur Auswahl – jedes stabilisierte Netzteil mit 5 Volt und einem Strom von mindestens 1,5 A reicht aus. Bedenken Sie, dass ein Telefonladegerät nicht funktioniert, Sie benötigen ein stabilisiertes Netzteil, die Spannung unter Last sollte nicht funktionieren unter 4,8 V fallen und ohne Last über 5,2 V ansteigen.

Nun, man muss ja irgendwie Musik hören, d.h. Ein Stereoverstärker oder Aktivlautsprecher sind erforderlich. Es gibt auch viele Möglichkeiten für jeden Geschmack (Hörvermögen) und Geldbeutel.

Ich beschloss, für dieses Projekt das Beste aus meiner Amateurfunk-Schrottkiste zu machen. Es enthielt einen hervorragenden Netzwerktransformator für den erforderlichen Strom und die erforderliche Spannung, einen Schaltstabilisatorchip LM2576-ADJ und einen guten und ziemlich leistungsstarken Stereo-Niederfrequenzverstärkerchip LM1876.

Der Autor schlägt vor, den Receiver einfach über den Netzschalter ein- und auszuschalten. Dem Raspberry Pi schadet dies zwar nicht, unter ungünstigen Umständen kann es jedoch zu Schäden am Dateisystem auf der SD-Karte kommen. Daher habe ich beschlossen, das Gerät mit einer Schaltung zum korrekten Schließen des Systems und Ausschalten der Stromversorgung zu ergänzen. Darüber hinaus hat der Autor einen solchen Modus bereitgestellt: Sie müssen die „Menü“-Taste 3 Sekunden lang gedrückt halten, dann weitere 30 Sekunden warten und den Strom ausschalten. Stimmen Sie zu – das ist sehr unpraktisch.

Das Ergebnis ist das folgende Diagramm. Dies ist meine erste Option mit Encoder-Steuerung. Meine Ergänzungen sind blau hervorgehoben.

Die Stimmung und Lautstärke werden über Encoder mit den Tasten SA1, SB1 bzw. SA2, SB2 gesteuert. Taste SB1 – ruft das „Menü“ auf, SB2 – „Stumm“-Modus. Encoder müssen eine um 90 Grad verschobene Impulsfolge erzeugen. Ich habe den Typ ES110501S-HA2 5-polig verwendet. Unter diesem Label waren sie in der Preisliste des Ladens aufgeführt.

Die Transistoren VT3...VT7 und Widerstände R11...R23 sind logische Pegelwandler von 3,3 - 5 V für die Anzeige. Es ist nicht erforderlich, diese Elemente zu installieren. Wie die Praxis gezeigt hat, arbeitet ein 5-Volt-Anzeiger normal mit logischen Pegeln von 3,3 V. Sollte es jedoch zu Problemen kommen, kann der Pegelwandler auf einer kleinen Platine direkt am Anzeiger montiert werden. Noch besser ist es, einen mit 3,3 V versorgten Indikator zu verwenden, aber solche Indikatoren sind recht selten und kosten deutlich mehr.

DA1 ist ein Empfänger einer Fernbedienung für Fernseher; am Ausgang verfügt er über einen Transistor in einer Schaltung mit gemeinsamem Emitter und einen Lastwiderstand von etwa 30 KOhm in der Kollektorschaltung, so dass es keine Probleme mit der Pegelanpassung gibt. HL2 – Aktivitätsanzeige der Fernbedienung.

Dabei handelt es sich eigentlich um den gesamten Empfänger, und der links blau hervorgehobene Teil des Stromkreises ist der Stromkreis. Ich habe ein normales Transformator-Netzteil verwendet. Im ausgeschalteten Zustand sind alle Stromkreise stromlos, es gibt keine Standby-Modi. Wenn Sie die Taste SB4 drücken, wird der Transformator mit Strom versorgt. Bitte beachten Sie, dass der Taster nicht fest montiert ist und zum Schalten von 220 V ausgelegt sein muss. C4, C5, L1, L2 – Netzwerk-Rauschfilter, die Nennwerte von L1, L2 sind nicht kritisch.

Vom Ausgang des Stabilisators wird eine 5-V-Spannung an den microUSB-Anschluss des Raspberry Pi und an den PIC-Controller DD1 geliefert. Am Pin 7 (GP0) des Controllers wird ein hoher logischer Pegel eingestellt, der Transistor VT1 öffnet, das Relais K1 wird aktiviert und blockiert mit seinen Kontakten den Power-Taster.

Am Pin 3 (GP4) des Controllers wird der Nullpegel eingestellt; er dient zum Kurzschließen des ULF-Eingangs während des Bootvorgangs und Herunterfahrens des Systems. Tatsache ist, dass die Aktivierung einer USB-Soundkarte von unangenehmen, recht lauten Geräuschen begleitet wird. Wenn Sie den integrierten AUDIO-Ausgang des Raspberry Pi verwenden möchten, kann das K2-Relais nicht installiert werden; der GP4-Ausgang des Controllers ist in diesem Fall nirgendwo angeschlossen.

Nach dem Anlegen der Stromversorgung blinkt die HL1-LED etwa 50 Sekunden lang und signalisiert damit, dass das System hochfährt. Nach dieser Zeit ist der Empfänger betriebsbereit, an Pin 3 (GP4) liegt ein hoher logischer Pegel, der ULF-Eingang ist entsperrt, HL1 leuchtet konstant. Für HL1 und HL2 habe ich eine zweifarbige LED mit einer gemeinsamen Kathode verwendet.

Um den Receiver auszuschalten, müssen Sie kurz die SB3-Taste drücken. In diesem Fall wird der Reglerausgang 5 (GP2) auf einen niedrigen logischen Pegel gesetzt, wodurch das Drücken der SB1-Taste „Menü“ simuliert wird. Nach 3 Sekunden beginnt das System zu schließen, der ULF-Eingang wird gesperrt, HL1 blinkt erneut und signalisiert das Schließen. Nach etwa 40 Sekunden ist das System geschlossen, Pin 7 (GP0) wird auf Null gesetzt, Relais K1 wird ausgeschaltet und das System ist stromlos.

Der Controller kann wie PIC12F629 oder PIC12F675 und mit geringfügiger Änderung des Programms - jeder PIC verwendet werden.

Die Spannungen an den Sekundärwicklungen des Transformators sind etwas hoch, aber ich bin von der Verfügbarkeit ausgegangen. Ich musste einen 5-V-Schaltspannungsregler verwenden. Er ist auf einem LM2576-ADJ montiert und nach einer Standardschaltung angeschlossen. Der Wert des Widerstands R1 wird nach dem Ohmschen Gesetz basierend auf dem Nennstrom und der Nennspannung des Relais berechnet. L2, C3 – zusätzlicher Impulsrauschfilter. Die L1-Bewertung wird basierend auf der Eingangsspannung und dem Betriebsstrom gemäß den Empfehlungen im LM2576-Datenblatt ausgewählt. Der L2-Wert ist nicht kritisch.

Das einzige Know-how der Schaltung ist eine VD3-Zenerdiode vom Typ D815B mit einer Stabilisierungsspannung von 6,8 V. Sie ist nicht am Betrieb des Stabilisators beteiligt, sondern dient zum Schutz der Last vor erhöhter Spannung im Falle eines Fehlfunktion des Stabilisators. Stimmen Sie zu – wenn Sie statt 5 V 24 V an den Stromkreis anlegen, sind die Folgen sehr traurig.

Hier müssen Sie eine alte Zenerdiode in einem Metallgehäuse mit Mutter verwenden, die auf einer Platine ohne Kühler installiert ist. Wenn die Spannung am Ausgang des Stabilisators aus irgendeinem Grund über 7 V ansteigt, fließt ein großer Strom durch die Zenerdiode, was zu einer durchgebrannten Sicherung im Wicklungskreis des Transformators führt.

Wenn anstelle einer Sicherung ein Nagel installiert wird, überhitzt die Zenerdiode, der Kristall darin schmilzt und der Ausgang wird kurzgeschlossen. Der Raspberry Pi wird gerettet. Wenn Sie eine Zenerdiode mit niedrigem Strom in einem Glasgehäuse verwenden, explodiert diese bei Überlastung einfach und schützt die Last nicht.

Der Niederfrequenzverstärker weist keine Besonderheiten auf, er ist nach einer Standardschaltung auf dem LM1876 aufgebaut. Elemente C9...C12 und R12...R17 – Klangregler mit 2 festen Positionen Classic und Rock. Im ersten Fall ist der Frequenzgang linear, im zweiten Fall werden die unteren und oberen Frequenzen angehoben. Wenn Sie den Kippschalter SA1 mit drei Stellungen verwenden, werden in der Mittelstellung, wenn alle Kontakte geöffnet sind, nur die tieferen Frequenzen angehoben. Der Klangregler ist an den Pins SA1 montiert.

Die Öffnerkontakte des Relais K2 schließen den Verstärkereingang kurz, während das System hochfährt und herunterfährt. Das Diagramm zeigt den Anschluss eines Relais mit einer 24-V-Wicklung, Sie können jedoch je nach verwendeter Stromversorgung auch 12 oder 5 V verwenden. Wie ich bereits geschrieben habe, wird dieses Relais nur für eine USB-Soundkarte und eine hochwertige Akustik benötigt.

Mithilfe des Trimmwiderstands R4 wird die Verstärkung kanalübergreifend ausgeglichen (Stereobalance). Für die Betriebseinstellung muss dieser Widerstand nicht entfernt werden. Die ULF-Verstärkung wird durch das Verhältnis der Werte der Widerstände R8/(R3+R4) und R9/R7 bestimmt.

Der Verstärker wird von einer separaten Wicklung des Transformators gespeist. Wenn Sie eine gemeinsame Stromversorgung für den analogen und digitalen Teil des Empfängers verwenden, wird es schwieriger, die vom Raspberry Pi verursachten Geräusche zu beseitigen – alle Arten von „Schwebfliegen“ und „Knarzen“. Analoge und digitale Masse sollten nur an einem Punkt verbunden werden – am ULF-Eingangsanschluss. Noch besser ist es, einen separaten externen Bassverstärker oder Aktivlautsprecher zu verwenden.

Das Diagramm der zweiten Version des Empfängers mit Tastensteuerung sieht wie folgt aus.

Der „Mute“-Modus wird durch gleichzeitiges Drücken der Tasten „Volume Up“ und „Volume Down“ aktiviert. Die Widerstände R27-R31 werden nur für das älteste Raspberry Pi Modell B Rev.1 benötigt. Für rev. 2 sowie die Modelle B+, 2 und Zero müssen nicht installiert werden.

Schaltnetzteil 5 V, 2 A. Die Widerstände R26, R27 begrenzen den Stromstoß beim Einschalten des Netzwerks und dienen gleichzeitig als Sicherungen. Die Dioden VD2 - VD4 dienen zur Anpassung der Pegel von 5-3,3 V. Relais K1 mit einer 5-V-Wicklung. Wenn Sie ein solches Relais mit zwei Kontaktpaaren nicht kaufen können, können Sie zwei Relais mit jeweils einem Paar parallel schalten. In diesem Fall kann es erforderlich sein, einen leistungsstärkeren Transistor VT1 zu verwenden. Anstelle von ULF habe ich Aktivlautsprecher verwendet, die mit 5 V (USB) betrieben werden. Sie werden an den AUDIO-Ausgang des Raspberry Pi angeschlossen. Die übrigen Schaltungselemente ähneln der Variante mit Encodern.

Die Zeichnungen aller Boards poste ich nur im Sprint Layout, damit sie „als Grundlage genommen“ werden können. Link am Ende der Seite. Ich empfehle nicht, 1:1 zu wiederholen; die Abmessungen und die Konfiguration der Platinen werden in erster Linie vom Gehäuse bestimmt.

Die PIC-Firmware für die beiden Empfängeroptionen ist unterschiedlich, bei der Option mit Encodern handelt es sich um eine Datei picrdo_enc.hex, für die Option mit Knöpfen - picrdo_but.hex. Die Firmware ist sowohl für PIC12F629 als auch für PIC12F675 geeignet. Das Archiv mit der Firmware enthält auch die Programmquelldatei. Bei Bedarf können Sie die Dauer der Verzögerung zum Ein- und Ausschalten des Receivers ganz einfach ändern.

Wo kann ich Komponenten kaufen? Der Raspberry Pi ist in China immer noch (Ende 2015) günstiger zu bestellen; bei Aliexpress liegen die Kosten je nach Modell im Bereich von 30 bis 40 USD. Dort kann man sich bei Bedarf sehr günstig ein Netzteil und eine USB-Soundkarte besorgen.

Der Einsatz einer USB-Soundkarte macht nur dann Sinn, wenn die Akustik gut genug ist. Wenn Ihre Lautsprecher weniger als 50 USD kosten, können Sie mit dem im Raspberry Pi integrierten AUDIO-Ausgang auskommen. Die Auswahl an Lautsprechern ist in jedem russischen Elektronikgeschäft recht groß. Natürlich darf man vom Internetradio keinen High-End-Sound erwarten, aber Piepser in der Größe eines Tennisballs sind nicht die beste Wahl.

Es ist besser, den Indikator in Russland zu kaufen, wenn Unterstützung in russischer Sprache erforderlich ist. Bevorzugt sind Modelle mit dunklen Symbolen auf hellem Hintergrund. Beliebte Indikatoren mit weißen Symbolen und blauer Hintergrundbeleuchtung sehen zwar schön aus, sind aber sehr „träge“. Es wird schwierig sein, dem Ticker zu folgen.

Wenn Ihr Anzeigegerät Hieroglyphen anstelle russischer Buchstaben anzeigt, ist das in Ordnung, es kann in diesem Empfänger verwendet werden. Es wird nur russischer Text in lateinischen Zeichen angezeigt. Es ist auch besser, Encoder im Einzelhandel zu kaufen, dann ist zumindest die Marke bekannt, sodass Sie die Parameter anhand des Datenblatts klären können.

Wenn Sie Fragen haben, lesen Sie alle Teile der Beschreibung sorgfältig durch, bevor Sie sie stellen, und lesen Sie auch die Dokumentation des Autors von Pi Radio

Fortsetzung des Themas:
Computer

Heute ist das Internet zu einem festen Bestandteil unseres täglichen Lebens geworden. Der ständige Zugriff auf das globale Netzwerk ist eine notwendige Voraussetzung für komfortables Arbeiten.