Internal microphone on Dell Studio 1557 not working on 11.2

Hello All,
I have set up openSUSE 11.2 on my Dell 1557 laptop. I have got most of the things working except for headphones and the internal mic. I have opened this thread in a hope to resolve the issue with internal microphone >:(. I have opened a different thread for the headphone problem.
The external microphone is working without any problems. Its only the internal microphone which isn’t working. It is a dual array mic.

More details to help debug:

rpm -qa | grep alsa

alsa-utils-1.0.21-3.1.i586
alsa-firmware-1.0.20-3.2.noarch
alsa-1.0.21-3.2.i586
alsa-devel-1.0.21-3.2.i586
alsa-oss-1.0.17-25.2.i586
alsa-tools-1.0.21-2.5.i586
alsa-plugins-pulse-1.0.21-3.3.i586
alsa-plugins-1.0.21-3.3.i586

rpm -qa | grep pulse


pulseaudio-module-gconf-0.9.19-2.3.i586
libxine1-pulse-1.1.17-1.pm.23.3.i586
pulseaudio-utils-0.9.19-2.3.i586
libpulse-mainloop-glib0-0.9.19-2.3.i586
pulseaudio-module-lirc-0.9.19-2.3.i586
pulseaudio-0.9.19-2.3.i586
pulseaudio-module-bluetooth-0.9.19-2.3.i586
libpulse-browse0-0.9.19-2.3.i586
pulseaudio-module-x11-0.9.19-2.3.i586
libpulse-devel-0.9.19-2.3.i586
alsa-plugins-pulse-1.0.21-3.3.i586
pulseaudio-module-zeroconf-0.9.19-2.3.i586

rpm -q libasound2

libasound2-1.0.21-3.2.i586

uname -a

Linux maverick 2.6.31.5-0.1-default #1 SMP 2009-10-26 15:49:03 +0100 i686 i686 i386 GNU/Linux

cat /etc/modprobe.d/50-sound.conf

options snd slots=snd-hda-intel,snd-hda-intel
# u1Nb.6ifUpmcW079:5 Series/3400 Series Chipset High Definition Audio
alias snd-card-0 snd-hda-intel
# 2Oa+.MpPssNCL9N4:R700 Audio Device [Radeon HD 4000 Series]
alias snd-card-1 snd-hda-intel

Output from alsa-info.sh
http://www.alsa-project.org/db/?f=b5a92d03935b0d69aaa0b847f6dc925da0ee6acc

I am not sure whats going wrong. Any help is truly appreciated.
Thanks in advance!

I deleted your duplicate thread that you started. PLEASE only one thread per problem.

deleted - mistaken post

The previous thread I had opened was for the problem with Headphones and this thread that I have opened is for Internal mic. There are 2 different problems and hence 2 different threads!!

Please double check your mixer:

!!Amixer output
!!-------------
!!-------Mixer controls for card 0 [Intel]
Card hw:0 ‘Intel’/‘HDA Intel at 0xf1000000 irq 22’
Mixer name : ‘IDT 92HD73C1X5’
Simple mixer control ‘Mic’,0
Front Left: Capture 3 [100%] [30.00dB]
Front Right: Capture 3 [100%] [30.00dB]
Simple mixer control ‘Mic Jack Mode’,0
Items: ‘Mic In’ ‘Line In’
Item0: ‘Mic In’
Simple mixer control ‘Capture’,0
Front Left: Capture 14 [93%] [21.00dB] [off]
Front Right: Capture 14 [93%] [21.00dB] [off]
Simple mixer control ‘Digital’,0
Front Left: Capture 87 [72%] [13.50dB]
Front Right: Capture 87 [72%] [13.50dB]
Simple mixer control ‘Digital Mic’,0
Front Left: Capture 2 [67%] [20.00dB]
Front Right: Capture 2 [67%] [20.00dB]
According to the above, capture is switched OFF in your mixer. And your digital mic record level is only at 67%. Try moving it up higher to 90%. Once you establish recording, you can lower it to remove distortion.

What are you using for a mic test? I recommend this:

arecord -vv -fdat foo.wav

… where foo.wav is an arbitrary name. Change it to someothername.wav as you wish.

I’m not so certain they are 2 different problems. They may be but they may not be.

You could have at least linked or mentioned each other.

If it is JUST a mic problem you have, then the problem is likely a mixer. But if its mic and headphone, then its possible a bad configuration of alsa.

By not given the overall picture in one thread you are making the job of the person trying to help DOUBLY difficult.

Anyway, I restored the old thread, but I think you are making a mistake the way you are going about trying to get help here.

I decided I am going to merge these threads. The solution I give will apply to both.

Great! My internal mic is working fine! I am really not sure what went wrong when I tried. I made sure “Capture” was selected and I had 100% in Digital Mic and I was testing with arecord. It dint work then. Now its working just fine. Maybe it needed oldcpu’s midas touch :). Thanks a lot oldcpu!
If you want to merge the problems with Internal Microhphone and Headphones in one thread then thats fine with me. I was looking at 2 isolated problems. Sorry for any confusion and making your tasks more difficult.
Waiting to resolve the issue with the headphones.

I note a 32-bit openSUSE-11.2 with a 2.6.31.5-0.1-default kernel on the Dell Studio 1557 on openSUSE-11.2. It has an IDT 92HD73C1X5 hardware audio codec with the default 1.0.21 of alsa that comes with openSUSE-11.2.

My Dell Studio 1537 laptop has the same hardware audio codec, but my laptop has openSUSE-11.1 so I can not draw the exact same conclusions using it.

The fact that BOTH your mic and your headset are not working, suggests to me this is a problem with alsa not automatically configuring your PC for sound upon boot.

I did a search on the alsa web site for the 92HD73 hardware audio codec and obtained this hit: Search results - AlsaProject so I see there was an update to alsa to address what may be a problem with this codec, but whether that alsa fix is related to both mic and headphones I can not tell.

Lets work for now on a hypothesis that it is possible to get this working under 1.0.21 of alsa, and see if we can force the alsa configuration upon boot to work properly. We can do that by applying a model configuration to the /etc/modprobe.d/50-sound.conf file. There is a list of the model options (that should ONLY be applied one at a time) for the IDT 92HD73C1X5 here:

STAC92HD73*
===========
  ref		Reference board
  no-jd		BIOS setup but without jack-detection
  intel		Intel DG45* mobos
  dell-m6-amic	Dell desktops/laptops with analog mics
  dell-m6-dmic	Dell desktops/laptops with digital mics
  dell-m6	Dell desktops/laptops with both type of mics
  dell-eq	Dell desktops/laptops
  auto		BIOS setup (default)

… so lets start off trying “dell-m6-dmic” and if that fails, then we can try other options.

So please open up your /etc/modprobe.d/50-sound.conf file and add this line to the start of the file:

options snd-hda-intel model=dell-m6-dmic

so that the file looks like this:

options snd-hda-intel model=dell-m6-dmic
options snd slots=snd-hda-intel,snd-hda-intel
# u1Nb.6ifUpmcW079:5 Series/3400 Series Chipset High Definition Audio
alias snd-card-0 snd-hda-intel
# 2Oa+.MpPssNCL9N4:R700 Audio Device [Radeon HD 4000 Series]
alias snd-card-1 snd-hda-intel

You can edit that file in :

  • gnome by typing: gnomesu gedit /etc/modprobe.d/50-sound.conf

  • kde by typing: kdesu 'kwrite /etc/modprobe.d/50-sound.conf’
    enter root password when prompted and make the change.

After the change is made, restart your alsa sound driver with su -c ‘rcalsasound restart’ and enter root password when prompted. Restart your mixer (kmix in kde and alsamixer in gnome) and then test your mic and headphones. Make note of the behaviour if only a partial improvement. If not a complete improvement then try another option model from the list, … lets say “dell-m6” , in which case in the /etc/modprobe.d/50-sound.conf file, in the change we made, change the “dell-m6-dmic” to “dell-m6” and then save that and restart your alsa as described above, restart your mixer and test. Do that for each item in the list I quoted until you have either tried them all or you found one that works for both headphone and mic.

If none of them work, then I can help you update alsa with some alsa rpms for 1.0.22 of alsa.

Thanks oldcpu for that. I will be trying that now. But just to clarify, my inbuilt speakers, external mic, and now the internal mic also is working without any problem. Now the only problem is with the headphones. I am trying your suggestion now. Will keep you posted.

Great to read the internal mic is working.

It took me the longest time to sort that on my Dell Studio 1537.

But the headphones not working is weird. That suggests a definite configuration problem.

Awesome! Now everything is working as expected! The speakers, headphones, internal mic, external mic everything works just fine. Thanks a lot oldcpu! You rock!!
Just one small thing. In kmix I notice that I have 2 tabs one for HDA-Intel and the other one for HDA-ATI HDMI. In HDA-Intel I can see all the channels that I can configure. But for the HDA ATI HDMI I just see a jack icon and a mute checkbox and nothing else. Why would that be? Does that mean that my HDMI drivers are not installed? Can that be fixed? Is it worth the effort?

Great !! Out of curiousity, what model option worked for you?

I don’t know.

Last year in Nov/Dec-2008, when I first obtained my Dell Studio 1537 laptop, I played with its HDMI. I got the video to work, but not the audio. I’m not 100% convinced the audio for HDMI works on this laptop with Linux. The difficulty I have is I do not have easy access to a TV device to test the HDMI. I am not a TV watcher. My wife is a TV watcher, and she set up the TV in a cabinet such that for me to access the HDMI requires a major operation, taking up a lot of time (moving wiring, physically moving the cabinet, the TV … etc … ). For the TV to be unaccessible for a long time is not acceptable for my wife (just so I can play) so I have not been able to improve my rather feable knowledge about HDMI.

dell-m6-dmic worked for me. Maybe I should report this issue to Alsa developers saying that the model was not updated upon boot.

Yes you could. I note there were some fixes to the IDT92HD73xx in 1.0.21 of alsa, but I can not tell if they addressed this. I think not, but I could be wrong.

One can read up on the fixes here: Changes v1.0.21 v1.0.22 - AlsaProject For example, I noticed "Fix input source selection of IDT92HD73xx " but I do not know how relevant that may be.

When raising a bug report on openSUSE, there is guidance here: Submitting Bug Reports - openSUSE

Raise the bug report against openSUSE-11.2 on component “sound”. Please run the script:

/usr/sbin/alsa-info.sh --no-upload

and attach the file /tmp/alsa-info.txt created by that script to the bug report.

The bug report will come to the attention of the SuSE-GmbH sound packager who is also an alsa developer, and if there is a problem he is the best person to address it.

Since he is an alsa developer, any fix he comes up with will be passed upstream and benefit all Linux distributions.