Cómo hice funcionar mis auriculares en Manjaro (codec DA7219) después de volverme loco

Hola a todos,

Les comparto esto por si alguien está con el mismo drama. Resulta que en mi laptop con Manjaro y KDE Plasma los auriculares con cable dejaron de ser reconocidos. Al enchufarlos no pasaba nada: el sonido seguía por los altavoces integrados o simplemente no había audio. Lo peor es que el sistema veía la tarjeta de sonido, pero el puerto de auriculares aparecía como «availability unknown».

Después de dar muchas vueltas y recibir una mano enorme, descubrimos dos cosas:

El driver del chip DA7219 (el que trae mi laptop) tenía un errorcillo: en dmesg salía «Invalid jack detect rate» . Eso impedía que el sistema supiera si había algo conectado.
Y más importante: dentro del mezclador de ALSA había un par de interruptores apagados que cortaban el camino del audio hacia los auriculares. Eran el «Mixer Out FilterL DACL Switch» y el «Mixer Out FilterR DACR Switch» (los mandaba a encender con los comandos que les dejo más abajo).

Al encender esos dos switches y forzar el puerto de auriculares en PipeWire, ¡por fin se escuchó! La mala noticia es que el error del jack no tiene arreglo fácil sin tocar el kernel, pero como a mí no me importa dejar los auriculares como salida fija, armé un pequeño script que se ejecuta cada vez que inicio sesión y deja todo listo.

primero a donde va el script

mkdir -p ~/.local/bin
nano ~/.local/bin/headphone-fix.sh

y luego el contenido

sleep 3
amixer -c 3 cset numid=74 'DAIL'
amixer -c 3 cset numid=75 'DAIR'
amixer -c 3 cset numid=76 on
amixer -c 3 cset numid=77 on
amixer -c 3 cset numid=62 on
amixer -c 3 cset numid=61 70%
amixer -c 3 cset numid=57 on
amixer -c 3 cset numid=56 90%
pactl set-sink-port alsa_output.platform-avs_da7219.21.auto.stereo-fallback analog-output-headphones

y luego lo guardamos y le damos los permisos

chmod +x ~/.local/bin/headphone-fix.sh
1 Like

If the amixer commands are effective for changing ALSA mixer settings, new settings can be saved to /var/lib/alsa/asound.state as system defaults:

sudo alsactl store

ALSA mixer settings should be restored automatically when system is started.
They can also be restored with:

sudo alsactl restore
1 Like