You are not logged in.
Hi,
i am using a Dell Inspiron 13 (5391) with Archlinux. I have the latest updates installed. Sound is working fine, but i cannot get the microphone working. I have no pulseaudio related packages installed. I have installed alsa-utils, alsa-ucm-conf and sof-firmware. In alsamixer i have unmuted everything and turned up the volumes.
When i try to record and play with arecord/aplay, i cannot hear anything i spoke but only acoustic noise:
$ arecord --duration=5 --format=dat test.wav
Recording WAVE 'test.wav' : Signed 16 bit Little Endian, Rate 48000 Hz, Stereo
$ aplay test.wav
Playing WAVE 'test.wav' : Signed 16 bit Little Endian, Rate 48000 Hz, StereoAny idea how i can get the internal microphone working?
Some more output:
$ arecord -l
**** List of CAPTURE Hardware Devices ****
card 0: sofhdadsp [sof-hda-dsp], device 0: HDA Analog (*) []
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: sofhdadsp [sof-hda-dsp], device 1: HDA Digital (*) []
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: sofhdadsp [sof-hda-dsp], device 6: DMIC (*) []
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: sofhdadsp [sof-hda-dsp], device 7: DMIC16kHz (*) []
Subdevices: 1/1
Subdevice #0: subdevice #0$ sudo dmesg | grep snd
[ 13.156572] snd_hda_intel 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if info 0x040100
[ 13.156595] snd_hda_intel 0000:00:1f.3: Digital mics found on Skylake+ platform, using SOF driver
[ 13.669464] snd_soc_skl 0000:00:1f.3: DSP detected with PCI class/subclass/prog-if info 0x040100
[ 13.669616] snd_soc_skl 0000:00:1f.3: Digital mics found on Skylake+ platform, using SOF driver
[ 14.258586] snd_hda_codec_realtek ehdaudio0D0: autoconfig for ALC3204: line_outs=1 (0x14/0x0/0x0/0x0/0x0) type:speaker
[ 14.258590] snd_hda_codec_realtek ehdaudio0D0: speaker_outs=0 (0x0/0x0/0x0/0x0/0x0)
[ 14.258592] snd_hda_codec_realtek ehdaudio0D0: hp_outs=1 (0x21/0x0/0x0/0x0/0x0)
[ 14.258593] snd_hda_codec_realtek ehdaudio0D0: mono: mono_out=0x0
[ 14.258594] snd_hda_codec_realtek ehdaudio0D0: inputs:
[ 14.258595] snd_hda_codec_realtek ehdaudio0D0: Headset Mic=0x19
[ 14.258596] snd_hda_codec_realtek ehdaudio0D0: Headphone Mic=0x1a
[ 14.355537] snd_hda_codec_realtek ehdaudio0D0: ASoC: sink widget AIF1TX overwritten
[ 14.355547] snd_hda_codec_realtek ehdaudio0D0: ASoC: source widget AIF1RX overwritten$ lsmod | grep snd
snd_ctl_led 24576 0
snd_soc_skl_hda_dsp 24576 1
snd_soc_intel_hda_dsp_common 20480 1 snd_soc_skl_hda_dsp
snd_soc_hdac_hdmi 45056 1 snd_soc_skl_hda_dsp
snd_hda_codec_hdmi 81920 1
snd_hda_codec_realtek 159744 1
snd_hda_codec_generic 98304 1 snd_hda_codec_realtek
snd_soc_dmic 16384 1
snd_sof_pci_intel_cnl 16384 0
snd_sof_intel_hda_common 131072 1 snd_sof_pci_intel_cnl
soundwire_intel 53248 1 snd_sof_intel_hda_common
snd_sof_intel_hda 20480 1 snd_sof_intel_hda_common
snd_sof_pci 20480 2 snd_sof_intel_hda_common,snd_sof_pci_intel_cnl
snd_sof_xtensa_dsp 20480 1 snd_sof_intel_hda_common
snd_sof 200704 2 snd_sof_pci,snd_sof_intel_hda_common
snd_soc_skl 221184 0
snd_soc_hdac_hda 28672 2 snd_sof_intel_hda_common,snd_soc_skl
snd_hda_ext_core 36864 5 snd_sof_intel_hda_common,snd_soc_hdac_hdmi,snd_soc_hdac_hda,snd_soc_skl,snd_sof_intel_hda
snd_soc_sst_ipc 20480 1 snd_soc_skl
snd_soc_sst_dsp 40960 1 snd_soc_skl
snd_soc_acpi_intel_match 57344 3 snd_sof_intel_hda_common,snd_soc_skl,snd_sof_pci_intel_cnl
snd_soc_acpi 16384 3 snd_soc_acpi_intel_match,snd_sof_intel_hda_common,snd_soc_skl
snd_soc_core 393216 8 soundwire_intel,snd_sof,snd_sof_intel_hda_common,snd_soc_hdac_hdmi,snd_soc_hdac_hda,snd_soc_skl,snd_soc_dmic,snd_soc_skl_hda_dsp
ledtrig_audio 16384 5 snd_ctl_led,snd_hda_codec_generic,dell_wmi,snd_sof,dell_laptop
snd_compress 28672 1 snd_soc_core
ac97_bus 16384 1 snd_soc_core
snd_pcm_dmaengine 16384 1 snd_soc_core
snd_hda_intel 61440 0
snd_intel_dspcfg 32768 3 snd_hda_intel,snd_sof_intel_hda_common,snd_soc_skl
snd_intel_sdw_acpi 20480 2 snd_sof_intel_hda_common,snd_intel_dspcfg
snd_hda_codec 184320 7 snd_hda_codec_generic,snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec_realtek,snd_soc_intel_hda_dsp_common,snd_soc_hdac_hda,snd_soc_skl_hda_dsp
snd_hda_core 118784 12 snd_hda_codec_generic,snd_hda_codec_hdmi,snd_hda_intel,snd_hda_ext_core,snd_hda_codec,snd_hda_codec_realtek,snd_soc_intel_hda_dsp_common,snd_sof_intel_hda_common,snd_soc_hdac_hdmi,snd_soc_hdac_hda,snd_soc_skl,snd_sof_intel_hda
snd_hwdep 16384 1 snd_hda_codec
snd_pcm 163840 12 snd_hda_codec_hdmi,snd_hda_intel,snd_hda_codec,soundwire_intel,snd_sof,snd_sof_intel_hda_common,snd_soc_hdac_hdmi,snd_compress,snd_soc_core,snd_soc_skl,snd_hda_core,snd_pcm_dmaengine
snd_timer 49152 1 snd_pcm
snd 126976 15 snd_ctl_led,snd_hda_codec_generic,snd_hda_codec_hdmi,snd_hwdep,snd_hda_intel,snd_hda_codec,snd_hda_codec_realtek,snd_timer,snd_soc_hdac_hdmi,snd_compress,snd_soc_core,snd_pcm,snd_soc_skl_hda_dsp
soundcore 16384 2 snd_ctl_led,sndMaybe this thread is related to https://bbs.archlinux.org/viewtopic.php?id=254463
edit: update arecord -l output
Last edited by Strubbl (2021-12-22 13:16:46)
Offline
If you're currently setting the snd-intel-dspcfg or dmic_detect=0 parameters you need to remove them since as mentioned in that thread this will expectedly disable the mic.
FWIW have you tested whether the second mic works?
arecord -Dhw:0,2 test.wavLast edited by V1del (2021-12-22 09:11:19)
Offline
My kernel command line has none of the mentioned parameters and my /etc/modprobe.d/ is empty.
Second mic seems not to work.
$ arecord -Dhw:0,2 --duration=5 --format=dat test.wav
arecord: main:831: audio open error: No such file or directory
$ arecord -Dhw:0,1 --duration=5 --format=dat test.wav
arecord: main:831: audio open error: Invalid argumentI have updated the output of arecord -l in the first post. It has 4 sofhdadsp devices now. But still no success in recording from the first microphone device
Last edited by Strubbl (2021-12-22 13:22:14)
Offline
? So you did originally have one of these parameters since the current output aligns more with what I expect to see if they aren't present. Do the other mic(s) work?
Offline
Until yesterday i have had the kernel parameter snd_hda_intel.dmic_detect=0 set. But as far as i remember i removed that before posting here. Maybe i recorded the old arecord list before that change.
The other mics do not work:
$ arecord -Dhw:6,0 --duration=5 --format=dat test.wav
ALSA lib confmisc.c:165:(snd_config_get_card) Cannot get card index for 6
arecord: main:831: audio open error: No such file or directory
$ arecord -Dhw:7,0 --duration=5 --format=dat test.wav
ALSA lib confmisc.c:165:(snd_config_get_card) Cannot get card index for 7
arecord: main:831: audio open error: No such file or directory
$ arecord -Dhw:1,0 --duration=5 --format=dat test.wav
ALSA lib confmisc.c:165:(snd_config_get_card) Cannot get card index for 1
arecord: main:831: audio open error: No such file or directoryOnly device 0 works, but i cannot hear what i said into the microphone.
$ arecord -Dhw:0,0 --duration=5 --format=dat test.wav
Recording WAVE 'test.wav' : Signed 16 bit Little Endian, Rate 48000 Hz, Stereo
$ aplay test.wav
Playing WAVE 'test.wav' : Signed 16 bit Little Endian, Rate 48000 Hz, StereoLast edited by Strubbl (2021-12-22 13:58:12)
Offline