Sind Sie auf der Suche nach einer kleinen und kompakten Soundkarte für einen Raspberry Pi? Dann werfen Sie einen Blick auf die HAT IQaudio Codec Zero (Bild 1), da sie einen Zero-kompatiblen Formfaktor hat.
 

IQaudio Codec Zero
Bild 1: IQaudio Codec Zero (Quelle: Raspberry Pi Foundation).

Einstieg

Wenn Sie nur einen digitalen Tonausgang über HDMI benötigen, brauchen Sie keine Soundkarte. Eine Soundkarte wird dann interessant, wenn man analoge Audiosignale in guter Qualität ausgeben oder wenn man analoge Signale mit dem Raspberry Pi einlesen möchte. Die A- und B-Modelle des Raspberry Pi haben noch einen 3,5-mm-Klinkenanschluss, über den analoges Audio ausgegeben werden kann, allerdings ist die Qualität nicht die beste und nicht wirklich zum Musikhören geeignet.
 

Contents of the IQaudio Codec Zero
Bild 2: Inhalt des Pakets mit dem IQaudio Codec Zero.


Die HAT IQaudio Codec Zero bietet einen integrierten 1,2-W-Verstärker für einen 8-Ω-Lautsprecher, ein integriertes MEMS-Mikrofon und einen analogen AUX-Ein- und Ausgang mit Line-Pegel. Damit lassen sich Projekte wie ein intelligenter Lautsprecher, ein VoIP-Telefon oder eine eigene Jukebox recht einfach realisieren. Bild 2 zeigt die Hardware und das mitgelieferte Montagematerial. Das Herzstück des IQaudio Codec Zero ist der Chip DA7212 von Dialog Semiconductor. Bild 3 zeigt die Blockschaltung und das Signal-Routing innerhalb des DA7212. Das IC ist ein 24-Bit-Codec mit einer Abtastrate von bis zu 96 kHz. Integriert sind ein 5-Band-Equalizer sowie ein ALC und ein Noise Gate. Die Dokumentation für IQaudio Codec Zero ist auf der Webseite der Raspberry Pi Foundation zu finden.
 

Block diagram of the DA7212
Bild 3: Blockschaltbild des DA7212 (Quelle: Dialog Semiconductor).

Fast Plug & Play

Die HAT IQaudio Codec Zero verfügt über ein EEPROM gemäß der Raspberry-Pi-HAT-Spezifikation, so dass ein Raspberry Pi das Board automatisch erkennen und entsprechend einrichten sollte. Auf einem Raspberry Pi 3B+ funktioniert dies problemlos; das aktuelle Raspberry Pi OS (32 Bit) erkennt die Karte und richtet sie entsprechend ein. Bild 4 zeigt die Sound-Einstellungen des IQaudio-Codec.
 

IQaudio Codec Zero settings
Bild 4: Sound-Einstellungen des IQaudio Codec Zero.


Es sind jedoch noch einige Schritte notwendig, die nicht direkt im Handbuch zum IQaudio Codec Zero beschrieben sind. Zunächst sollte die Ausgangslautstärke auf ein Minimum reduziert werden. Nachdem der interne Audiocodec des Raspberry Pi entsprechend der Anleitung deaktiviert wurde, verbleibt IQaudio als Standard-Soundkarte im System. Wird nun ein Terminal geöffnet, kann mit speaker-test -t wav -c 1 ein Lautsprechertest gestartet werden. Der Lautsprecher bleibt jedoch stumm. Es ist notwendig, einige Parameter in den Einstellungen der Advanced Linux Sound Architecture (ALSA) anzupassen. Der schnellste Weg ist, die bereitgestellten Einstellungen von IQaudio neu zu laden. Dazu wird ein Git-Repository über das Terminal mit git clone https://github.com/iqaudio/Pi-Codec.git geklont. Im Terminal wechselt man in den erstellten Ordner Pi-Codec und führt den Befehl sudo alsactl restore -f IQaudIO_Codec_Playback_Only.state aus. Danach sollte speaker-test -t wav -c 1 einen Ton vorne links aus dem Lautsprecher ausgeben. Von nun an werden alle Töne über IQaudio Codec Zero ausgegeben. Eine schnelle und einfache Installation!


Mikrofon, AUX-In und AUX-Out

Mit dem eingebauten Mikrofon kann der Raspberry Pi Audio-Signale registrieren. Auf diese Weise kann z.B. mit voice2json ein intelligenter Lautsprecher realisiert werden. Oder man kann den Raspberry Pi in Verbindung mit Edge Impulse verwenden, um Daten aufzuzeichnen. Das MEMS-Mikrofon auf dem Board wird keinen Preis in der Kategorie „Aufnahmequalität“ gewinnen, aber es erfüllt seinen Zweck. Wenn Sie mit dem Klang unzufrieden sind, können Sie ein externes Mikrofon anschließen. Die vordefinierten .state-Dateien im geklonten Pi-Codec-Ordner helfen dabei, die richtigen Einstellungen für die Aufnahme per Mikrofon zu finden. Mit sudo alsactl restore -f IQaudIO_Codec_OnboardMIC_record_and_SPK_playback.state wird das Mikrofon als Aufnahmequelle ausgewählt. Für eine Testaufnahme kann im Terminal mit arecord --device=hw:1,0 --format S16_LE --rate 44100 -c2 test.wav eine Testaufnahme mit dem Mikrofon gestartet und mit CTRL+C beendet werden. Diese kann dann mit aplay test.wav abgespielt werden. Wenn Sie eine externe Audioquelle anschließen wollen, können Sie geeignete Buchsen an IQaudio Codec Zero löten. Bild 5 zeigt den AUX-Eingang mit Cinch-Kupplungen.
 

Bild 5: AUX-In mit Cinch-Kupplungen.


Um AUX-In als Aufnahmequelle zu wählen, müssen Sie Folgendes in ein Terminal eingeben:

sudo alsactl restore -f IQaudIO_Codec_AUXIN_record_and_HP_playback.state

Auf dem Bild ist auch der AUX-Ausgang zu sehen, über den der IQaudio Codec Zero an einen Verstärker oder Aktivlautsprecher angeschlossen werden kann.


Neues Leben für ein altes  Radio

Ein altes Philips-Radio stand schon zu lange auf meiner To-Do-Liste (Bilder 6 und 7). Vom Innenleben ist nur noch der Lautsprecher übrig und daher genug Platz für neue Hardware. Im Inneren würde sich ein Raspberry Pi mit geringer Leistung gut machen, aber für den Lautsprecher wird ein Verstärker benötigt. Gut, dass der IQaudio Codec Zero einen integrierten 1,2-W-Verstärker hat, so dass ein kleines Büro wunderbar beschallt werden kann.
 

Old housing of a radio.
Bild 6: Gehäuse eines alten Radios.


Für die Musikwiedergabe kann alles verwendet werden, was unter Linux Ton in Richtung ALSA ausgibt. Ob allerdings das MPD oder eine spezielle Distribution wie Volumio zum Einsatz kommen wird, ist noch nicht entschieden. Ich habe also noch kein ganz fertiges Konzept für das Radio, aber eine der Hürden, ein Codec mit kleinem Verstärker, ist bereits aus dem Weg geräumt. Mit der Zeit wird sich das Innenleben also Stück für Stück mit Hardware füllen. Es gibt noch viel zu tun und zu planen für dieses Projekt.
 

There is only one speaker left.
Bild 7: Es fehlt nur noch ein Lautsprecher.

Eine solide Basis

IQaudio Codec Zero bietet Aux-IN, Aux -ut sowie ein integriertes Mikrofon und kann direkt einen kleinen Lautsprecher mit 1,2 W treiben. Für den Preis von rund 20 Euro kann diese kompakte Lösung sowohl auf einem Raspberry Pi Zero als auch auf einem Raspberry Pi 3B oder Raspberry Pi 4B eingesetzt werden kann. Für Streaming-Player, VoIP-Telefone oder Smart Speaker bietet IQaudio Codec Zero eine solide Basis. Wenn Sie mit Audio und Streaming auf dem Raspberry Pi und Linux experimentieren möchten, sollten Sie die HAT IQaudio Codec Zero in Betracht ziehen.


Fragen zum IQaudio Codec Zero?

Haben Sie technische Fragen oder Kommentare zu diesem Artikel? Schreiben Sie dem Autor eine E-Mail.
 
Übersetzung: Dr. Thomas Scherer