Wechsel Musikausgabe zwischen Hifiberry DAC+ und Raspberry Pi Kopfhörer Ausgang

  • Hallo Zusammen,

    ich habe für meinen Sohn eine Musikbox mit RFID Interface gebaut.

    .

    Das Ganze läuft auch sehr gut. Jetzt möchte ich allerdings die Musikbox um einen Kopfhörer Anschluss erweitern.

    Aktuell steckt auf dem Raspberry Pi ein HifiBerry DAC+ den ich mit einem kleinen Verstärker verbunden habe. Der Verstärker hat allerdings zu viel Power, um den Kopfhörer dort anzuschließen.

    Daher hatte ich folgende Idee:

    - Ich setzt eine 4-polige Klinkenbuchse ein.

    - Beim einstecken des Kopfhörers wird der 4. Kontakt der Klinkenbuchse auf GND gezogen, was ich über einen GPIO Pin auswerten kann.

    - Umschalten der Audio Ausgabe des MPDs von HifiBerry DAC+ auf Kopfhörer Ausgang des Raspberry Pis

    Problem:

    - Treiber für Onboard Kopfhörer installieren (mit der Installation des HifiBerry DAC+ wurde der deinstalliert)

    - Ich vermute ich muss anschließende mpd.conf bearbeiten und einen weiteren Audio_output definieren, richtig? Wenn ja, was schreibe ich da für den Onboard Kopfhörer Ausgang rein.

    - Konsolen Befehl, um zwischen den beiden Soundkarten umzuschalten.

    Ich sag schon mal vielen Danke.

    Viele Grüße

  • Wechsel Musikausgabe zwischen Hifiberry DAC+ und Raspberry Pi Kopfhörer Ausgang? Schau mal ob du hier fündig wirst!

  • Probiere es doch mit dem ALSA-Kommando amixer (siehe Beschreibung auf ubuntuusers.de). Dann brauchst Du auch nicht auf die bescheidene Original-Drex-PWM-Buchse des RPi umschalten.

    Hier ein paar Beispiele:

    amixer scontrols # herausfinden der Mixerbezeichnung(en)

    Simple mixer control 'Master',0

    amixer sget 'Master' # Parameter (z.B. Lautstärke) auslesen

    Simple mixer control 'Master',0

    Capabilities: volume

    Playback channels: Front Left - Front Right

    Capture channels: Front Left - Front Right

    Limits: 0 - 255

    Front Left: 60 [24%]

    Front Right: 60 [24%]

    Dieses Kommando liefert in den beiden letzten Zeilen die derzeitige Lautstärke. Den ausgelesenen Wert könnte man z.B. halbieren und mit dem nächsten Kommando setzen:

    amixer sset 'Master' 30 # Lautstärke setzen

    Simple mixer control 'Master',0

    Capabilities: volume

    Playback channels: Front Left - Front Right

    Capture channels: Front Left - Front Right

    Limits: 0 - 255

    Front Left: 30 [12%]

    Front Right: 30 [12%]

    Oder einfach auf einen Maximalwert setzen, wenn der Kopfhörer eingesteckt wird und der momentane Pegel zu hoch ist...

    Die Idee mit dem Einlesen über GPIO, ob ein Kopfhörer steckt, finde ich gut. Aber nimm nicht eine vierpolige Buchse für einen dreipoligen Standardkopfhörer, sondern eine geschaltete Buchse, z.B. sowas. Deine Box sieht nämlich vernünftig gebaut aus:thumbup: und ich finde, das soll sie bei Einbau einer Kopfhörerbuchse auch bleiben.

  • Moin schlizbäda,

    vielen dank für dein Lob.

    Ich bin für sämtliche Ideen offen, aber so ganz habe ich deinen Vorschlag noch nicht durchschaut.

    Möchtest du den Kopfhörer an den Ausgang des Verstärkers hängen und über amixer die maximale Amplitude am Ausgang des Hifiberry reduzieren? Wenn ja, müsste ich ja noch eine Umschaltung zwischen Lautsprecher und Kopfhörer realisieren. Audiosignal per Relais schalten, wollte ich eigentlich vermeiden.

    Ein weiteres Problem, was ich sehe ist, dass wenn ich die Lautstärke am Ausgang des Hifiberry reduziere ist der Abstand zwischen Rausch-Signal und dem eigentlichen Audio Signal zu gering, was man dann hört. Ich habe diesen Mechanismus genutzt, um die maximale Lautstärke zu begrenzen. Unter 40% war der Klang zu gruselig. Für den Kopfhörer müsste ich noch weiter runter gehen, was sich dann richtig schlecht anhört.

    Was deine Bedenken mit dem Kopfhörer-Ausgang am Raspberry Pi angeht, trifft das bestimmt auf einen Raspi der ersten Generation zu, aber nicht für die späteren. Mein erster Raspi war ein Gen2 und da war der Sound schon gut.

  • Servus Raymond79 ,

    Möchtest du den Kopfhörer an den Ausgang des Verstärkers hängen und über amixer die maximale Amplitude am Ausgang des Hifiberry reduzieren? Wenn ja, müsste ich ja noch eine Umschaltung zwischen Lautsprecher und Kopfhörer realisieren. Audiosignal per Relais schalten, wollte ich eigentlich vermeiden.

    Das wäre so spontan mein Plan gewesen. Wenn Dein eingebauter Verstärker allerdings ein nicht unerhebliches Grundrauschen mitbringt, hast Du natürlich recht, dass damit der Signal-Rausch-Abstand zu gering wird.

    Bezüglich des Umschaltens hätte ich tatsächlich an ein Relais gedacht. Ich weiß ja nicht, wieviel Watt Dein Verstärker liefert, aber mehr als 5-10W werden es nicht sein. Bei 10W @4R komme ich rechnerisch auf ca. 1,6A. Ein Relais mit einem maximalen Strom von 2A an den Schaltkontakten, z.B. sowas würde am Verstärkerausgang (Lautsprecherseite) reichen. Die Spule über einen weiteren GPIO mit einem npn-Transistor ähnlich wie hier ansteuern.

    Ein weiteres Problem, was ich sehe ist, dass wenn ich die Lautstärke am Ausgang des Hifiberry reduziere ist der Abstand zwischen Rausch-Signal und dem eigentlichen Audio Signal zu gering, was man dann hört. Ich habe diesen Mechanismus genutzt, um die maximale Lautstärke zu begrenzen. Unter 40% war der Klang zu gruselig. Für den Kopfhörer müsste ich noch weiter runter gehen, was sich dann richtig schlecht anhört.

    Da Du ja dieses Umschalten zwischen Lautsprecher und Kopfhörer sowieso bewerkstelligen musst, um bei gesteckten Kopfhörer die Lautsprecher der Box abzuschalten, könntest Du ja an der Seite der Wechslerkontakte, an denen der Kopfhörerausgang hängt, für links und rechts jeweils einen Leistungswiderstand in Reihe hängen. Diese beiden Widerstände müssen so bemessen sein, dass sie am Kopfhörer den gewünschten Spannungsabfall erzeugen UND die abfallende Leistung aushalten. EDIT: Der Vorteil wäre, dass damit nicht nur die "Musik", sondern auch das Rauschen entsprechend gedämpft wird.

    Was deine Bedenken mit dem Kopfhörer-Ausgang am Raspberry Pi angeht, trifft das bestimmt auf einen Raspi der ersten Generation zu, aber nicht für die späteren. Mein erster Raspi war ein Gen2 und da war der Sound schon gut.

    Dazu habe ich meine eigene, unmaßgebliche Meinung. Es steht Dir natürlich frei, den Original-Klinkenstecker des RPi zu verwenden. Allerdings weiß ich nicht, wie man ihn in ALSA als weitere "Soundkarte" zusätzlich zu einem HifiBerry einbindet.

    Unabhängig davon hätte ich "Angst", in der Software der Phoniebox das Umschalten zwischen den beiden Audiowiedergabegeräten (HifiBerry und RPi-Klinke) umsetzen zu müssen, ohne dabei den MPD im laufenden Betrieb zu stören... Hört sich für mich richtig schwierig an. Ich bin aber auch nach wie vor ein waschechter Linuxnoob.

    Ach ja, an dem vierten Pin der RPi-Klinkenbuchse hängt der analoge Videoausgang (PAL) dran (und die Belegung ist überdies nicht standardkonform)! Dieses Signal wirst Du jedenfalls nicht über einen GPIO abfragen können. Wenn Du das auf Masse hängst, machst Du womöglich noch etwas am RPi kaputt!

  • Mein erster Raspi war ein Gen2 und da war der Sound schon gut.

    Kann ich für den 3A+ und den 3B insofern bestätigen, als der Klang störungsfrei ist. Treibt sogar meinen B&W P5 II. Highend ist natürlich anders.

    Ich würde allerdings den Phoneausgang des DAC+ nehmen. Den dann mit einer schaltende Klinkenbuchse verbinden, wie von schlizbäda vorgeschlagen.
    Die gibt es mit Schliesern und/oder Öffnern und mit letzterem die Versorgungsspannung des nachgeschalteten Verstärkers einfach abschalten.

    Gruß Norbert

  • Hallo Norbert,

    deine Idee gefällt mir.
    Wie ist die DAC+ Platine verschaltet? Mein DAC+ Ist mit Chinch-Buchsen ausgestattet aber nicht mit einer Klinkenbuchse. Ist das einfach nur ein Paralleler Ausgang? Dann könnte ich da einfach ein Kabel anschließen und nach außen führen.
    Viele Grüße aus Köln

    Reinhold

  • Ist das einfach nur ein Paralleler Ausgang? Dann könnte ich da einfach ein Kabel anschließen und nach außen führen.

    Könntest Du, leider wird es trotzdem nicht funktionieren. War mein Fehler. Ich habe gerade gelesen, dass im DAC+ der PCM5122 Chip zum Einsatz kommt.
    Dieser hat einen Ausgangswiderstand von ca. 1kOhm. Heisst, der hat zwar mit 2,1V Ausgangsspannung genug Spannung für den KH, allerdings ist die Impedanz zu hoch.

  • Die Idee können wir also begraben.

    So ist es, leider. Das Problem des 2-fachen output (hier: line out DAC+ und Raspi-Klinke) beschäftigt die Szene übrigens schon länger, ohne dass ich hierfür eine Lösung im Netz gefunden hätte.

    Die simpelste Lösung dürfte die (etwas abgewandelte) Idee von schlizbäda sein. Klinkenbuchse mit 2-fach Öffner zum abschalten der LS und Betrieb der KH mit Serienwiderständen. Das hat ja Jahrzehnte auch in vielen Stereoverstärkern funktioniert.

  • mit mpd kann ich den 3.5mm Klinkenstecker und z.B. einen Bluetooth-Lautsprecher ansteuern.

    Einen Hifiberry uum probieren habe ich nicht.

    Kannst Du hierzu 'mal die mpd.conf reinreichen?

    Das würde mich auch brennend interessieren. Überall liest man, dass MPD Multi-Soundkarten-Fähig ist. Aber leider erschließt sich mir nicht dass wie. Die Beispiele die man findet sind meist mit mehreren USB Sound Karten.

  • Reinhold,


    ich habe zwischenzeitlich 'mal etwas mit dem Klinkenausgang des RasPI gespielt. So schlecht klingt der (an 2 aktiven Logitech PC LS) nicht.
    Hast Du 'mal versucht den nachfolgenden AMP dort anzuschließen, den DAC+ also weg zu lassen? Dann wäre es es ja einfach.

    Grüße
    aus Leichlingen (Parkplatz von Köln :))

  • Kannst Du hierzu 'mal die mpd.conf reinreichen?

  • Reinhold,


    ich habe zwischenzeitlich 'mal etwas mit dem Klinkenausgang des RasPI gespielt. So schlecht klingt der (an 2 aktiven Logitech PC LS) nicht.
    Hast Du 'mal versucht den nachfolgenden AMP dort anzuschließen, den DAC+ also weg zu lassen? Dann wäre es es ja einfach.

    Grüße
    aus Leichlingen (Parkplatz von Köln :))

    Die Idee merke ich mir mal....

    Das werde ich mal ausprobieren, erde aber wahrscheinlich erst Donnerstag dazu kommen.

    Ich halte euch auf dem Laufenden.

    Viele Grüße

    Reinhold

Jetzt mitmachen!

Du hast noch kein Benutzerkonto auf unserer Seite? Registriere dich kostenlos und nimm an unserer Community teil!