Anstatt den qualitativ minderwertigen PWM-GPIO Port des Raspberry Zeros zu verwenden, ist dies eine einfache und effektive Methode die über einen USB Anschluss (direkt am Zero oder über einen USB-Hub) realisiert wird.
Damit aber die USB Soundkarte als Primäres Ausgabegerät funktioniert, sind aber kleine Änderungen in diversen configs nötig…
Wir verbinden uns via SSH oder arbeiten direkt auf der Shell am Raspberry und geben folgenden Befehl ein.
$ lsusb
sollte folgendes zB ausgeben:
Bus 001 Device 007: ID 0d8c:0014 C-Media Electronics, Inc.
Bus 001 Device 004: ID 0424:2517 Standard Microsystems Corp. Hub
Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp. SMSC9512/9514 Fast Ethernet Adapter
Bus 001 Device 002: ID 0424:9514 Standard Microsystems Corp.
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Wird die Soundkarte aufgeführt (hier C-Media), kann der nächste Schritt erfolgen
cat /proc/asound/modules
sollte folgendes ausgeben
0 snd_bcm2835
1 snd_usb_audio
nun editeren wir die alsa-base.conf
sudo nano /etc/modprobe.d/alsa-base.conf
und füge folgende Zeilen unterhalb hinzu
options snd_usb_audio index=0
options snd_bcm2835 index=1
options snd slots=snd-usb-audio,snd-bcm2835
Mit STRG + X und „YES“ das Überschreiben bestätigen, reboot durchführen.
Nach dem Neustart sollte folgender Befehl
cat /proc/asound/modules
folgendes ausgeben
0 snd_usb_audio
1 snd_bcm2835
snd_usb_audio befindet sich nun an erster Stelle – somit hat alles geklappt und der Sound kann zb. in Emulationstation getestet werden!