Volumio installieren und für den Touchscreen vorbereiten

Nachdem die Hardware vorbereitet wurde, folgt nun die Software in Form von Volumio, ein Musikplayer, der perfekt auf den Raspberry zugeschnitten ist.

Volumio (volumio.org) eignet sich prima für unser Projekt. Es lässt sich einfach auf einem Raspberry installieren, nutzt mpd als Datenbank, bietet per Plugin Unterstützung für einen Touchscreen und kann auch mit Spotify sprechen – sowohl als eigenständiger Client als auch als Empfänger für Spotify Connect.

Vorbereitung der Speicherkarte

Die Installation ist sehr einfach. Zunächst wird das Installationsimage heruntergeladen und auf die Speicherkarte gespielt. Die einzelnen Schritte sind mehrfach im Netz gut beschrieben, und auch für Volumio gültig (z.B. auf der offiziellen Seite).

Für macOS gelten die folgenden Schritte:

  1. .zip Datei entpacken. Man erhält eine .img-Datei
  2. Wir müssen nun einiges auf der Befehlszeile machen. Dazu nutzen wir das Dienstprogramm Terminal
  3. Mit dem Befehl diskutil list finden wir zunächst heraus, welche Speichergeräte derzeit verbunden sind.
  4. Die (micro)SD-Karte mit dem Rechner verbinden (über USB-Adapter oder direkt)
  5. Der Befehl diskutil list wird nun nochmal aufgerufen, um einen neuen Speicher zu finden. Hier z.B. /dev/disk2 
    matthias$ diskutil list
    /dev/disk0 (internal):
       #:                       TYPE NAME                    SIZE       IDENTIFIER
       0:      GUID_partition_scheme                         251.0 GB   disk0
       1:                        EFI EFI                     314.6 MB   disk0s1
       2:                 Apple_APFS Container disk1         249.4 GB   disk0s2
       3:       Apple_KernelCoreDump                         1.3 GB     disk0s3
    
    /dev/disk1 (synthesized):
       #:                       TYPE NAME                    SIZE       IDENTIFIER
       0:      APFS Container Scheme -                      +249.4 GB   disk1
                                     Physical Store disk0s2
       1:                APFS Volume Lyta                    232.3 GB   disk1s1
       2:                APFS Volume Preboot                 23.3 MB    disk1s2
       3:                APFS Volume Recovery                517.8 MB   disk1s3
       4:                APFS Volume VM                      2.1 GB     disk1s4
    
    /dev/disk2 (external, physical):
       #:                       TYPE NAME                    SIZE       IDENTIFIER
       0:     FDisk_partition_scheme                        *16.0 GB    disk2
       1:                 DOS_FAT_32 VOLUMIO                 16.0 GB    disk2s1
    
  6. Nun muss die Speicherkarte ausgeworfen werden:
    matthias$ diskutil unmountdisk /dev/disk2
    Unmount of all volumes on disk2 was successful
    
  7. Als root schreiben wir nun mit dem Befehl dd das Image Byte für Byte auf die Speicherkarte. Dieser Vorgang gibt für gewöhnlich keinen Status aus sondern ist nach einigen Minuten fertig. Man sollte also Geduld walten lassen:
    matthias$ sudo dd bs=1m if=Downloads/volumio-2.389-2018-03-26-pi.img of=/dev/rdisk2 conv=sync
    Password:
    2800+0 records in
    2800+0 records out
    2936012800 bytes transferred in 89.314177 secs (32872864 bytes/sec)
    

    In diesem Fall rund 1 1/2 Minuten für 293 MB.

  8. Wahrscheinlich wird die Speicherkarte nach diesem Vorgang wieder ins System eingebunden. Bevor wir die Karte nun wieder auswerfen, können wir direkt zwei kleine Dinge erledigen, die uns das Leben erleichtern.

Aktivierung SSH

Damit wir direkt nach dem Start per SSH (Verwaltung aus der Ferne) auf das System zugreifen können, muss lediglich die Datei ssh auf der Karte vorhanden sein. Dazu wechseln wir weiterhin im Terminal auf die Karte und erzeugen die Datei mit touch.

matthias$ cd /Volumes/boot/
matthias$ touch ssh

Orientierung Touchscreen

Würde man an dieser Stelle die Karte in den Raspberry schieben und starten, würde man das Bild auf dem Kopf stehen. Es kann sein, dass die Montage des Touchscreens auf dem Kopf stattfindet und das Bild daher gedreht werden muss. Dies erfolgt über eine Zeile, die am Anfang der Datei config.txt eingefügt werden muss.

lcd_rotate=2

Die Drehung erfolgt jeweils um 90 Grad. Die Ziffer 2 dreht den Inhalt also um 180 Grad.

Erster Start und Verbindung WLAN

Nun heißt es, die Speicherkarte sauber auszuwerfen (z.B. im Finder) und in den Raspberry einsetzen. Wenn das Flachbandkabel schon an den Touchscreen angeschlossen ist, gerät das etwas zur Fingerübung, ist aber definitiv machbar. Wenn das Flachbandkabel als Hindernis fehlt, klappt der Einschub natürlich besser.

Hotspot Volumio auswählen…

Der erste Start dauert dann etwas länger als normal, da sich Volumio selbst installiert. Damit ich mir keine Gedanken um die LAN-Verkabelung machen muss, habe ich mich für eine Verbindung über WLAN entschieden. Also brauchen wir nun Maus und Tastatur, um…NEIN! Für die weitere Installation haben sich die Macher dann etwas pfiffiges einfallen lassen.

…und m,it dem Kennwort volumio2 verbinden.

Volumio baut, wenn es keinen Netzwerkanschluss bekommt, einen eigenen Hotspot auf, mit dem man sich verbinden kann. Es wird dann automatisch ein Assistent zur Ersteinrichtung geöffnet, in dem man unter anderem die Verbindung zum WLAN herstellen kann.

Der Assistent zur Ersteinrichtung für in wenigen Schritten zu einem funktionierenden System.

Wenn der Assistent nicht angezeigt wird, kann man im Browser auch auf die Seite volumio.local springen um den Assistenten aufzurufen. Während der Ersteinrichtung wird man auch nach dem Ort gefragt, an dem die Musikdateien lagern. Das wollte ich erst sauber hinzufügen, wenn das System hochgefahren ist und habe diesen Schritt daher übersprungen. Und hole ihn weiter unten nach.

Nach der Ersteinrichtung sollte sich Volumio dann mit dem WLAN verbinden. Wenn man dem System während der Einrichtung einen eigenen Namen gegeben hat (z.B. Zimmer in dem das Gerät steht), ist das Gerät jetzt unter http://<name>.local erreichbar, ansonsten ist es in der Standardeinstellung http://volumio.local.

Es zeigt sich nun die Startseite von Volumio mit den charakteristischen Bedienelementen (Cover in der Mitte, Suche im Stück links und Lautstärke rechts). Volumio als Server ohne Bildschirm und Weboberfläche zum Steuern ist installiert.

Touchscreen Plugin

Für die Anzeige und Bedienung über den Touchscreen gibt es ein offizielles Plugin. Dies ist schnell installiert. Wir wählen das Zahnrad oben rechts in der Ecke und den Eintrag Plugins um denInstallationspunkt für die Plugins aufzurufen. Dort wählen wir dann unter Miscellanea das Touch Display Plugin und installieren dieses.

Das Touch Display Plugin zeigt Volumio auf dem Touchscreen an und ermöglicht die Steuerung darüber.

Sobald die Installation abgeschlossen ist, muss das Plugin noch aktiviert werden. Das erledigen wir im Bereich Plugins unter dem Reiter installierte Plugins. Dann sollte Volumio auf dem Touchscreen angezeigt werden und bedienbar sein.

Hinzufügen der Musikdateien

Volumio benötigt natürlich Musikdateien, die abgespielt werden sollen. Man kann diese z.B. auf einem USB-Speicher lagern, der am Gerät angeschlossen ist. Ich habe die Dateien auf einem NAS, das wir über Meine Musik – erreichbar über das Menü oben rechts – einbinden können.

Wir wollen ein neues Netzlaufwerk hinzufügen.

Eine Freigabe auf einem FreeNAS kann ich mit folgenden Einstellungen einbinden.

Sobald die Verbindung hergestellt und das Verzeichnis eingebunden wurde, werden die Dateien eingelesen. Etwaige Einstellungen zum Einlesevorgang sollten daher im Vorfeld getätigt werden. Diese Einstellungen finden sich weiter unten.

Ich habe darauf geachtet, dass ich in meiner Bibliothek für jedes Album eine Coverdatei im Ordner vorliegen habe (siehe Die Musiksammlung ordnen mit Bliss), um Volumio möglichst Arbeit damit zu bescheren. Die Einstellungen, dass eingebettete Cover nicht genutzt und Cover nach Möglichkeit aus dem Netz geladen werden sollen, müssen vor dem Aufbau der Datenbank deaktiviert werden, da Volumio sonst bereits damit anfängt.

Volumio fängt umgehend mit der Indizierung der gefundenen Musikdateien an. Je nach Größe der Bibliothek, kann dies durchaus einige Zeit dauern, in der Volumio nach Möglichkeit nicht genutzt werden sollte. Zum Einen ist dabei die Geschwindigkeit deutlich vermindert, zum Anderen konnte ich Volumio während einer Indizierung durch Übermässiges Benutzen bereits erfolgreich zum Absturz bringen.

Gerade für diesen Vorgang ist es enorm wichtig, dass die Bibliothek sauber mit Tags versehen und sortiert ist, da dies die einzigen Informationen sind, die Volumio, bzw. das darunterliegende mpd, zum Aufbau der Datenbank nutzt.

Im nächsten Beitrag fügen wir noch eine Tastatur für den Touchscreen hinzu, installieren Spotify und betrachten ein paar Tipps und Tricks nach einigen Wochen der Benutzung.