2

This new laptop (E5-573-55U8) has only one jack for headphones+mic combo input. It's the mic I'm having trouble getting working, and yes, it's plugged in all the way.

Headphones work fine.

Internal mic works fine, internal speakers work fine.

External mic is not listed even when plugged in, nor does it take over the listed internal one or anything like that. I've verified this by recording with my hand over the external mic, and it doesn't change the recording. Tried with Web Skype, Audacity, and Zoom.

The listing is both in the normal Sound Input system prefs and PulseAudio Volume Control which I tried installing just for this issue. It shows two options under Configuration. Both are "Built-in Audio", and the first has a bunch of HDMI-related stuff for the Profile choices. The second has Analog Stereo Duplex, Input, or Output as choices. When I put Output, the one and only mic is gone from the Input Devices tab. When I put Duplex, it's there, but as I said, it's the internal. (And in apps like Zoom, for instance, the only mic available in the drop-down is Built-in Audio Analog Stereo.)

How can I get my external headset mic to show up and be generally usable?

Update I have also checked the headset hardware is not at fault by plugging it into a laptop running Windows 8. You can tell it's recording from the headset and not the laptop built-in mic because moving the mic part of the headset, which is almost silent, makes a lot of noise in a recording. Also covering the headset mic while talking makes a big difference to what is heard. (This is how I could tell the opposite on my Linux laptop.)

Update 2 Diagnostic info: https://pastebin.com/G6N6CA6Q

Update 3 While recording: https://pastebin.com/0Fkqukvh

Update 4 While recording after installing nightly Xenial driver: https://pastebin.com/78BR0Lg3

And the diff before (1) and after (2) the driver:

$ diff audio1 audio2
52,56d51
<   Control: name="IEC958 Playback Con Mask", index=0, device=0
<   Control: name="IEC958 Playback Pro Mask", index=0, device=0
<   Control: name="IEC958 Playback Default", index=0, device=0
<   Control: name="IEC958 Playback Switch", index=0, device=0
<   Control: name="ELD", index=0, device=3
64c59
<   Unsolicited: tag=01, enabled=1
---
>   Unsolicited: tag=00, enabled=0
72,76d66
<   Control: name="IEC958 Playback Con Mask", index=1, device=0
<   Control: name="IEC958 Playback Pro Mask", index=1, device=0
<   Control: name="IEC958 Playback Default", index=1, device=0
<   Control: name="IEC958 Playback Switch", index=1, device=0
<   Control: name="ELD", index=0, device=7
84c74
<   Unsolicited: tag=02, enabled=1
---
>   Unsolicited: tag=00, enabled=0
92,96d81
<   Control: name="IEC958 Playback Con Mask", index=2, device=0
<   Control: name="IEC958 Playback Pro Mask", index=2, device=0
<   Control: name="IEC958 Playback Default", index=2, device=0
<   Control: name="IEC958 Playback Switch", index=2, device=0
<   Control: name="ELD", index=0, device=8
104c89
<   Unsolicited: tag=03, enabled=1
---
>   Unsolicited: tag=00, enabled=0
  • 1
    Assuming Intel HDA sound, please put the output of cat /proc/asound/card*/codec\#* into a pastebin, and edit your question with a link. If this is empty, please edit without of lspci. Same for output of amixer -c0 contents, where 0 is the index if your hardware (check with aplay -l). – dirkt Apr 4 '17 at 13:52
  • @dirkt thanks! Turns out (according to aplay -l) it is Intel HDA, at index 1 (the first three entries were index 0 and were for HDMI, which I'm not using.) Link added as requested (has the output of cat and amixer both.) – Kev Apr 4 '17 at 17:18
  • 1
    Interesting. I can see the pin widgets for internal speaker, internal mic and headphone, but no headphone mic. Please plug in the headphone combo, switch on recording (arecord/parecord to /dev/null or whatever), no matter from what source, and again put the codec output into a pastebin. Maybe one pin complex will detect the presence of the mic. Also, you have a muted mixer in the recording path I want to check out while recording. – dirkt Apr 4 '17 at 18:01
  • @dirkt done, link added. The muted mixer is probably the "record the stereo output" option, I think. – Kev Apr 5 '17 at 6:33
  • 1
    NO_PRESENCE in all other pin complexes. Next guess is that it works through one of the Vendor Defined widgets. Unfortunately, the datasheet for the Realtek ALC255 codec doesn't seem to be available online. It also seems to be used specifically by the "Fujitsu Lifebook" laptop. So while it works with the vendor-supplied Windows drivers, unless someone reverse engineers the Windows driver or finds a datasheet, in that case there's little one can do. – dirkt Apr 5 '17 at 6:50
2

I also just ran into this problem today trying to get a headset microphone working on an Acer R15 laptop running Mint 18.1. It also has Intel HDA with the 2 in 1 headphone / mic jack. No external mic was showing up at all.

Not sure what the exact issue was but I finally got it working by installing the latest alsa drivers using a DKMS package from:

https://code.launchpad.net/~ubuntu-audio-dev/+archive/alsa-daily/+packages

Hopfully this helps you.

  1. Install DKMS

sudo apt-get install dkms

  1. Download the latest deb file from the above link and install make sure its for Ubuntu 16.04 for Mint 18.1, So in my case was.

sudo dpkg -i oem-audio-hda-daily-lts-xenial-dkms_0.201704040732~ubuntu16.04.1_all.deb

  1. Once that is done restart your computer.

Note: I got my info from: https://wiki.ubuntu.com/Audio/UpgradingAlsa/DKMS

  • First step: dkms is already the newest version (2.2.0.3-2ubuntu11.3). – Kev Apr 5 '17 at 6:34
  • Second and third: It installed OK and I restarted (leaving the headset plugged in) and there's no change that I can tell. But I redid the diagnostic steps with the new drivers in case there was some other effect. Thanks for sharing your solution though... – Kev Apr 5 '17 at 6:43
2

This patch (which is quite recent, Feb 2017) adds a quirk for some Asus laptops with ALC255 codec for a very similar situation like yours: Headphone mic, but no presence detected. They use Node 0x19.

If you are up to it, you can insert a similar quirk for your laptop with your PCI ids, recompile the drivers and see if it helps.

Possibly you can also try this out with hdajackretask (on Debian, package alsa-tools-gui; no idea about Mint), but I've never tried to make such a change with it. Might need fiddling.

In doubt, file a bugreport with the ALSA developers, mention the patch and your similar situation, and see if they can give you specific instructions how to test it.

  • Thanks for the options. hdajackretask looked promising, but I tried every available pin, with varying results, but none of them giving a working external mic. Trying to compile, but the git server at alsa-project.org/main/index.php/GIT_Server , which is supposed to be what kernel.org gets it from, only has Feb 15 2017 as the latest patch to alsa-driver (mirror branch--others are even older) whereas the patch you linked to is from Feb 28. I guess I'm looking at the wrong repo? (You can see what I mean @ git.alsa-project.org/?p=alsa-driver.git;a=shortlog;h=refs/heads/… – Kev Apr 5 '17 at 15:29
  • OK AFAICT the patch appears to be one that is not part of the official source yet (despite being signed off?) but anyway patches alsa-kernel, not alsa-driver. Specifically this file: git.alsa-project.org/?p=alsa-kernel.git;a=blob;f=sound/pci/hda/… – Kev Apr 5 '17 at 15:41
  • 1
    The thing is, the patch also seems to modify other nodes, and without knowing the configuration of the laptop it applies to it would need some inspection to figure out what happens. I can't guide you remotely here, I'd have to have the laptop in front of me and try things out. As I said, contact the ALSA developers. – dirkt Apr 5 '17 at 16:14

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.