Garbled Audio Output from Headphone Jack on Linux devices using Realtek ALC294

Updated: October 6, 2025 at 03:19 PM

3 min read

I recently installed Fedora Workstation Linux 43 on my ASUS ExpertBook B7 Flip (B7402FBA), but then I noticed, there is no sound from the headphone jack. The internal speakers work well though. As it turns out, there is. But it sounds a bit quiet and garbled.

I searched the entire internet for this problem and find it hardly any useful suggestion. I even asked several AI Agents to solve this problem. But even they can’t fix it.

Then, I found this ubuntu bug forum thread that talks about this issue. After trying the fix myself, Voila! It does work.

I find it might be helpful for other people that might have similar problems from this bug. then I decided to write this note entry. So, here we go…

Before starting this tutorial, We first need to make sure we have hda-verb, which is part of alsa-tools. Because we use Fedora, to install alsa-tools we use this command:

sudo dnf install alsa-tools

After installing alsa-tools, we’re ready to start the tutorial.

To fix the problem, enter the following command to the terminal:

hda-verb /dev/snd/hwC0D0 0x20 0x500 0x1b
hda-verb /dev/snd/hwC0D0 0x20 0x477 0x4a4b
hda-verb /dev/snd/hwC0D0 0x20 0x500 0xf
hda-verb /dev/snd/hwC0D0 0x20 0x477 0x74

The command we just enter is for manually overriding the audio driver to correctly configure the sound card’s headphone output.

Now we can enjoy sound from the headphone jack just fine. But there’s a new problem. At every startup, we must manually enter the code into the Terminal. If not, then we have no sound. This is a problem. But luckily, I have the solution!

We create a service then register it to systemd so it will run at startup!

1. Open your terminal and type this command. This will create a .service file inside the /etc/systemd/system folder.

sudo nano /etc/systemd/system/hda-verb-fix.service

2. Inside of nano, type the following command. This will be run by our service at startup:

[Unit]
Description=ALC294 Headphone fix (Late Stage)
Requires=sound.target
After=alsa-restore.service
[Service]
Type=oneshot
ExecStart=/usr/bin/hda-verb /dev/snd/hwC0D0 0x20 0x500 0x1b
ExecStart=/usr/bin/hda-verb /dev/snd/hwC0D0 0x20 0x477 0x4a4b
ExecStart=/usr/bin/hda-verb /dev/snd/hwC0D0 0x20 0x500 0xf
ExecStart=/usr/bin/hda-verb /dev/snd/hwC0D0 0x20 0x477 0x74
[Install]
WantedBy=sound.target

3. Now save the script by doing CTRL+O, Enter and then CTRL+X

4. After saving the script, we run these commands to apply the changes and apply it immediately

sudo systemctl daemon-reload
sudo systemctl reenable --now hda-verb-fix.service

That’s it! Now headphones output should work automatically on startup. Thanks for reading and have a great day!