Mittwoch, 27. Februar 2019

2. Teil iRadio: Installation

die eigentliche Installation

Bei der Raspbian Distribution empfiehlt es sich eine ältere Buster-Version zu benutzen:

Raspbian Buster

 

iRadio FAQ und Release Notes

Das Raspbian wird entzippt und mit einem Imaging-Programm wie Balena Etcher oder Win32DiskImager auf die SD-Karte geschrieben.

Bevor wir die SD-Karte in den Raspberry einsetzen packen wir unsere 2 Dateien playlist.m3u und wpa_supplicant.conf mit drauf, und zwar in den Ordner /boot. Nur dieser Ordner ist auch von Windows erreichbar. Die anderen Partitionen auf der SD-Karte verursachen Formatierungshinweise beim öffnen, die wir einfach wegklicken.

An der Stelle noch eine wichtige Funktion von iRadio. iRadio schaut bei jedem Start ob es im Ordner /boot oder auf einem eingesteckten USB-Stick eine playlist.m3u oder eine wpa_supplicant.conf findet, übernimmt diese Dateien dann in sein System und löscht sie am Fundort. Das ermöglicht einen einfachen Wechsel der playlist oder der WLAN-Zugangsdaten. Der USB-Stick muss zwingend in FAT32 formatiert sein, die Dateien müssen sich im root des USB-Stick befinden, und dürfen keine weitere Endung (z.B. playlist.m3u.txt) haben. Auch keine versteckte! Der Editor von Windows hängt gerne ein .txt an, und Windows blendet diese Endung standardmässig aus! Von WordPad ist dieses Verhalten dagegen nicht bekannt.

Hinweis: Eine leere Textdatei mit dem Namen SSH im boot-Ordner signalisiert Raspbian daß es gleich den Fernzugriff per SSH aktivieren soll, das können wir aber auch später in der Konfiguration. Die Datei SSH darf keine Endung haben.

Jetzt sind wir gerüstet den Raspberry mit der SD-Karte hochzufahren. Die x11-Versionen durchlaufen einen Assistent für Länderkennung und Kennwortwechsel und führen dann automatisch ein update durch. Hier haben wir dann auch gleich einen deutschen Tastensatz. 
Die lite-Version hingegen hat erst mal einen amerikanischen Tastensatz und die updates müssen von Hand durchgeführt werden mit den Anweisungen:

sudo apt-get update
sudo apt-get upgrade

Bei sehr alten Raspberry Pi Modellen kann ein Update der firmware sinnvoll sein, i.A. wird aber davon abgeraten. Die Anweisung dazu:

sudo rpi-update

Raspi-Config

als nächstes starten wir in einem Terminal mit:

sudo raspi-config

das Raspberry Konfigurationsprogramm und treffen ein paar grundsätzliche Einstellungen

- unter Network-Options / Hostname können wir unserem System einen neuen Host-Namen geben der es uns einfacher macht ihn später im Netzwerk anzusprechen

- in Boot Options / Desktop/Cli verhindern wir bei den x11 Versionen den x11-Start indem wir "Console Autologin" einstellen.

- in den Interfacing Options deaktivieren wir SPI oder I2C. Falls noch nicht geschehen können wir hier auch SSH für den Fernzugriff aktivieren.

- Bei Overclock können wir einen Raspberry der 2er Serie auf ein mittleres Übertakten einstellen, falls er z.B. mal eine anspruchsvolle Skalensimulation ausführen soll.


Installation iRadio

die aktuellste Version von iRadio laden wir mit der Anweisung:

git clone https://github.com/BM45/iRadio.git

Bei einem Raspbian Lite muss evtl. git erst noch installiert werden.

In unserem home-Ordner /home/pi gibt es jetzt ein Unterverzeichnis iRadio, welches unser Projektverzeichnis wird. Wir wechseln in das Projektverzeichnis mit der Anweisung:

cd /home/pi/iRadio

und schauen uns den Inhalt an mit:

ls -la 

wir sehen mehrere Dateien die mit install_ beginnen. Die meisten werden wir noch brauchen um später eine Radiosteuerung und eine Display-Ausgabe zu etablieren. Dazu können noch Anpassungen am Quellcode nötig sein, auf die wir noch eingehen. Was wir aber jetzt schon ausführen können ist:

sudo ./install.sh

Bei den Paket-Installationen, die nun durchlaufen, achten wir darauf ob etwas mit j (oder y) bestätigt werden muss. Nach einem reboot, den wir mit:

sudo reboot

auslösen, vernehmen wir entweder über Klinke (Jack) oder HDMI hoffentlich die ersten Töne. Falls nicht, so könnte das an zu niedriger Lautstärke liegen. An 2 Punkten können wir hier eingreifen.

Einmal die Systemlautstärke (Achtung! Gilt nur für das alte Raspbian bis Mai 2020):

Dazu öffnen wir die Autostart-Datei des Systems mit:

sudo nano /etc/rc.local

und fügen unmittelbar vor dem exit 0 folgende Zeile ein:

amixer -M set PCM 85%

Das andere ist die Lautstärke von vlcd:

sudo nano /usr/bin/vlcd

Dort fügen wir in der Sektion "#Startup vlc" die gain-Option nach folgenden Blöcken ein:

--compressor-attack 50.0 \
--compressor-release 200.0 \
--compressor-ratio 20.0 \
--compressor-threshold 0.0 \
--compressor-rms-peak 0.0 \
--compressor-knee 1.0 \
--compressor-makeup-gain 0.0 \
--gain 3 \
...



26 Kommentare:

  1. Hallo zusammen, bin seit geschalagenen zwei Tagen dabei das iRadio zum laufen zu bringen. Mit viel Arbeit spielt es jetzt aber die Anleitungen stimmen bei Raspian Buster nicht. Git Clone geht nicht, VLCD geht nicht, TFT Display geht nicht un die Tastensteuerung geht auch nicht. Gibt es für Raspian Buster eine neue aktuelle Anleitung?

    Grüße

    AntwortenLöschen
    Antworten
    1. Antwort siehe Teil 7, da wo du zuerst ein Problem gemeldet hattest

      https://radiobasteleien.blogspot.com/2019/02/iradio-teil7-tft-display.html#more

      Löschen
  2. Hallo!
    Ich komme bei der Installation mit der Fehlermeldung:


    /home/pi/iRadio/display/dummy.c:5:10: fatal error: bcm2835.h: No such file or directory
    #include
    ^~~~~~~~~~~
    compilation terminated.
    vlcd: no process found
    gpiod: no process found
    displayd: no process found
    cp: cannot stat '/home/pi/iRadio/gpiod': No such file or directory
    cp: cannot stat '/home/pi/iRadio/displayd': No such file or directory
    Installerscript durchgelaufen, bitte Radio neu starten.

    Wie kann ich den Fehler beheben?
    Danke
    Udo

    AntwortenLöschen
  3. Hallo Udo,
    du hast vermutlich Raspbian Buster Light benutzt. Bei diesem muss man die bcm2835 library nachinstallieren. Siehe:
    https://gist.github.com/annem/3183536
    Oder du nimmst eines der größeren Raspbian-Images.

    AntwortenLöschen
  4. Ganz herzlichen Dank - funktioniert!
    LG
    Udo

    AntwortenLöschen
  5. die bcm2835 library wird im iRadio-Ordner beim Ausführen der grundlegenden Installation (sudo ./install.sh) automatisch installiert. Ist das aus irgendeinem Grunde fehlgeschlagen ist der bessere Weg, statt der o.a. manuellen Installation einfach die install.sh neu durchlaufen zu lassen.

    AntwortenLöschen
  6. Super Anleitung. daumen+++
    Meine Frage: Kämpfe schon seid Tagen die Soundausgabe auf einem Hifiberry DAC+ zu bekommen, der bleibt aber stumm. :-(

    AntwortenLöschen
  7. Hi,iRadio gibt Audio ganz normal über die Alsa-Schnittstelle aus. Wenn der Hifiberry im Betriebssystem richtig eingebunden ist wird er also auch von iRadio genutzt. Ich habe mal einen link rausgesucht was auf Raspbian-Ebene zu tun ist:
    https://www.loxwiki.eu/display/LOXBERRY/Hifiberry+Soundmodule+nutzen

    AntwortenLöschen
  8. Dankeschön für den Link. Genauso habe ich es auch gemacht. in der/boot/config.txt #dtparam=audio=on auskommentiert. dtoverlay=hifiberry-dacplus eingefügt. Eine /etc/asound.conf erstellt und die Kartennummer welche er mir bei Eingabe von aplay -l anzeigt eingetragen. LED am DAC+ leuchtet, aber bleibt stumm. :-(

    AntwortenLöschen
  9. Nachtrag: diesen habe ich: https://www.amazon.de/gp/product/B0147RA2PY/ref=ppx_yo_dt_b_search_asin_title?ie=UTF8&psc=1

    AntwortenLöschen
  10. dann hätte ich noch einen Tipp. Die aktuellen "Raspberry Pi OS" Versionen zeigen ein seltsames Verhalten. Sobald am HDMI-Ausgang etwas aufgesteckt ist hat HDMI-Audio Vorrang vor dem PCM-Ausgang, evtl. auch vor dem Hifiberry. Wenn du mit der Info nicht weiterkommst empfehle ich eine Neuinstallation mit einem der alten raspbian-Versionen:
    https://downloads.raspberrypi.org/raspbian/images/
    Der vlcd läuft? Das kannst du überprüfen mit htop oder noch besser mit dem Webinterface (http://raspi-IP:8080)

    AntwortenLöschen
  11. vlcd läuft am Anfang über 3.5mm kam auch ein Ton und ich konnte auf der Weboberfläche auch umschalten und die Lautstärke regeln. Nach auskommentieren und einfügen des DAC+ ist Ruhe auf der Weboberfläche sehe ich auch das noch alles läuft. Nur kein Ton. Welche Version würdest Du empfehlen? Und wird die nicht aktuallisiert wenn ich sudo apt-get update
    sudo apt-get upgrade mache?
    Und am HDMI habe ich nichts, mache alles über die Konsole.

    AntwortenLöschen
  12. PS: habe mir mal ne Version von 2018 runtergeladen.
    Zum DAC+ er geht, habe auch mal ein Hifi-Berry Image installiert. Speaker-test eingegeben, da quatscht er mich voll. :-)

    AntwortenLöschen
  13. ja das stimmt, mit "sudo apt-get update" handelst du dir vermutlich die neue ALSA Unterstützung ein. Vermeide das erst mal. Du kannst ruhig die letzte Version raspbian-2020-02-14 benutzen. Die Audioproblematiken kamen erst mit den Raspberry Pi OS Versionen. Damit sind meine Ideen aufgebraucht, einen HiFi-Berry zum Testen hab ich nicht vorliegen.

    AntwortenLöschen
  14. ok, danke die 2018er geht nämlich auch nicht. :-(

    AntwortenLöschen
  15. Ich habe jetzt das Pferd mal umgekehrt aufgezäumt. Erst alle Änderungen in der /boot/config.txt , /etc/asound.conf speaker-test brachte eine permante Ausgabe bis ich mit CTR-C abgewürgt habe. IRadio installiert nichts, kein Ton. :-(

    AntwortenLöschen
  16. ja:**** List of PLAYBACK Hardware Devices ****
    card 0: sndrpihifiberry [snd_rpi_hifiberry_dacplus], device 0: HiFiBerry DAC+ HiFi pcm512x-hifi-0 [HiFiBerry DAC+ HiFi pcm512x-hifi-0]
    Subdevices: 0/1
    Subdevice #0: subdevice #0

    AntwortenLöschen
  17. und die asound.conf hast du ja auch wie beschrieben editiert. Da bleibt mir nichts anderes als die Infos an den Entwickler weiterzugeben. Ich kann mir nicht vorstellen daß Hifiberry und iRadio ein Problem miteinander haben. Zumindest vorläufig empfehle ich dir eine USB-Soundkarte oder einen HDMI-VGA Adapter mit Audioausgang einzusetzen. Wenn sich noch was ergibt kannst du mich auch unter info@saarfranzosen.de anschreiben.

    AntwortenLöschen
  18. Sorry fürs spammen. ;-) Wenn ich auf der Weboberfläche die Sender umschalte, geht kurz die LED am DAC+ aus und läuft die Zeitleiste wieder an in der Weboberfläche geht sie wieder an. Trotzdem kein Ton.

    AntwortenLöschen
  19. dmesg

    snd-rpi-hifiberry-dacplus soc:sound: pcm512x-hifi <-> 3f203000.i2s mapping ok

    AntwortenLöschen
  20. Moin, falls einer das gleiche Problem hat. Es ist ein GPIO-Konflikt.
    Pin11 und Pin12 werden von iRadio blockiert. Einfach die iRadio/gpiod.c ändern: // Tasteranschluesse
    #define PIN_PRG_HOCH RPI_GPIO_P1_11
    #define PIN_PRG_RUNTER RPI_GPIO_P1_12
    #define PIN_PRG_HALT RPI_GPIO_P1_08
    #define PIN_PRG_WEITER RPI_GPIO_P1_10

    in:
    // Tasteranschluesse
    #define PIN_PRG_HOCH RPI_GPIO_P1_18
    #define PIN_PRG_RUNTER RPI_GPIO_P1_22
    #define PIN_PRG_HALT RPI_GPIO_P1_08
    #define PIN_PRG_WEITER RPI_GPIO_P1_10
    danach kann die sudo ./install_Tastensteuerung.sh
    neu gestartet werden.
    Gruß Peter

    AntwortenLöschen
  21. Hi, der letzte Kommentar ist zwar schon etwas älter aber ich muss das Thema noch einmal ausgraben. Anstatt eines HiFi Berry verwende ich "RPI HiFi AMP HAT TAS5713 Amplifier Audio Module 25W" welches von der PIN Belegung baugleich mit dem HiFi Berry sein soll. Sobald ich aber die "install_Drehencoder.sh" installiere, gibt der RPi HiFi HAT keinen Sound mehr aus. Auch nicht, wenn ich in der "rotary.c" die PIN-Belegung ändere.

    #define RoAPin 0 // GPIO-Pin 24, Pinnummer 18
    #define RoBPin 1 // GPIO-Pin 25, Pinnummer 22

    Hat schon jemand den Drehenkoder mit HiFi Berry am laufen?

    MfG

    AntwortenLöschen
  22. Der Text hinter den // ist nur ein Kommentar. Das ändert nichts.
    Ich kann das Problem für den Hifiberry DAC+ Zero bestätigen, weiß aber nicht, was für RoAPin und RaBPin eingegeben werden muss, bzw. worauf sich die 0 und 1 bezieht :-(

    AntwortenLöschen
  23. Sorry. Wurde bei radio-bastler.de ja schon geklärt

    AntwortenLöschen