Vorbemerkungen:
Braucht man unbedingt ein Display? Selbstverständlich nicht. Es ist aber ganz nett, sofern man nicht immer zum Smartphone o.ä. greifen möchte, um sich Informationen zum gerade gespielten Titel anzeigen zu lassen:
Natürlich kann man nicht einfach ein Display an den WiiM anschließen.
Aber man kann sich ein Display mit einem Raspberry bauen. Das hat zudem den Vorteil, dass es nicht unbedingt beim WiiM stehen muss, sondern mobil ist.
Die unten angeführte Anleitung ist nicht mehr ganz aktuell. Ich konnte die Installation weitgehend problemlos mit raspbian bullseye vornehmen, auch wenn der Verfasser der Anleitung seinerzeit damit gescheitert war.
Ich habe die Installation von einem Linuxrechner aus vorgenommen. Anpassungen für Windows bitte von denjenigen, die sich damit auskennen.
Ich bin damit gescheitert, das "offizielle" 7"-Display für den Raspberry (rpi) zu nutzen. Ich verstehe zu wenig von Programmierung, für Python insbesondere habe ich genau gar keine Kenntnisse.
Dann geht es los:
Zunächst die Hardware. Ich habe mir ein 7"-Display von Waveshare besorgt:
https://www.waveshare.com/wiki/7inch_LCD_for_Pi
Dort wird auch beschrieben, wie das Display an den rpi gebracht wird. In Sachen Hardware kein Thema, allerdings gilt für bullseye auch die Konfiguration für buster.
Im Prinzip kann man einen beliebigen rpi verwenden. Da es eleganter ist, das Teil hinter dem Display zu verstecken, habe ich mir einen Raspberry Zero WH besorgt. Der ist so klein, dass man ihn gut und gerne auch übersehen kann. Ist zwar nicht der leistungsfähigste rpi, aber für dieses Projekt reicht er locker aus.
Nun die Installation und Konfiguration softwareseitig:
Der Zero benötigt ein 32Bit-bullseye. Das bringt man mit geeigneten Mitteln auf eine SD-Karte. Anleitungen dafür finden sich im Internet.
Da der Zero keinen Anschluss für LAN mitbringt, schreibt man sich eine wpa_supplicant.conf und bringt die im boot-Verzeichnis der SD-Karte unter. Ich habe die vom PiCore-Player entliehen:
Code: Alles auswählen
ctrl_interface=/var/run/wpa_supplicant
ctrl_interface_group=staff
# Two Character Country Code
country=DE
network={
ssid="Euer WLANName"
psk="Euer Passwort für das WLAN"
key_mgmt=WPA-PSK
auth_alg=OPEN
}
Code: Alles auswählen
# Enable DRM VC4 V3D driver
#dtoverlay=vc4-kms-v3d
dtoverlay=dpi24
enable_dpi_lcd=1
display_default_lcd=1
dpi_group=2
dpi_mode=87
dpi_output_format=0x6f005
hdmi_cvt 1024 600 60 6 0 0 0
disable_overscan=1
Code: Alles auswählen
vt.global_cursor_default=0
Code: Alles auswählen
sudo sh -c 'echo "YOUR-PASSWORD" | \
openssl passwd -6 -stdin | \
xargs -I {} echo "YOUR-USERNAME:{}" > /media/microsd/boot/userconf'
Oder man nimmt eine ältere Version von Raspbian. Damit stellt sich das Problem mit dem User nicht.
Dann die SD-Karte sicher auswerfen und in den rpi schieben.
Der rpi sollte dann starten können, das Display funktionieren.
Dann loggt man sich über das WLan auf dem rpi ein und ruft raspi-config auf, um zu verhindern, dass nach einiger Zeit das Display schwarz wird. Ich weiß nicht, ob das wirklich nötig ist, vielleicht macht das auch der "service" für die wiim.py. Ich habe es nicht geprüft.
Weiter geht es dann nach dieser Anleitung:
https://github.com/retired-guy/WiiM-Min ... -Waveshare
Die wiim.py möchte ein wenig angepasst sein:
'service-type' ersetzen durch 'search_target', aber nicht in dieser Zeile:
if service_name in (service.service_type, part, abbr):
Wenn alles korrekt ist, bekommt man das oben schon gezeigte Bild. Der WiiM muss natürlich laufen und zwar im selben Netzwerk.
Und so schaut es dann aus, das Konstrukt:
Mal sehen, ob ich den rpi noch ein wenig fester mit dem Displayständer verbinde.
Viele Grüße
Jochen