alsa-ucm-conf icon indicating copy to clipboard operation
alsa-ucm-conf copied to clipboard

No Micrphone detected on ALC4080 - Gigabyte B850I Aorus Pro (rev 1.0)

Open chanster opened this issue 9 months ago • 8 comments

The Rear Microphone is not detected when I plug in my mic. I don't use the Front Audio connection as my case doesn't have I/O for it, I just used the 2 audio ports in the rear.

When I try recording directly I can get the mic to work, but it does not show up in the sound settings.

arecord --duration=3 -D hw:CARD=2,DEV=1 -f dat -vvv a.wav

Hardware PCM card 2 'USB Audio' device 1 subdevice 0
Its setup is:
  stream       : CAPTURE
  access       : RW_INTERLEAVED
  format       : S16_LE
  subformat    : STD
  channels     : 2
  rate         : 48000
  exact rate   : 48000 (48000/1)
  msbits       : 16
  buffer_size  : 24000
  period_size  : 6000
  period_time  : 125000
  tstamp_mode  : ENABLE
  tstamp_type  : MONOTONIC
  period_step  : 1
  avail_min    : 6000
  period_event : 0
  start_threshold  : 1
  stop_threshold   : 24000
  silence_threshold: 0
  silence_size : 0
  boundary     : 6755399441055744000
  appl_ptr     : 0
  hw_ptr       : 0
Recording WAVE 'a.wav' : Signed 16 bit Little Endian, Rate 48000 Hz, Stereo
Max peak (12000 samples): 0x00000167 #                    1%
Max peak (12000 samples): 0x000000da #                    0%
Max peak (12000 samples): 0x000006b1 ##                   5%
Max peak (12000 samples): 0x00000547 #                    4%
Max peak (12000 samples): 0x00000729 ##                   5%
Max peak (12000 samples): 0x00000a77 ##                   8%
Max peak (12000 samples): 0x000006d2 ##                   5%
Max peak (12000 samples): 0x000005ec #                    4%
Max peak (12000 samples): 0x00000627 #                    4%
Max peak (12000 samples): 0x00000d32 ###                  10%
Max peak (12000 samples): 0x00000e9f ###                  11%
Max peak (12000 samples): 0x00003813 #########            43%
Max peak (12000 samples): 0x00006278 ################     76%
Max peak (12000 samples): 0x00007fff #################### 99%
Max peak (12000 samples): 0x00006694 #################    80%
Max peak (12000 samples): 0x000068ea #################    81%
Max peak (12000 samples): 0x00004ba0 ############         59%
Max peak (12000 samples): 0x0000207c ######               25%
Max peak (12000 samples): 0x000017e9 ####                 18%
Max peak (12000 samples): 0x00003938 #########            44%
Max peak (12000 samples): 0x00001f11 #####                24%
Max peak (12000 samples): 0x00000ee5 ###                  11%
Max peak (12000 samples): 0x00003944 #########            44%
Max peak (12000 samples): 0x00003942 #########            44%

Motherboard: Gigabyte B850I Aorus Pro (rev 1.0) Audio Device: ALC4080 Distro: Fedora 41 Window Manager: Gnome-Shell Packages:

dnf list --installed | grep 'pipewire\|pulseaudio\|alsa'
alsa-lib.i686                             1.2.13-3.fc41                      updates
alsa-lib.x86_64                           1.2.13-3.fc41                      updates
alsa-ucm.noarch                           1.2.13-3.fc41                      updates
alsa-ucm-utils.x86_64                     1.2.13-2.fc41                      updates
alsa-utils.x86_64                         1.2.13-2.fc41                      updates
pipewire.i686                             1.2.7-7.fc41                       updates
pipewire.x86_64                           1.2.7-7.fc41                       updates
pipewire-alsa.i686                        1.2.7-7.fc41                       updates
pipewire-alsa.x86_64                      1.2.7-7.fc41                       updates
pipewire-gstreamer.x86_64                 1.2.7-7.fc41                       updates
pipewire-libs.i686                        1.2.7-7.fc41                       updates
pipewire-libs.x86_64                      1.2.7-7.fc41                       updates
pipewire-pulseaudio.x86_64                1.2.7-7.fc41                       updates
pipewire-utils.x86_64                     1.2.7-7.fc41                       updates
pulseaudio-libs.i686                      17.0-2.fc41                        fedora
pulseaudio-libs.x86_64                    17.0-2.fc41                        fedora
pulseaudio-libs-glib2.x86_64              17.0-2.fc41                        fedora
wine-alsa.i686                            10.1-1.fc41                        updates
wine-alsa.x86_64                          10.1-1.fc41                        updates
wine-pulseaudio.i686                      10.1-1.fc41                        updates
wine-pulseaudio.x86_64                    10.1-1.fc41                        updates

lsusb | grep -i audio

Bus 001 Device 002: ID 0414:a014 Giga-Byte Technology Co., Ltd USB Audio

alsactl monitor (unplugging and plugging mic)

node hw:2, #9 (0,0,0,Mic - Input Jack,1) VALUE
node hw:2, #9 (0,0,0,Mic - Input Jack,1) VALUE

amixer -c events (unplugging and plugging mic)

event value: numid=9,iface=CARD,name='Mic - Input Jack',index=1
event value: numid=9,iface=CARD,name='Mic - Input Jack',index=1

amixer -c 2 contents

numid=8,iface=CARD,name='Clock Source 3 Validity'
  ; type=BOOLEAN,access=r-------,values=1
  : values=on
numid=12,iface=CARD,name='Clock Source 4 Validity'
  ; type=BOOLEAN,access=r-------,values=1
  : values=on
numid=15,iface=CARD,name='Clock Source 5 Validity'
  ; type=BOOLEAN,access=r-------,values=1
  : values=on
numid=19,iface=CARD,name='Clock Source 6 Validity'
  ; type=BOOLEAN,access=r-------,values=1
  : values=on
numid=20,iface=CARD,name='Headphone - Output Jack'
  ; type=BOOLEAN,access=r-------,values=1
  : values=off
numid=5,iface=CARD,name='Mic - Input Jack'
  ; type=BOOLEAN,access=r-------,values=1
  : values=off
numid=9,iface=CARD,name='Mic - Input Jack',index=1
  ; type=BOOLEAN,access=r-------,values=1
  : values=on
numid=16,iface=CARD,name='Speaker - Output Jack'
  ; type=BOOLEAN,access=r-------,values=1
  : values=off
numid=13,iface=MIXER,name='PCM Playback Switch'
  ; type=BOOLEAN,access=rw------,values=1
  : values=off
numid=17,iface=MIXER,name='PCM Playback Switch',index=1
  ; type=BOOLEAN,access=rw------,values=1
  : values=off
numid=14,iface=MIXER,name='PCM Playback Volume'
  ; type=INTEGER,access=rw---R--,values=2,min=0,max=87,step=0
  : values=62,62
  | dBminmax-min=-65.25dB,max=0.00dB
numid=18,iface=MIXER,name='PCM Playback Volume',index=1
  ; type=INTEGER,access=rw---R--,values=2,min=0,max=87,step=0
  : values=62,62
  | dBminmax-min=-65.25dB,max=0.00dB
numid=6,iface=MIXER,name='Mic Capture Switch'
  ; type=BOOLEAN,access=rw------,values=1
  : values=off
numid=10,iface=MIXER,name='Mic Capture Switch',index=1
  ; type=BOOLEAN,access=rw------,values=1
  : values=on
numid=7,iface=MIXER,name='Mic Capture Volume'
  ; type=INTEGER,access=rw---R--,values=2,min=0,max=39,step=0
  : values=39,39
  | dBminmax-min=-17.25dB,max=12.00dB
numid=11,iface=MIXER,name='Mic Capture Volume',index=1
  ; type=INTEGER,access=rw---R--,values=2,min=0,max=39,step=0
  : values=39,39
  | dBminmax-min=-17.25dB,max=12.00dB
numid=1,iface=PCM,name='Capture Channel Map'
  ; type=INTEGER,access=r--v-R--,values=2,min=0,max=36,step=0
  : values=0,0
  | container
    | chmap-fixed=FL,FR
numid=3,iface=PCM,name='Playback Channel Map'
  ; type=INTEGER,access=r--v-R--,values=2,min=0,max=36,step=0
  : values=0,0
  | container
    | chmap-fixed=FL,FR
numid=2,iface=PCM,name='Capture Channel Map',device=1
  ; type=INTEGER,access=r--v-R--,values=2,min=0,max=36,step=0
  : values=0,0
  | container
    | chmap-fixed=FL,FR
numid=4,iface=PCM,name='Playback Channel Map',device=1
  ; type=INTEGER,access=r--v-R--,values=2,min=0,max=36,step=0
  : values=0,0
  | container
    | chmap-fixed=FL,FR

arecord -l

**** List of CAPTURE Hardware Devices ****
card 2: Audio [USB Audio], device 0: USB Audio [USB Audio]
  Subdevices: 1/1
  Subdevice #0: subdevice #0
card 2: Audio [USB Audio], device 1: USB Audio [USB Audio #1]
  Subdevices: 1/1
  Subdevice #0: subdevice #0

alsaucm -c hw:2 dump text

Verb.HiFi {
	Comment "HiFi 2.0 channels"
	Device.Speaker {
		Comment Speakers
		Values {
			CaptureCTL "_ucm0001.hw:Audio"
			JackControl "Speaker - Output Jack"
			PlaybackCTL "_ucm0001.hw:Audio"
			PlaybackChannels 2
			PlaybackMixerElem PCM,0
			PlaybackPCM "_ucm0001.hw:Audio"
			PlaybackPriority 200
			TQ HiFi
		}
	}
	Device.Headphones {
		Comment "Front Headphones"
		Values {
			CaptureCTL "_ucm0001.hw:Audio"
			JackControl "Headphone - Output Jack"
			PlaybackCTL "_ucm0001.hw:Audio"
			PlaybackMixerElem PCM,1
			PlaybackPCM "_ucm0001.hw:Audio,1"
			PlaybackPriority 300
			TQ HiFi
		}
	}
	Device.Mic1 {
		Comment "Front Microphone"
		Values {
			CaptureCTL "_ucm0001.hw:Audio"
			CaptureMixerElem Mic,0
			CapturePCM "_ucm0001.hw:Audio,0"
			CapturePriority 300
			JackControl "Mic - Input Jack"
			PlaybackCTL "_ucm0001.hw:Audio"
			TQ HiFi
		}
	}
}
Verb."HiFi 5+1" {
	Comment "HiFi 5.1 channels"
	Device.Speaker {
		Comment Speakers
		Values {
			CaptureCTL "_ucm0001.hw:Audio"
			JackControl "Speaker - Output Jack"
			PlaybackCTL "_ucm0001.hw:Audio"
			PlaybackChannels 6
			PlaybackMixerElem PCM,0
			PlaybackPCM "_ucm0001.hw:Audio"
			PlaybackPriority 200
			TQ HiFi
		}
	}
	Device.Headphones {
		Comment "Front Headphones"
		Values {
			CaptureCTL "_ucm0001.hw:Audio"
			JackControl "Headphone - Output Jack"
			PlaybackCTL "_ucm0001.hw:Audio"
			PlaybackMixerElem PCM,1
			PlaybackPCM "_ucm0001.hw:Audio,1"
			PlaybackPriority 300
			TQ HiFi
		}
	}
	Device.Mic1 {
		Comment "Front Microphone"
		Values {
			CaptureCTL "_ucm0001.hw:Audio"
			CaptureMixerElem Mic,0
			CapturePCM "_ucm0001.hw:Audio,0"
			CapturePriority 300
			JackControl "Mic - Input Jack"
			PlaybackCTL "_ucm0001.hw:Audio"
			TQ HiFi
		}
	}
}
Verb."HiFi 7+1" {
	Comment "HiFi 7.1 channels"
	Device.Speaker {
		Comment Speakers
		Values {
			CaptureCTL "_ucm0001.hw:Audio"
			JackControl "Speaker - Output Jack"
			PlaybackCTL "_ucm0001.hw:Audio"
			PlaybackChannels 8
			PlaybackMixerElem PCM,0
			PlaybackPCM "_ucm0001.hw:Audio"
			PlaybackPriority 200
			TQ HiFi
		}
	}
	Device.Headphones {
		Comment "Front Headphones"
		Values {
			CaptureCTL "_ucm0001.hw:Audio"
			JackControl "Headphone - Output Jack"
			PlaybackCTL "_ucm0001.hw:Audio"
			PlaybackMixerElem PCM,1
			PlaybackPCM "_ucm0001.hw:Audio,1"
			PlaybackPriority 300
			TQ HiFi
		}
	}
	Device.Mic1 {
		Comment "Front Microphone"
		Values {
			CaptureCTL "_ucm0001.hw:Audio"
			CaptureMixerElem Mic,0
			CapturePCM "_ucm0001.hw:Audio,0"
			CapturePriority 300
			JackControl "Mic - Input Jack"
			PlaybackCTL "_ucm0001.hw:Audio"
			TQ HiFi
		}
	}
}

chanster avatar Mar 18 '25 19:03 chanster

alsa-info.sh

chanster avatar Mar 18 '25 21:03 chanster

I have the same problem with this motherboard. I do use the front panel though, and an additional symptom beyond the mic (front and back) not working is that when headphones get plugged into the front port, the system recognizes that they have been plugged in, but audio continues to only play out the line out on from the back.

The issue appears similar to this one:

https://github.com/alsa-project/alsa-ucm-conf/issues/394

theksepyro avatar Mar 20 '25 13:03 theksepyro

so I have a work around for Fedora. I'm sure this can work for other distros with the correct packages. I only tested the rear audio mic also.

  1. Remove the alsa-ucm packages
    sudo dnf remove alsa-utils alsa-ucm alsa-ucm-utils -y
    
  2. Install PAVU Control and Easy Effects
    sudo dnf install pavucontrol easyeffects
    
  3. Restart audio services
    systemctl --user restart pipewire pipewire-pulse wireplumber
    
  4. Open pavucontrol and set USB Audio to "Pro Audio"
  5. Open easyefects, under Inputs add the "Loudness" plugin and increase the Input dB until the input sounds good to you. I used Discord Mic settings to test the results.

Would be nice to have it work without this config. Not sure if this would still be a UCM issue or not, I don't play with Linux audio settings enough to understand how alsa, pulseaudio, and pipewire all work together.

chanster avatar Mar 21 '25 21:03 chanster

Only alsa-ucm package removal should be sufficient. I'll look to this issue when I find more time.

perexg avatar Mar 22 '25 15:03 perexg

Could you try changes in PR #535 ? You can replace the file (download the raw file) in /usr/share/ucm2/USB-Audio/Realtek/ALC4080-HiFi.conf or edit this file and add this change.

perexg avatar Mar 26 '25 14:03 perexg

I am grateful for you looking into this. That said, it did not solve the rear (nor front although it only appears to be addressing the rear) mic issue for me.

Edit: I should have clarified that unlike the original author of this issue, I am using Pop!_OS 22.04, but I imagine that shouldn't change much.

Edit 2: I think that this verison of Pop!_OS does not ship the latest alsa config and that I probably will have to just wait until the next pop version releases, then address it.

theksepyro avatar Mar 26 '25 21:03 theksepyro

This did work for me, Thank you! I am now seeing the rear microphone as an option in PAVU Control and Gnome Sound settings when set to the Hi-Fi 2.0 channels profile. Rear mic is still very soft to the point I was yelling into arecord just to have it pick up my voice. alsamixer shows Mic 1 at 100% (front is Mic). I have use Easy Effects to enhance using the 'Speech Processor' plugin effect. I'm not sure if this is something that can be adjusted with UCM or something else.

chanster avatar Mar 27 '25 03:03 chanster

Yeah this fix works on the X870i aorus pro motherboard as well

lavjamanxd avatar Mar 30 '25 14:03 lavjamanxd