19

I have an Acer Aspire V15 Nitro Laptop that only sports a combo jack for both microphone and headphones at the same time. It was always a bit tricky but worked until I reinstalled Arch Linux recently.

Since then the microphone part has not been detected anymore. In pavucontrol, using the previously working configuration "Analog Stereo Duplex", I can only select "Analog Input" (the internal mic, which does not work as well). There is no other option for the port.

alsamixer shows no input devices at all.

How can I get my external microphone back working?

Additional questions:

How can I see which devices are detected on a hardware level?

  • Answer in: https://askubuntu.com/questions/1078911/smartphone-headset-microphone-not-working-only-internal-does – Ferroao Jun 15 '19 at 00:01
  • I tried a kernel update just in case, as described there: https://unix.stackexchange.com/questions/614294/microphone-recognised-in-pavucontrol-but-not-useable Indeed, "puvacontrol" is showing th headphones as unplugged, and yet show sound from it as described in this issue... but no luck with 5.8, it still doesn't work. – Eric Burel Sep 08 '21 at 19:36

3 Answers3

14

After some more searching I found a post that told me to create /etc/modprobe.d/alsa-base.conf with following contents:

options snd-hda-intel model=dell-headset-multi

After reboot the headset microphone showed up again and works.

  • Also [confirmed to work](https://superuser.com/a/1332264/98286) for Dell Precision 7520, Ubuntu 18.04 by [marp](https://superuser.com/users/915644/marp). – Nobody moving away from SE Jun 18 '18 at 14:31
  • 2
    So the laptop isn't actually Dell but you were still able to make it work by inserting this line, right? I'm having a similar issue on Thinkpad. – xji Dec 27 '18 at 23:38
  • 1
    @xij Yes, as I said in the question it is an Acer. – Nobody moving away from SE Dec 28 '18 at 17:29
  • 2
    As mentioned in this page https://docs.slackware.com/howtos:hardware:audio_and_snd-hda-intel you can do `cat /proc/asound/card*/codec* | grep Codec`. Then you can look up the codec in https://www.kernel.org/doc/html/latest/sound/hd-audio/models.html and see the options you can use.Unfortunately I can't get the headset mic to work on my MacBook Pro. – jasperge Jan 10 '19 at 09:12
  • `/etc/modprobe.d/alsa-base.conf` doesn't exist for me on Fedora 29. – Alireza Mirian May 17 '19 at 16:00
  • @AlirezaMirian The post explicitly says you should create it. – Nobody moving away from SE May 19 '19 at 19:50
  • You're right, but I saw a similar solution on youtube in which the file was already existing. Not sure if I'm right or not but I think this Alsa thing is for ubuntu and and audio is handled by Pulse in Fedora by default. – Alireza Mirian May 19 '19 at 20:01
  • 1
    @AlirezaMirian AFAIK PulseAudio uses ALSA under the hood: ALSA is talking to the hardware while Pulse talks to the applications (and to ALSA). I am using Pulse on the system described above as well. – Nobody moving away from SE May 21 '19 at 07:37
  • You're right. I created the file and it worked like a charm. Thanks. – Alireza Mirian May 21 '19 at 10:55
  • Thank you, that solved it for me on Ubuntu 19.04 – Mathias Conradt Sep 14 '19 at 19:32
  • @jasperge Thank you so much. It worked for Asus! My codec is Realtek `options snd-hda-intel model=alc668-headset` worked. – Edip Ahmet Mar 26 '20 at 22:58
  • confirmed with options `snd-hda-intel model=dell-headset-multi` even if it's an ASUS X560 on Pop OS 20.04 – Abdelouahab Apr 03 '22 at 15:11
  • Works even on Precision 7740, hurray! I just have to switch microphone manually, it still prefers the internal one, but that is a minor issue. – dmatej Sep 07 '22 at 12:41
12

I have a headset (combined stereo headphones and mic) jack on my Dell PC with Ubuntu 16.04 and experienced the same problem.

First use hdajackretask check that the problem is not related to the jack:

  1. Press Ctrl+Alt+T to access the terminal.
  2. Type sudo apt-get install alsa-tools-gui
  3. Once installation is complete, launch HDAJackRetask app from the dash and it should look something like this:
    hdajackretask GUI
  4. Check that the jack you're trying to access is identified correctly.
  5. If the jack setting is incorrect, then override the incorrect setting, test that the override works and then Install boot override.

I was trying to use the the front headphone jack and it was alredy correctly detected as 'Headphone' so I had install the HD-Audio Codec to get my headphone jack to work.

  1. Press Ctrl+Alt+T to access the terminal.
  2. Type cat /proc/asound/card*/codec* | grep Codec in the terminal and take note of the codecs listed.
  3. If there are multiple codecs listed, determine which one relates to your headset jack. For me there were two listed – one related the the video card (Codec: ATI R6xx HDMI) and another related to the sound card (Codec: Realtek ALC3861). In my case, I was interested in the sound card because I was connecting to the PC headset jack and not a HDMI device such as a PC monitor.
  4. Look up the HD-Audio model for your codec in HD-Audio Codec-Specific Models. For my headset jack, the best fit was the headset-mic model.
  5. Type cd /etc/modprobe.d/ in the terminal.
  6. Type sudo cp alsa-base.conf alsa-base.conf.bak to backup the file before editing.
  7. Type gksudo gedit ./alsa-base.conf to edit the file.
  8. Insert this line at the bottom of the file options snd-hda-intel model={HD-Audio model for you codec}. For example, for it me it was options snd-hda-intel model=headset-mic.
  9. Save file and reboot.
Jaydin
  • 221
  • 2
  • 6
  • I have no idea how HDAJackRetask works, how it's supposed to work, how it helps. Sorry I am looking at it with no idea how to use it to get the jack to work with the external mic. – Peterson Silva May 17 '20 at 02:15
  • @PetersonSilva are you able to get HDAJackRetask running? Can you send a link to a screenshot of the output? Where are you plugging in the microphone (eg front mic)? – Jaydin May 19 '20 at 06:40
  • 1
    In openSUSE the correspondent **alsa-base.conf** file is **50-sound.conf** – Gilberto Feb 12 '21 at 12:20
  • Other thing, the **mic** only works after enable the **Loopback** through alsamixer. – Gilberto Feb 12 '21 at 13:54
  • I followed these directions, but used the *model=dell-headset-multi* in my conf file – Jason Mehmel Nov 24 '21 at 19:22
4

My laptop is ACER E5-573G-74Q5. My codec is Realtek ALC255.

I did Yurii S’s solution, but it didn’t work. Then Soundar gave me the idea of putting more than one codec in /etc/modprobe.d/alsa-base.conf, where I added the following line:

options snd-hda-intel model=alc255-acer,dell-headset-multi

Putting just one or the other didn't work, but putting both worked. Strange, but putting dell codec on my acer worked.

  • same here! Acer TravelMate P256-M-53H6 Notebook from around 2016 with fedora 31. Options line was: `options snd-hda-intel model=alc283-headset,dell-headset-multi`. Needed to create `/etc/modprobe.d/alsa-base.conf` first. Did some trial and error of promising module candidates in https://www.kernel.org/doc/html/latest/kernel-hacking/index.html after calling `cat /proc/asound/card*/codec* | grep Codec` – Markus Dutschke Jul 20 '21 at 07:03