Asus G751 external mic not working. External headphones not working.

Asked by Dagfinn Reiakvam on 2015-01-23

Hi,

I'm having some problems with the sound on my Asus G751 laptop. The speakers work fine, even the subwoofer. But the mic input does not work, and the headphone output does not work. Line out works. These are the three jacks i have on the laptop. In windows these three are shared with outputs, and when I insert the mic in windows I get a popup asking me if I inserted a Mic or a Sub (If I remember correctly).

I have tried to use different "options snd-hda-intel" modes: auto, asus-mode1 to asus-mode8, but I haven't got any sound in the mic nor the headphones. I have made sure that everything is unmuted in alsamixer. I have tried to route the signal correctly using hda-analyzer, but I sill don't get any sound. The internal mic works correctly.

When I insert the microphone it is detected as inserted. Headphones are not detected. Line in is detected and working.

Here is the ./alsa-info.sh dump when my external microphone is connected, and my headphone is connected:

http://www.alsa-project.org/db/?f=1675fbc77fbfddf5c938033e191901b35b18b3a6

I am using alsa 1.0.25+dfsg-0ubuntu4 from the development ppa. Ubuntu 14.10.

Question information

Language:
English Edit question
Status:
Expired
For:
Ubuntu alsa-driver Edit question
Assignee:
No assignee Edit question
Last query:
2015-02-18
Last reply:
2015-03-06

Try:

options snd-hda-intel position_fix=1

In alsa-base.conf Or try model=laptop

Dagfinn Reiakvam (dagfinn-5) said : #2

It doesn't seen to help. I get this in my kernel.log, regardless of position_fix and/or model=laptop:

Jan 24 09:34:49 g751 kernel: [ 2.038292] snd_hda_intel 0000:00:1b.0: irq 46 for MSI/MSI-X
Jan 24 09:34:49 g751 kernel: [ 2.038398] snd_hda_intel 0000:01:00.1: Disabling MSI
Jan 24 09:34:49 g751 kernel: [ 2.038403] snd_hda_intel 0000:01:00.1: Handle VGA-switcheroo audio client
Jan 24 09:34:49 g751 kernel: [ 2.057456] sound hdaudioC0D0: autoconfig: line_outs=1 (0x15/0x0/0x0/0x0/0x0) type:line
Jan 24 09:34:49 g751 kernel: [ 2.057460] sound hdaudioC0D0: speaker_outs=2 (0x14/0x1a/0x0/0x0/0x0)
Jan 24 09:34:49 g751 kernel: [ 2.057462] sound hdaudioC0D0: hp_outs=0 (0x0/0x0/0x0/0x0/0x0)
Jan 24 09:34:49 g751 kernel: [ 2.057463] sound hdaudioC0D0: mono: mono_out=0x0
Jan 24 09:34:49 g751 kernel: [ 2.057464] sound hdaudioC0D0: dig-out=0x1e/0x0
Jan 24 09:34:49 g751 kernel: [ 2.057465] sound hdaudioC0D0: inputs:
Jan 24 09:34:49 g751 kernel: [ 2.057466] sound hdaudioC0D0: Mic=0x18
Jan 24 09:34:49 g751 kernel: [ 2.057468] sound hdaudioC0D0: Internal Mic=0x12
Jan 24 09:34:49 g751 kernel: [ 2.067604] input: HDA Intel PCH Mic as /devices/pci0000:00/0000:00:1b.0/sound/card0/input14
Jan 24 09:34:49 g751 kernel: [ 2.068513] input: HDA Intel PCH Line Out as /devices/pci0000:00/0000:00:1b.0/sound/card0/input15

joe (jkk-2) said : #3

The pin config seems to be quite messed up with this laptop. I had initially no sound via subwoofer/headphones. With some of the asus-models I got eventually headphones, but the internal speakers were not muted after the headphones were plugged in. After playing with hda_analyze and reading a lot of stuff I came up eventually with the following for the output:

* create /lib/firmware/asus-g751-hda.fw with

[codec]
0x10ec0668 0x104312ff 0

[pincfg]
0x12 0x99a60930
0x14 0x99170110
0x15 0x411111f0
0x16 0x0421101f
0x18 0x04a11840
0x19 0x411111f0
0x1a 0x99170111
0x1b 0x411111f0
0x1d 0x411111f0
0x1e 0x04411120
0x1f 0x411111f0

* edit alsa-base.conf

options snd-hda-intel patch=asus-g751-hda.fw

I'm using 14.10, the output and internal mic work fine. I did *NOT* test line in, mic in and S/PDIF though. And I've no line out, only line in, mic in and HP out jacks.

Before applying this, check that your Vendor Id and Subsystem Id from /proc/asound/card0/codec#0 match with the numbers after [codec].

Dagfinn Reiakvam (dagfinn-5) said : #4

Thanks,

That made most of my outputs work correctly. However the extrenal mic is still not working. I have been trying to route the signal correctly through hda_analyze, but no luck so far.

Plugging in the mic gives me the following changes:

 Node 0x07 [Audio Input] wcaps 0x10051b: Stereo Amp-In
   Device: name="ALC668 Analog", type="Audio", device=0
   Amp-In caps: ofs=0x17, nsteps=0x3f, stepsize=0x02, mute=1
   Amp-In vals: [0x3b 0x3b]
- Converter: stream=4, channel=0
+ Converter: stream=0, channel=0

 Node 0x08 [Audio Input] wcaps 0x10051b: Stereo Amp-In
   Control: name="Capture Volume", index=0, device=0
     ControlAmp: chs=3, dir=1, idx=0, ofs=0
   Control: name="Capture Switch", index=0, device=0
     ControlAmp: chs=3, dir=1, idx=0, ofs=0
   Amp-In caps: ofs=0x17, nsteps=0x3f, stepsize=0x02, mute=1
   Amp-In vals: [0x3b 0x3b]
- Converter: stream=0, channel=0
+ Converter: stream=4, channel=0

 Node 0x23 [Audio Mixer] wcaps 0x20010b: Stereo Amp-In
   Amp-In caps: ofs=0x00, nsteps=0x00, stepsize=0x00, mute=1
- Amp-In vals: [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80]
+ Amp-In vals: [0x00 0x00] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80] [0x80 0x80]

joe (jkk-2) said : #5

No luck until now ... :-(

You were right w.r.t. the line out jack - the last jack on the right seems to be OUT only (codec pin capab) - though the (German) manual clearly states it's audio input - whatever ...

I used hda-verb to check the sense status of the pins and the 0x18 for mic in is correct, as is 0x15 for the line out. I had no success trying to reroute the 0x18 to the speaker output via the internal amps with hda-analyzer - although all the inputs/outputs were not muted and with max vol, I only got some white noise and bad crackling noise when switching some of the mute controls. Recording from the mic when it's plugged in produces no sound either. Recording from internal mic works fine.

The mic in does work under Win, so no HW issue here.

There are plenty of vendor widgets in the codec so I'm wondering if one doesn't have to do some magic with them ... :-S

Here is at least the updated cfg file with line out I'm using now and with some comments. Line out does work with the config for me.

[codec]
0x10ec0668 0x104312ff 0

[pincfg]
# internal mic
0x12 0x99a60930
# internal speakers
0x14 0x99170110
# line out jack
0x15 0x04011020
# HP jack
0x16 0x0421101f
# mic in jack
0x18 0x04a11840
0x19 0x411111f0
# internal subwoofer
0x1a 0x99170111
0x1b 0x411111f0
0x1d 0x411111f0
# SPDIF (?)
0x1e 0x04411120
0x1f 0x411111f0

Dagfinn Reiakvam (dagfinn-5) said : #6

Thanks for the update. But it seems that there is no longer a volume control on the subwoofer, there is probably a limited number of amplifiers, either use it for the subwoofer, or for the line out.

Speaking of the subwoofer, do you also feel that the sound if very "to the left" with the subwoofer enabled? Maybe it should go through a lowpass filter or something.

joe (jkk-2) said : #7

You're right, I didn't notice that.

I tried to have a look how Win copes with that - with the latest drivers the sub has indeed some LP and overall the sound is much better - not sure if only thanks to the LP. With the factory drivers it sounded just as under Linux. Anyway with the latest drivers there are always max. 3 outpus - once you plug in something, the internal speakers/sub are off. Thus not even Win needs more than 3 physical volume controls at a time, though I've no idea whether this is done by the reconfiguration of the HDA amps/out pins.

There seem to be only 0xc/0xd/0xe amps for the output pins available, hence one can't really control speakers, sub, HP and line out independently at once. I'm not sure if alsa is able to reconfigure the amps and reassign the vol controls based on the jack availability, in such case one could probably get the independent controls like in Win.

The LP for sub would be nice, but it's probably some vendor widget magic or SW LP. I saw some howtos for Linux how one can configure a SW LP, but I didn't play with that. My main concern is being able to mute the internal speakers/sub when HP are plugged in so that I can actually use my ext. speakers ... :-)

Launchpad Janitor (janitor) said : #8

This question was expired because it remained in the 'Open' state without activity for the last 15 days.

Dagfinn Reiakvam (dagfinn-5) said : #9

Maybe we should move this to a bug?On 18 Feb 2015 09:36, Launchpad Janitor <email address hidden> wrote:
>
> Your question #261148 on alsa-driver in Ubuntu changed:
> https://answers.launchpad.net/ubuntu/+source/alsa-driver/+question/261148
>
>     Status: Open => Expired
>
> Launchpad Janitor expired the question:
> This question was expired because it remained in the 'Open' state
> without activity for the last 15 days.
>
> --
> If you're still having this problem, you can reopen your question either
> by replying to this email or by going to the following page and
> entering more information about your problem:
> https://answers.launchpad.net/ubuntu/+source/alsa-driver/+question/261148
>
> You received this question notification because you asked the question.

Launchpad Janitor (janitor) said : #10

This question was expired because it remained in the 'Open' state without activity for the last 15 days.

FZ (sirfz) said : #11

Just want to confirm Joe's configuration in comment #3 worked for me. It fixes the HP jack while keeping the rear and bass speakers both functional (when HP are unplugged). Mic jack remains nonfunctional.

Hiklo (hiklo) said : #12

Testing in a LiveCD of 18.04.1 the mic error still persists as of 11-08-2018

Hiklo (hiklo) said : #13

Talking with developers on the alsa-devel mailing list has lead to a patch that will be out in the 4.20 kernel. If it does not already work (when 4.20 kernel comes out) set model=asus-g751 in alsa config file. However the headphone port still needs to be overwritten.

IMarvinTPA (imarvintpa-y) said : #14

I have a G752VT and this post helped me get close to the solution for my laptop.
I haven't tested the microphone or SPDIF capabilities. But this is a workable pinout for most uses.
Here are the settings I used:

[codec]
0x10ec0668 0x10431ced 0

[pincfg]
#Pin 12 is Internal Mic
0x12 0x90a60160
#Pin 14 is Internal "front" speakers
0x14 0x90170110
#Pin 15 is "Line Out" according to the manual, But Pin 15 won't let me pick that in HDA Jack Retask.
#Trying to use this as an output will have a constant tone too.
#Using this as an output breaks the front speakers working correctly with headphone detection.
0x15 0x40f000f0
#Pin 16 is the headphone jack.
0x16 0x0321403f
#Pin 18 is the external Microphone jack.
0x18 0x03a19020
#Pin 19 is nothing.
0x19 0x411111f0
#Pin 1a is the internal subwoofer. (Set the sound system to Stereo 2.1)
0x1a 0x90170151
#Pin 1b is nothing.
0x1b 0x411111f0
#Pin 1d is nothing.
0x1d 0x40c6852d
#Pin 1e is the internal SPDIF out.
0x1e 0x014b1180
#Pin 1f is nothing.
0x1f 0x411111f0