TGViewer
Linux - Reddit Linux - Reddit @r_linux · 1.06K subscribers
Post #42275 39
ASUS ROG Strix G512LW / Realtek ALC294 Linux speaker fix — Ubuntu/Kubuntu + Fedora

I wanted to share this because I spent way too long chasing this issue, and maybe it saves someone else the headache.

This was tested on an:

ASUS ROG Strix G512LW / G512LW_G512LW
Realtek ALC294 internal audio
Intel Comet Lake-H UHD graphics
NVIDIA RTX 2070 Mobile / Max-Q

# The problem

The laptop’s internal speakers were detected in Linux, but they were silent.

Symptoms I ran into:

Built-in audio shows up in sound settings
Speaker-test runs but no sound comes out
Headphones/HDMI may show separately
PipeWire/WirePlumber sees the device
Internal speakers may randomly break again after updates/reboots

The important thing I learned is that this fix is **not just distro-specific**. The same laptop can need a slightly different `snd-hda-intel model=` order depending on which HDA audio controller Linux detects first.

This laptop has both:

Intel PCH / Realtek ALC294 analog audio
NVIDIA HDMI audio

The `model=` options are position-based, so the order matters.

# Step 1: Check your audio card order

Run:

aplay -l

Look for something like this:

card 0: PCH [HDA Intel PCH], device 0: ALC294 Analog
card 1: NVidia [HDA NVidia], HDMI devices

or the reverse order, where NVIDIA is card 0 and PCH/ALC294 is card 1.

That card order decides which fix to use.

# If PCH / ALC294 is card 0 and NVIDIA is card 1

This was the working order on my Fedora install.

Use:

options snd-hda-intel model=asus-zenbook,auto

Create the config:

sudo tee /etc/modprobe.d/rog-audio.conf >/dev/null <<'EOF'
options snd-hda-intel model=asus-zenbook,auto
EOF

# If NVIDIA is card 0 and PCH / ALC294 is card 1

This was the working order on my Kubuntu install.

Use:

options snd-hda-intel model=auto,asus-zenbook

Create the config:

sudo tee /etc/modprobe.d/rog-audio.conf >/dev/null <<'EOF'
options snd-hda-intel model=auto,asus-zenbook
EOF

# Ubuntu / Kubuntu

After creating the config file, rebuild initramfs:

sudo update-initramfs -u -k all

Then fully power off:

systemctl poweroff

Leave it off for about 30 seconds, then boot again.

# Fedora

On normal Fedora, after creating the config file, rebuild initramfs with dracut:

sudo dracut --force /boot/initramfs-$(uname -r).img $(uname -r)

Then fully power off:

systemctl poweroff

Leave it off for about 30 seconds, then boot again.

# Fedora Atomic / Kinoite / rpm-ostree style installs

My Fedora install did not have `dnf` or `dnf5`, so I used kernel args with `rpm-ostree`.

For Fedora where PCH/ALC294 is card 0 and NVIDIA is card 1:

sudo rpm-ostree kargs --delete-if-present='snd_hda_intel.model=auto,asus-zenbook'
sudo rpm-ostree kargs --append-if-missing='snd_hda_intel.model=asus-zenbook,auto'

Then power off:

systemctl poweroff

Wait about 30 seconds, then boot again.

# Step 2: Verify the quirk loaded

After reboot, run:

cat /sys/module/snd_hda_intel/parameters/model

For Fedora in my case, I wanted to see:

asus-zenbook,auto

For Kubuntu in my case, I wanted to see:

auto,asus-zenbook

There may be a bunch of extra `(null)` entries after it. That is fine.

# Step 3: Reset PipeWire to analog stereo

Run:

CARD=$(pactl list cards short | awk '/00_1f.3/ {print $2; exit}')
echo "$CARD"

pactl set-card-profile "$CARD" output:analog-stereo+input:analog-stereo
pactl set-default-sink alsa_output.pci-0000_00_1f.3.analog-stereo

Then unmute the ALSA controls:

PCH=$(aplay -l | awk '/HDA Intel PCH|PCH/ {gsub(":","",$2); print $2; exit}')
echo "$PCH"

amixer -c "$PCH" set Master 100% unmute || true
amixer -c "$PCH" set Speaker 100% unmute || true
amixer -c "$PCH" set Headphone 100% unmute || true
amixer -c "$PCH" set PCM 100% unmute || true
amixer -c "$PCH" set 'Auto-Mute Mode' Disabled || true

sudo alsactl store

Restart PipeWire/WirePlumber:

systemctl --user restart pipewire pipewire-pulse wireplumber

Test sound:

pw-play
More from @r_linux
  1. Oct 7, 2026Budgie 10.10.3 Released | Buddies of Budgie https://buddiesofbudgie.org/blog/budgie-10-10-…
  2. Oct 7, 2026Cloudflare’s eBPF Replatforming Part 3: Technical Challenges Implementing eBPF https://ebp…
  3. Oct 7, 2026dotz v1.0 - Braille and ASCII previews of images and videos in the terminal https://github…
  4. Oct 7, 2026Linux Kernel's LZ4 Compression Code Being Resynced For Better Performance & Cleanliness ht…
  5. Oct 7, 2026gEnclave: Hardware-backed security enclave for Linux (TPM 2.0 PCR sealing, virtual FIDO2/C…
  6. Oct 7, 2026Meta Open Sources eBPF Security Tool https://github.com/facebookincubator/bpfjailer https:…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →