Hello everybody. I dont have any more clue on how to get audio from my internal notebook speakers. I’m using a ThinkPad X390 dual booting Windows 11 and EndeavourOS and pipewire.
After i installed EndeavourOS my Notebook only output audio through headphones and displayed the speakers as unavailable in pavucontrol. As far as i can tell this is because of faulty autoswitching from speakers to headphones, when plugging in headphones. This autoswitching never worked on this notebook, also not on Windows, but i never cared, since manual switching is good enough for me.
However i switched the parser hint “jack_detect” to “no” in hdajackretask, which made the speakers available in pavucontrol and everywhere else.
But one problem persists, i don’t get any sound from the speakers. I checked pavucontrol and alsamixer, where the speakers are unmuted and at a 100 volume. For test purposes i unmuted all channels in alsamixer and put them to a 100, just to only hear sound on my headphones, even though the speakers are selected for output.
Some more information to give technical context:
❯ aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: PCH [HDA Intel PCH], device 0: ALC257 Analog [ALC257 Analog]
Subdevices: 0/1
Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 3: HDMI 0 [HDMI 0]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 7: HDMI 1 [HDMI 1]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 8: HDMI 2 [HDMI 2]
Subdevices: 1/1
Subdevice #0: subdevice #0
The content of my ~/.config/alsacontrol/asoundrc file, i have no asound.config:
# ALSA-Control - ALSA configuration interface
# Copyright (C) 2020 sezanzeb <proxima@hip70890b.de>
#
# This file is part of ALSA-Control.
#
# ALSA-Control is free software: you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation, either version 3 of the License, or
# (at your option) any later version.
#
# ALSA-Control is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with ALSA-Control. If not, see <https://www.gnu.org/licenses/>.
# This file will be overwritten, don't edit it by hand
# used for hardware cards
pcm.alsacontrol-dmix {
type dmix
ipc_key 92882631 # some made up value
slave {
pcm "hw:CARD=PCH"
channels 2
}
}
# used for jack level monitoring
# This could also be used for sysdefault pcms, but that doesn't seem
# to support more channels than 2, hence dmix above is used.
pcm.alsacontrol-plug {
type plug
slave.pcm "hw:CARD=PCH"
}
# used so that multiple apps can record from that device
pcm.alsacontrol-dsnoop {
type dsnoop
ipc_key 34376432 # some made up value
slave {
pcm "null"
}
}
pcm.alsacontrol-output-softvol {
type softvol
slave.pcm {
type softvol
slave.pcm "alsacontrol-dmix"
control {
name alsacontrol-output-volume
card 0
}
}
control {
name alsacontrol-output-mute
card 0
}
resolution 2
}
pcm.alsacontrol-input-softvol {
type softvol
slave.pcm {
type softvol
slave.pcm {
type plug
slave.pcm "null"
}
control {
name alsacontrol-input-volume
card 0
}
}
control {
name alsacontrol-input-mute
card 0
}
resolution 2
}
# Have data from jack in the correct format using a plug, so
# that its input level can be monitored.
pcm.alsacontrol-jack-input {
type plug
slave.pcm jack
}
pcm.!default {
type asym
playback.pcm {
type plug
slave.pcm "alsacontrol-output-softvol"
}
capture.pcm {
type plug
slave.pcm "alsacontrol-input-softvol"
}
}
❯ sudo dmesg | grep -E 'snd|sof'
[sudo] password for fredo:
[ 0.108170] software IO TLB: area num 8.
[ 0.814915] PCI-DMA: Using software bounce buffering for IO (SWIOTLB)
[ 0.814917] software IO TLB: mapped [mem 0x000000008cdeb000-0x0000000090deb000] (64MB)
[ 0.982776] integrity: Loaded X.509 cert 'Microsoft Corporation UEFI CA 2011: 13adbf4309bd82709c8cd54f316ed522988a1bd4'
[ 0.982789] integrity: Loaded X.509 cert 'Microsoft Windows Production PCA 2011: a92902398e16c49778cd90f99e4f9ae17c55af53'
[ 5.754721] snd_hda_intel 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if info 0x040380
[ 5.787354] snd_hda_intel 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if info 0x040380
[ 5.790429] snd_hda_intel 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if info 0x040380
[ 5.894282] snd_hda_intel 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if info 0x040380
[ 6.202949] snd_hda_intel 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if info 0x040380
[ 6.265361] snd_hda_intel 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if info 0x040380
[ 6.273555] snd_hda_intel 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if info 0x040380
[ 6.277345] snd_hda_intel 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if info 0x040380
[ 6.344693] snd_hda_intel 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if info 0x040380
[ 6.361662] snd_hda_intel 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if info 0x040380
[ 6.387042] snd_soc_skl 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if info 0x040380
[ 6.413248] snd_soc_avs 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if info 0x040380
[ 6.562163] sof-audio-pci-intel-cnl 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if info 0x040380
[ 6.978366] snd_hda_intel 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if info 0x040380
[ 6.978693] snd_soc_skl 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if info 0x040380
[ 6.978753] snd_soc_avs 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if info 0x040380
[ 6.978804] sof-audio-pci-intel-cnl 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if info 0x040380
[ 7.029924] snd_hda_intel 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if info 0x040380
[ 7.109279] snd_hda_intel 0000:00:1f.3: bound 0000:00:02.0 (ops i915_audio_component_bind_ops [i915])
[ 7.109480] snd_hda_intel 0000:00:1f.3: Applying patch firmware 'hda-jack-retask.fw'
[ 7.194118] snd_hda_codec_realtek hdaudioC0D0: autoconfig for ALC257: line_outs=1 (0x14/0x0/0x0/0x0/0x0) type:speaker
[ 7.194127] snd_hda_codec_realtek hdaudioC0D0: speaker_outs=0 (0x0/0x0/0x0/0x0/0x0)
[ 7.194131] snd_hda_codec_realtek hdaudioC0D0: hp_outs=1 (0x21/0x0/0x0/0x0/0x0)
[ 7.194135] snd_hda_codec_realtek hdaudioC0D0: mono: mono_out=0x0
[ 7.194137] snd_hda_codec_realtek hdaudioC0D0: inputs:
[ 7.194140] snd_hda_codec_realtek hdaudioC0D0: Mic=0x19
[ 7.194143] snd_hda_codec_realtek hdaudioC0D0: Internal Mic=0x12
❯ lspci -k
00:00.0 Host bridge: Intel Corporation Coffee Lake HOST and DRAM Controller (rev 0b)
Subsystem: Lenovo Device 2286
Kernel driver in use: skl_uncore
00:02.0 VGA compatible controller: Intel Corporation WhiskeyLake-U GT2 [UHD Graphics 620]
Subsystem: Lenovo Device 2286
Kernel driver in use: i915
Kernel modules: i915
00:04.0 Signal processing controller: Intel Corporation Xeon E3-1200 v5/E3-1500 v5/6th Gen Core Processor Thermal Subsystem (rev 0b)
Subsystem: Lenovo Device 2286
Kernel driver in use: proc_thermal
Kernel modules: processor_thermal_device_pci_legacy
00:08.0 System peripheral: Intel Corporation Xeon E3-1200 v5/v6 / E3-1500 v5 / 6th/7th/8th Gen Core Processor Gaussian Mixture Model
Subsystem: Lenovo Device 2286
00:12.0 Signal processing controller: Intel Corporation Cannon Point-LP Thermal Controller (rev 30)
Subsystem: Lenovo Device 2286
Kernel driver in use: intel_pch_thermal
Kernel modules: intel_pch_thermal
00:14.0 USB controller: Intel Corporation Cannon Point-LP USB 3.1 xHCI Controller (rev 30)
Subsystem: Lenovo Device 2286
Kernel driver in use: xhci_hcd
Kernel modules: xhci_pci
00:14.2 RAM memory: Intel Corporation Cannon Point-LP Shared SRAM (rev 30)
Subsystem: Lenovo Device 2286
00:14.3 Network controller: Intel Corporation Cannon Point-LP CNVi [Wireless-AC] (rev 30)
Subsystem: Intel Corporation Device 0034
Kernel driver in use: iwlwifi
Kernel modules: iwlwifi
00:15.0 Serial bus controller: Intel Corporation Cannon Point-LP Serial IO I2C Controller #0 (rev 30)
Subsystem: Lenovo Device 2286
Kernel driver in use: intel-lpss
Kernel modules: intel_lpss_pci
00:16.0 Communication controller: Intel Corporation Cannon Point-LP MEI Controller #1 (rev 30)
Subsystem: Lenovo Device 2286
Kernel driver in use: mei_me
Kernel modules: mei_me
00:1c.0 PCI bridge: Intel Corporation Cannon Point-LP PCI Express Root Port #1 (rev f0)
Subsystem: Lenovo Device 2286
Kernel driver in use: pcieport
00:1c.4 PCI bridge: Intel Corporation Cannon Point-LP PCI Express Root Port #5 (rev f0)
Subsystem: Lenovo Device 2286
Kernel driver in use: pcieport
00:1d.0 PCI bridge: Intel Corporation Cannon Point-LP PCI Express Root Port #9 (rev f0)
Subsystem: Lenovo Device 2286
Kernel driver in use: pcieport
00:1d.4 PCI bridge: Intel Corporation Cannon Point-LP PCI Express Root Port #13 (rev f0)
Subsystem: Lenovo Device 2286
Kernel driver in use: pcieport
00:1f.0 ISA bridge: Intel Corporation Cannon Point-LP LPC Controller (rev 30)
Subsystem: Lenovo Device 2286
00:1f.3 Audio device: Intel Corporation Cannon Point-LP High Definition Audio Controller (rev 30)
Subsystem: Lenovo Device 2286
Kernel driver in use: snd_hda_intel
Kernel modules: snd_hda_intel, snd_soc_skl, snd_soc_avs, snd_sof_pci_intel_cnl
00:1f.4 SMBus: Intel Corporation Cannon Point-LP SMBus Controller (rev 30)
Subsystem: Lenovo Device 2286
Kernel driver in use: i801_smbus
Kernel modules: i2c_i801
00:1f.5 Serial bus controller: Intel Corporation Cannon Point-LP SPI Controller (rev 30)
Subsystem: Lenovo Device 2286
Kernel driver in use: intel-spi
Kernel modules: spi_intel_pci
00:1f.6 Ethernet controller: Intel Corporation Ethernet Connection (6) I219-V (rev 30)
Subsystem: Lenovo Device 2286
Kernel driver in use: e1000e
Kernel modules: e1000e
01:00.0 SD Host controller: Genesys Logic, Inc GL9750 SD Host Controller (rev 01)
Subsystem: Lenovo Device 2286
Kernel driver in use: sdhci-pci
Kernel modules: sdhci_pci
02:00.0 PCI bridge: Intel Corporation JHL6240 Thunderbolt 3 Bridge (Low Power) [Alpine Ridge LP 2016] (rev 01)
Subsystem: Lenovo Device 2286
Kernel driver in use: pcieport
03:00.0 PCI bridge: Intel Corporation JHL6240 Thunderbolt 3 Bridge (Low Power) [Alpine Ridge LP 2016] (rev 01)
Subsystem: Lenovo Device 2286
Kernel driver in use: pcieport
03:01.0 PCI bridge: Intel Corporation JHL6240 Thunderbolt 3 Bridge (Low Power) [Alpine Ridge LP 2016] (rev 01)
Subsystem: Lenovo Device 2286
Kernel driver in use: pcieport
03:02.0 PCI bridge: Intel Corporation JHL6240 Thunderbolt 3 Bridge (Low Power) [Alpine Ridge LP 2016] (rev 01)
Subsystem: Lenovo Device 2286
Kernel driver in use: pcieport
04:00.0 System peripheral: Intel Corporation JHL6240 Thunderbolt 3 NHI (Low Power) [Alpine Ridge LP 2016] (rev 01)
Subsystem: Lenovo Device 2286
Kernel driver in use: thunderbolt
Kernel modules: thunderbolt
3a:00.0 USB controller: Intel Corporation JHL6240 Thunderbolt 3 USB 3.1 Controller (Low Power) [Alpine Ridge LP 2016] (rev 01)
Subsystem: Lenovo Device 2286
Kernel driver in use: xhci_hcd
Kernel modules: xhci_pci
3d:00.0 Non-Volatile memory controller: Intel Corporation SSD DC P4101/Pro 7600p/760p/E 6100p Series (rev 03)
Subsystem: Intel Corporation SSD Pro 7600p/760p/E 6100p Series [NVM Express]
Kernel driver in use: nvme
Kernel modules: nvme
~ pactl list sinks ✔️ 09:36:19
Sink #50
State: SUSPENDED
Name: alsa_output.pci-0000_00_1f.3.analog-stereo
Description: Built-in Audio Analog Stereo
Driver: PipeWire
Sample Specification: s32le 2ch 48000Hz
Channel Map: front-left,front-right
Owner Module: 4294967295
Mute: no
Volume: front-left: 65536 / 100% / 0,00 dB, front-right: 65536 / 100% / 0,00 dB
balance 0,00
Base Volume: 65536 / 100% / 0,00 dB
Monitor Source: alsa_output.pci-0000_00_1f.3.analog-stereo.monitor
Latency: 0 usec, configured 0 usec
Flags: HARDWARE HW_MUTE_CTRL HW_VOLUME_CTRL DECIBEL_VOLUME LATENCY
Properties:
alsa.card = "0"
alsa.card_name = "HDA Intel PCH"
alsa.class = "generic"
alsa.components = "HDA:10ec0257,17aa2288,00100001 HDA:8086280b,80860101,00100000"
alsa.device = "0"
alsa.driver_name = "snd_hda_intel"
alsa.id = "PCH"
alsa.long_card_name = "HDA Intel PCH at 0xb3d3c000 irq 161"
alsa.mixer_name = "Realtek ALC257"
alsa.name = "ALC257 Analog"
alsa.resolution_bits = "16"
alsa.subclass = "generic-mix"
alsa.subdevice = "0"
alsa.subdevice_name = "subdevice #0"
api.alsa.card.longname = "HDA Intel PCH at 0xb3d3c000 irq 161"
api.alsa.card.name = "HDA Intel PCH"
api.alsa.path = "front:0"
api.alsa.pcm.card = "0"
api.alsa.pcm.stream = "playback"
audio.channels = "2"
audio.position = "FL,FR"
card.profile.device = "6"
device.api = "alsa"
device.class = "sound"
device.id = "46"
device.profile.description = "Analog Stereo"
device.profile.name = "analog-stereo"
device.routes = "2"
factory.name = "api.alsa.pcm.sink"
media.class = "Audio/Sink"
device.description = "Built-in Audio"
node.name = "alsa_output.pci-0000_00_1f.3.analog-stereo"
node.nick = "ALC257 Analog"
node.pause-on-idle = "false"
object.path = "alsa:pcm:0:front:0:playback"
priority.driver = "1009"
priority.session = "1009"
factory.id = "18"
clock.quantum-limit = "8192"
client.id = "45"
node.driver = "true"
factory.mode = "merge"
audio.adapt.follower = ""
library.name = "audioconvert/libspa-audioconvert"
object.id = "50"
object.serial = "50"
api.acp.auto-port = "false"
api.alsa.card = "0"
api.alsa.use-acp = "true"
api.dbus.ReserveDevice1 = "Audio0"
api.dbus.ReserveDevice1.Priority = "-20"
device.bus = "pci"
device.bus_path = "pci-0000:00:1f.3"
device.enum.api = "udev"
device.form_factor = "internal"
device.icon_name = "audio-card-analog-pci"
device.name = "alsa_card.pci-0000_00_1f.3"
device.nick = "HDA Intel PCH"
device.plugged.usec = "8165640"
device.product.id = "0x9dc8"
device.product.name = "Cannon Point-LP High Definition Audio Controller"
device.subsystem = "sound"
sysfs.path = "/devices/pci0000:00/0000:00:1f.3/sound/card0"
device.vendor.id = "0x8086"
device.vendor.name = "Intel Corporation"
device.string = "0"
Ports:
analog-output-speaker: Speakers (type: Speaker, priority: 10000, availability group: Legacy 3, availability unknown)
analog-output-headphones: Headphones (type: Headphones, priority: 9900, availability group: Legacy 4, availability unknown)
Active Port: analog-output-speaker
Formats:
pcm
If you require more outputs or information, please let me know what queries to run. I’m new to Linux and don’t quite know a lot about how sound works in Linux.
Thanks a lot in advance