Help diagnose audio issue | Lenovo Yoga 7 16 | Audio

I am new to Linux and wondering if someone would be kind enough to walk me through something.
I have a Lenovo Yoga 7 16". The audio is very low (and tinny). There is some kind of HD audio system (Realtek) which I am missing out on. not sure if it’s even possible to get this working but I found a github page (which I struggle to understand as I am no coder/dev) where the guy posted some updates he made to fix his Yoga9 (similar machine, but intel instead of AMD like mine).

He made a comment as follows, which I am hoping someone might be able to ‘translate’ to Fedora instructions for me if possible:

"I’m on Ubuntu 23.10, but the sound fix for me was just to create snd.conf in /etc/modprobe.d/ In that file, add the line…

options snd-sof-intel-hda-common hda_model=alc287-yoga9-bass-spk-pin

This turns on the bass speakers and makes the sound"

Thanks for any comments

1 Like

Before you touch the config file, run commands or installl additional program, I would recommend you to check the basics (agnostic to hardware);

  • Master volume on audio settings of your desktop environment
  • Check device volume and application volume
  • What apps did you use to play sound?
  • Insert a USB device (example: earphone/headphone) to see if the audio volume changes as you move the volume level
  • Check audio profiles and what value it is set as default. If you changed any settings, please share.
  • If soundcard of your computer has known faults that are relevant to the issue you have, please share the link.

Please let us know what anomalies you have.

Example) KDE Plasma
Screenshot_20240119_191420

Thanks, I should have said but I am past all of that. It’s nothing basic/obvious, it’s compatibility.

I have audio. It functions normally, except for being low on volume and quite tinny. It’s a known issue as these Lenovo Yoga machines have “Dolby Atmos” and an HD speaker system (4 or 6 speakers i think). I believe it’s because not all the speakers are firing, just the two tweeters.
I don’t have any audio profiles like you have in your screenshot. I am in Gnome on Fedora 39 Workstation. I will attach a screenshot of my sound settings below.

I actually have 2 problems but wanted to keep this thread focussed on this one, low volume audio. (the other is no mic input which I think is because this machine has Realtek audio and would love to fix that also but can make do with a USB mic for now)

My machine : Realtek Audio Driver for Windows 11 (64-bit) - Yoga 7 14ARP8, Yoga 7 16ARP8 - Lenovo Support GB

I have researched (for days/weeks) and there are many threads online with ‘fixes’ but for the most part I am not sure how to use github (or CLI) well enough to implement any. I did try one, which was to install Pulse Effects with some profiles someone put on Reddit for Dolbt Atmos systems, claiming it worked (and many others agreed it improved audio dramatically), but for me despite following the instructions I can’t see any movement in Pulse Effects app even when playing audio which had me stumped. (Should see sound waveform but I don’t). Those instructions are here: Reddit - Dive into anything

This person has a Yoga 9 and fixed his same issue with audio levels, but I don’t know how to try applying his fix - GitHub - PJungkamp/yoga9-linux: Linux patches, scripts and similar to make the most of my Lenovo Yoga9 14IAP7

Sorry for the long reply. TL;DR - my machine isn’t perfectly compatible and I made that mistake when buying it. But it was a great deal and is perfect for my needs so I would really like to make it work if at all possible. Usable audio levels would basically do that at this point, I can investigate the lack of a microphone later if necessary!
Thanks

In case it’s of any use, I have just figured out how to do a ‘probe’. Here’s mine:

My machine specs according to Lenovo - https://psref.lenovo.com/Product/Yoga_7_16ARP8?tab=spec

You might want to try installing PulseAudio Volume Control (pavucontrol) to control both the volume of hardware devices and of each playback stream separately. pavucontrol would give you more fine-grained control for input, output, recording and configuration graphically. You can test microphone.

Thanks. It’s quite confusing, Pulse Effects, Pulse Audio, Easy Effects…
I understand where are ways to tweak stuff, and I do intend to do that, but it seems best to leave that for later once I have actually tried to fix the issue of the machine only using the two tweeters. I am led to believe there are ‘hacks’ to get around this problem at least somewhat.

Can I ask something specific, as I think this may be as close to a fix as I am going to find any time soon. I want to try some advice someone gave me after they fixed the same machine’s audio/speaker problems in other distros, but I don’t know how to ‘do’ what they advise (command wise). I will paste below what they said, and I’d be extremely grateful if someone could tell me how to actually do it, either in GUI or Terminal…

"On Ubuntu and Manjaro to get the speakers working is to create a file named snd.conf with this line in it…

options snd-sof-intel-hda-common hda_model=alc287-yoga9-bass-spk-pin

…and put that file in /etc/modprobe.d/ directory. "

It sounds simple for anyone who knows basic CLI, which I don’t! (yet!)

You can test the

Files like this with options are used to permanently set parameters needed by a module. The hda_model option is mentioned in modinfo snd-sof-intel-hda-common, but that doesn’t list the allowed values to the option, so you should test this before making it permanent. You may be able to test this on a running system with modprobe. In a terminal, use :

$ sudo modprobe -n -v snd-sof-intel-hda-common hda_model=alc287-yoga9-bass-spk-pin

to see if the option is supported in F39. You can also edit the kernel command line at boot time (in the grun menu, enter e to get the grub editor) to make a temporary change to the kernel command-line. In that case, add the text:

snd-sof-intel-hda-common.hda_model=alc287-yoga9-bass-spk-pin

Thanks George. Am I right in thinking you just gave me two ways to test the code, before making a permanent change to my system with what may be a non-working bit of code? If so, thank you, and great idea as that’s one of the main reasons I don’t like to just paste commands in willy-nilly, never know what it’s doing let alone how to undo!

If so… if I use option one, how do I ‘undo’ it? With a reboot perhaps?

I would not recommend users to modify modules from the Kernel or apply a patch file without informing them of implications.

  • The fixes/patches from other forums are not official.
  • The guide related to changing kernel is normally aimed at testers not necessarily familiar with the Fedora kernel development process, but requires minimal understanding of the associated tooling.
  • “Try it at your own risk” isn’t appealing enough for users to have a go with unofficial patches.

I don’t understand that fully, but know it wasn’t aimed at me so no worries there. But reading it, I thought I’d interject just to say…

I do want to try that suggested audio fix. If that means I will be “patching the kernel” then I may just have to learn enough to be safe to do so, or better still, do it as a test which will disappear on reboot (as I thought George was suggesting in his post).

Just for your info, the new kernel 6.7.x includes quirk for Lenovo Yoga Pro 7.

The new kernel is released on Koji build system for a test.

https://fedoraproject.org/wiki/Test_Day:2024-01-21_Kernel_6.7_Test_Week

Yes. Fedora 39 may not have the version of the module that supports hda_model=alc287-yoga9-bass-spk-pin, or there may be bugs in the support, so you may get error messages, partially working sound, or (with very low probability, but always non-zero) smoke and sparks. If you don’t get errors, you can check to see if the sound issue is fixed. Rebooting after capturing error messages will revert to the previous status. If the module option works in the current kernel, there are multiple ways to make the change persistent, but one step at a time.

Thanks, I think! I really don’t follow much of your comment there. Could you perhaps tell me exactly what to do (easiest way) to test this suggestion and see if it improves the sound?

I think this is above my paygrade. Not sure what “quirk” is, or a “build system”. I fear guessing my way through unless I can definitely roll back. I’d be happy to try a live USB and mess around in there though.

So there’s a new kernel 6.7. Not that I know exactly what a kernel is…Am I right in thinking you’re suggesting it may help activate my speakers/subwoofer and improve the audio?
thanks

If you have a fried who is experienced with linux, two heads are better than one while testing a new kernel or configuration changes. Often problems encountered after trying to apply a suggested “workaround” are a result of typing mistakes or omitting a step, not the workaround. One person enters commands while the other checks for typos.

If your Lenovo Yoga 7 16" can be spared for the week, you could follow the F39 Workstation instructions to install koji, then download and install the test kernel. Run the tests to make sure basic things are working, and then check to see if your bass speakers are enabled. If not, you will need to manually enable the module with the snd-sof-intel-hda-common module with the hda_model=alc287-yoga9-bass-spk-pin option, either by editing the boot command-line the grub2 editor or in a terminal as previously mentioned.

It dows appear that support for you model is coming, The easy route if you can live with the current sound quality for a while is to wait for Fedora 40. You can also check to see if any of users with your model participate in the tests and ask if they have the full sound system working.

1 Like

Hell, if anywhere sold them, I’d BUY a linux-friend :smiley: - Sadly I don’t have that luxury! That said, I am confident in not making mistakes, I am the type of person who reads stuff 3 times before hitting go! The issue is more the lack of confidence in knowing what I am actually playing with. A good example concern I have with all this sort of code tweak stuff… (which is one of my ongoing concerns about Linux generally)…

Let’s say I run some commands such as those above to enable a module or whatever, when I get updates, will they be ‘lost’ (overwritten)? That does worry me, again just a lack of foundational knowledge and as the (true) saying goes… “Knowledge dispels fear”.

I don’t like the sound of the Koji idea, though I will read more on it when I get some time this week. I think I will just try to run the commands and see if things improve.

I really do hope your thoughts that my machine may get some support in the future come true, that would be fantastic if so.

Thanks for supporting me through this headache, that goes for everyone here

I am sadly at the point where I think I need to sell this mint Yoga 7 (16ARP8) and start a new hunt for a more Fedora compatible laptop. Very VERY sad day. (Woke up this morning with a dead machine and no charger with me, i closed lid last night forgetting to power down first, suspend seems to use as much battery as watching YouTube :smiley: )

However I re-read this thread (and many others) today, and thought WTH, why not try this Koji thing. I have no clue what it is, is Koji an OS, a Kernel…? Confused.com :slight_smile:

Here is my thinking, in case someone can confirm I am roughly on the right track…

Go to Test Day:2024-01-21 Kernel 6.7 Test Week - Fedora Project Wiki for instructions. (Which I don’t really understand but will try)

Run commands:

sudo dnf install koji
mkdir -p ~/work/kernel_test
cd ~/work/kernel_test
koji download-build --arch=$(uname -m) kernel-6.7.1-200.fc39
sudo dnf update kernel-*.rpm

As far as i can tell, that will ‘install Koji’ (whatever it is).

At this point, I can check if my speakers are any better, if microphone works, if suspend works.

if it does, MAYBE I can stick with this lovely machine.

IF my steps above are correct, what do I do after finding out if it improved things? Do I need to uninstall Koji? Will a reboot just revert things back…?

thanks for any comments

PS or should I be trying to learn how to follow the instructions given by Geoff above first?

Hi Joey, the latest system update includes kernel 6.7.4 already. No need to experiment via Koji.

Can you check the kernel version by running
$uname -r

If the problem persists with the system update, the issue might be something else.

I’m here from the other thread. Let’s diagnose this Audio issue here :

First thing is Update your system sudo dnf update Should get kernel version 6.7.4 which has some fixes for your hardware. If you have it, then Shutdown/ Powerup the machine. After that do the following below.

Audio reply Ok, i’m gonna ask for some screenshots of certain things if you don’t mind.

Give me a screenshot f your Gnome>Settings>Sound screen
Like this :


At the very least we should see the AMD driver

1 Like