Strange sound behavior on Lenovo P51

Hello everyone!

I’ve got a strange issue with sound on my new Lenovo P51
Basically if change sound volume in system configuration (slider) between 0 and 100%, the volume does not change. It’s changing when it’s above 100% or when it’s 0% (mute). It’s changing fine for any particular application, but not the system sound. I’ve tried both Sound app and pavucontrol
Any thoughts? Drivers?

Which desktop environment are you using? What level is your system notifications (in pavucontrol) set at?

Also, you could try setting ‘flat-volumes=no’ in /etc/pulse/daemon.conf and restart pulseaudio with ‘pulseaudio -k’ (as user), although I’m not certain that this is the issue here.

it’s gnome
changing system sound in pavucontrol actually does change the volume o_O

and if i set this setting then system sounds do not affect volume, but the issue persists

well… it kind of works.
In pavucontrol on configuration tab the profile is set to Analog stereo Duplex. If i set it to Digital Stereo (HDMI), then changing the volumes works as expected. So maybe there is some misconfiguration in profile? How do i configure these profiles?

PS and now i’ve also found out that HDMI audio is not being detected. I.e pacmd list-cards shows only analog card.

For troubleshooting at a hardware/driver level, running the alsa-info.sh utility is a good idea. It can upload the output to an online server, and provide a URL whch can be shared here so that others can review it.

https://en.opensuse.org/SDB:Audio_troubleshooting#Script_to_run_to_obtain_detailed_information

oh thank you good sir!

here is the output
http://www.alsa-project.org/db/?f=cd2da1e74b4bf4e7353570fe458bf0d5839a78e8

Is there an /etc/modprobe.d/50-sound.conf file ?

Have you tried configuring the sound device with YaST ?

There is an error in the diagnostic script report


snd_hda_codec_hdmi hdaudioC0D2: Unable to sync register 0x2f0d00

… but I don’t know what that means in the context of your PC problem

.

contents:

options snd slots=snd-hda-intel
# nS1_.q9PsajK07I7:Intel Corporation
alias snd-card-0 snd-hda-intel

jack for headphones is also not detected as sound device=(

kinda… at first there were a sound card as unconfigured. So i’ve pressed configure sound card and it did some configuration

I would recommend deleting any pulse audio configuration files for your user and try again.

You could also check to see if any other user accounts (not root) have the same issue.

I needed to rush to work this AM so I could not then provide more detail wrt the above.

Look for any .pulse or .config/pulse directory and remove those. See if that helps.

Also try a different user account on same pc and see if that has same problem.

This could be useful in narrowing down the problem.

nope=( didn’t help
logging in with a fresh user also didn’t help. So it’s not a user configuration

i wonder if i should try removing sound card from yast and then trying it to reconfigure again

You could try to delete the /etc/modprobe.d/50-sound.conf file (that is where YaST stores the sound configuration) and then when you go to YaST > Hardware > Sound you will see the sound not configured. But rather than reconfigure the sound, reboot instead, and see/listen how sound works without going to YaST to configure.

Then if sound control is no good then you could try then to configure the sound with YaST.

My suspicion is it will make no difference, but it does not hurt to try.

Another possibility is your sound device driver is corrupted from a bad driver install - and to address that you could force a kernel re-install. But that is also speculative. It does not hurt to try but I suspect it won’t work.

That error


snd_hda_codec_hdmi hdaudioC0D2: Unable to sync register 0x2f0d00

may hold the clue - but as far as I know you are not using HDMI audio … are you ? So this is a bit of a puzzle.
.

Another possibility is to try different model options to see if they can address such problems. I note from the script your PC has an ALC298 . I also note in an old HD-Audio-Models.txt file (for an older kernel version - I have not checked for latest) the following options for an ALC29x :


ALC269/270/275/276/28x/29x
======
  laptop-amic        Laptops with analog-mic input
  laptop-dmic        Laptops with digital-mic input
  alc269-dmic        Enable ALC269(VA) digital mic workaround
  alc271-dmic        Enable ALC271X digital mic workaround
  inv-dmic        Inverted internal mic workaround
  headset-mic        Indicates a combined headset (headphone+mic) jack
  lenovo-dock       Enables docking station I/O for some Lenovos
  dell-headset-multi    Headset jack, which can also be used as mic-in
  dell-headset-dock    Headset jack (without mic-in), and also dock I/O

so possibly those could be tried one by one. For example, to try ‘lenovo-dock’ option one would try an /etc/modprobe.d/50-sound.conf which looks something like:


options snd slots=snd-hda-intel model=lenovo-dock
# nS1_.q9PsajK07I7:Intel Corporation
alias snd-card-0 snd-hda-intel

reboot and test.

If that does not work, try another of those from the above file (such as ‘headset-mic’ ) in place of ‘lenovo-dock’, reboot and test. Keep trying one by one … see if any of them work.

If none work, we may be in bug reporting territory.

That is from a very old openSUSE version. The newer openSUSE LEAP-42.2 has this list:


ALC22x/23x/25x/269/27x/28x/29x (and vendor-specific ALC3xxx models)
======
  laptop-amic        Laptops with analog-mic input
  laptop-dmic        Laptops with digital-mic input
  alc269-dmic        Enable ALC269(VA) digital mic workaround
  alc271-dmic        Enable ALC271X digital mic workaround
  inv-dmic        Inverted internal mic workaround
  headset-mic        Indicates a combined headset (headphone+mic) jack
  headset-mode        More comprehensive headset support for ALC269 & co
  headset-mode-no-hp-mic Headset mode support without headphone mic
  lenovo-dock       Enables docking station I/O for some Lenovos
  hp-gpio-led        GPIO LED support on HP laptops
  dell-headset-multi    Headset jack, which can also be used as mic-in
  dell-headset-dock    Headset jack (without mic-in), and also dock I/O
  alc283-dac-wcaps    Fixups for Chromebook with ALC283
  alc283-sense-combo    Combo jack sensing on ALC283
  tpt440-dock        Pin configs for Lenovo Thinkpad Dock support

but you should check the list under openSUSE LEAP-42.3 which is what is on your PC. Look for the HD-Audio-Models.txt file in the directory on your PC


/usr/src/linux-xxxxxxxxx/Documentation/sound/alsa/

where xxxxxxxx is some kernel number

so far no luck =(