mic problems using c920 webcam

Hello everyone,

I have been trying to get my c920 webcam mic working properly through firefox on sites like appear.in and google hangouts. I am able to get video with no problem but I can't for the life of me get the mic to work. The following is all the information that I can thing of to help out.
Code:
DarkDaemon02% doas dmesg | grep -i c920
Password:
ugen7.2: <vendor 0x046d HD Pro Webcam C920> at usbus7
uaudio0: <vendor 0x046d HD Pro Webcam C920, class 239/2, rev 2.00/0.11, addr 2> on usbus7
DarkDaemon02%

Code:
DarkDaemon02% cat /dev/sndstat
Installed devices:
pcm0: <NVIDIA (0x0080) (HDMI/DP 8ch)> (play)
pcm1: <NVIDIA (0x0080) (HDMI/DP 8ch)> (play)
pcm2: <NVIDIA (0x0080) (HDMI/DP 8ch)> (play)
pcm3: <Analog Devices AD1984A (Analog)> (play/rec) default
pcm4: <Analog Devices AD1984A (Analog)> (play/rec)
pcm5: <USB audio> (rec)
No devices installed from userspace.
DarkDaemon02%

If I leave it at unit 3 I get video and audio through speaker but no mic. if I change it to 5 then I get video and mic but can't hear out of my speakers
Code:
DarkDaemon02% sysctl -a | grep hw.snd.default_unit
hw.snd.default_unit: 3
DarkDaemon02%

Code:
DarkDaemon02% mixer
Mixer vol      is currently set to  78:78
Mixer pcm      is currently set to 100:100
Mixer speaker  is currently set to 100:100
Mixer mic      is currently set to 100:100
Mixer rec      is currently set to 100:100
Mixer igain    is currently set to   0:0
Mixer ogain    is currently set to 100:100
Recording source: mic
DarkDaemon02%

When testing through audacity I can record through my mic using /dev/dsp5.

Code:
DarkDaemon02% sysctl -a | grep hda
device    snd_hda
dev.pcm.4.%parent: hdaa1
dev.pcm.3.%parent: hdaa1
dev.pcm.2.%parent: hdaa0
dev.pcm.1.%parent: hdaa0
dev.pcm.0.%parent: hdaa0
dev.hdaa.1.reconfig: 0
dev.hdaa.1.gpo_config:
dev.hdaa.1.gpo_state:
dev.hdaa.1.gpio_config: 0=keep 1=keep 2=keep
dev.hdaa.1.gpio_state: 0=disabled 1=disabled 2=disabled
dev.hdaa.1.gpi_state:
dev.hdaa.1.config: forcestereo,ivref50,ivref80,ivref100,ivref,vref
dev.hdaa.1.nid42: vendor widget [DISABLED]
dev.hdaa.1.nid41: vendor widget [DISABLED]
dev.hdaa.1.nid40: vendor widget [DISABLED]
dev.hdaa.1.nid39: vendor widget [DISABLED]
dev.hdaa.1.nid38: vendor widget [DISABLED]
dev.hdaa.1.nid37: audio selector [DISABLED]
dev.hdaa.1.nid36: audio mixer [DISABLED]
dev.hdaa.1.nid35: audio selector [DISABLED]
dev.hdaa.1.nid34: audio selector
dev.hdaa.1.nid33: audio selector
dev.hdaa.1.nid32: audio mixer
dev.hdaa.1.nid31: audio mixer [DISABLED]
dev.hdaa.1.nid30: audio mixer [DISABLED]
dev.hdaa.1.nid29: vendor widget [DISABLED]
dev.hdaa.1.nid28_original: 0x413301f0 as=15 seq=0 device=CD conn=None ctype=ATAPI loc=Rear color=Unknown misc=1
dev.hdaa.1.nid28_config: 0x413301f0 as=15 seq=0 device=CD conn=None ctype=ATAPI loc=Rear color=Unknown misc=1
dev.hdaa.1.nid28: pin: CD (None) [DISABLED]
dev.hdaa.1.nid27_original: 0x414501f0 as=15 seq=0 device=SPDIF-out conn=None ctype=Optical loc=Rear color=Unknown misc=1
dev.hdaa.1.nid27_config: 0x414501f0 as=15 seq=0 device=SPDIF-out conn=None ctype=Optical loc=Rear color=Unknown misc=1
dev.hdaa.1.nid27: pin: SPDIF-out (None) [DISABLED]
dev.hdaa.1.nid26_original: 0x41f301f0 as=15 seq=0 device=Other conn=None ctype=ATAPI loc=Rear color=Unknown misc=1
dev.hdaa.1.nid26_config: 0x41f301f0 as=15 seq=0 device=Other conn=None ctype=ATAPI loc=Rear color=Unknown misc=1
dev.hdaa.1.nid26: beep widget
dev.hdaa.1.nid25: power widget [DISABLED]
dev.hdaa.1.nid24: vendor widget [DISABLED]
dev.hdaa.1.nid23_original: 0x41a601f0 as=15 seq=0 device=Mic conn=None ctype=Digital loc=Rear color=Unknown misc=1
dev.hdaa.1.nid23_config: 0x41a601f0 as=15 seq=0 device=Mic conn=None ctype=Digital loc=Rear color=Unknown misc=1
dev.hdaa.1.nid23: pin: Mic (None) [DISABLED]
dev.hdaa.1.nid22_original: 0x413301f0 as=15 seq=0 device=CD conn=None ctype=ATAPI loc=Rear color=Unknown misc=1
dev.hdaa.1.nid22_config: 0x413301f0 as=15 seq=0 device=CD conn=None ctype=ATAPI loc=Rear color=Unknown misc=1
dev.hdaa.1.nid22: pin: CD (None) [DISABLED]
dev.hdaa.1.nid21_original: 0x01813030 as=3 seq=0 device=Line-in conn=Jack ctype=1/8 loc=Rear color=Blue misc=0
dev.hdaa.1.nid21_config: 0x01813030 as=3 seq=0 device=Line-in conn=Jack ctype=1/8 loc=Rear color=Blue misc=0
dev.hdaa.1.nid21: pin: Line-in (Blue Jack)
dev.hdaa.1.nid20_original: 0x02a19020 as=2 seq=0 device=Mic conn=Jack ctype=1/8 loc=Front color=Pink misc=0
dev.hdaa.1.nid20_config: 0x02a19020 as=2 seq=0 device=Mic conn=Jack ctype=1/8 loc=Front color=Pink misc=0
dev.hdaa.1.nid20: pin: Mic (Pink Jack)
dev.hdaa.1.nid19_original: 0x991301f0 as=15 seq=0 device=Speaker conn=Fixed ctype=ATAPI loc=Onboard color=Unknown misc=1
dev.hdaa.1.nid19_config: 0x991301f0 as=15 seq=0 device=Speaker conn=Fixed ctype=ATAPI loc=Onboard color=Unknown misc=1
dev.hdaa.1.nid19: pin: Speaker (Fixed) [DISABLED]
dev.hdaa.1.nid18_original: 0x01014010 as=1 seq=0 device=Line-out conn=Jack ctype=1/8 loc=Rear color=Green misc=0
dev.hdaa.1.nid18_config: 0x01014010 as=1 seq=0 device=Line-out conn=Jack ctype=1/8 loc=Rear color=Green misc=0
dev.hdaa.1.nid18: pin: Line-out (Green Jack)
dev.hdaa.1.nid17_original: 0x02214040 as=4 seq=0 device=Headphones conn=Jack ctype=1/8 loc=Front color=Green misc=0
dev.hdaa.1.nid17_config: 0x02214040 as=4 seq=0 device=Headphones conn=Jack ctype=1/8 loc=Front color=Green misc=0
dev.hdaa.1.nid17: pin: Headphones (Green Jack)
dev.hdaa.1.nid16: beep widget
dev.hdaa.1.nid15: audio selector [DISABLED]
dev.hdaa.1.nid14: audio selector [DISABLED]
dev.hdaa.1.nid13: audio selector
dev.hdaa.1.nid12: audio selector
dev.hdaa.1.nid11: audio mixer [DISABLED]
dev.hdaa.1.nid10: audio mixer
dev.hdaa.1.nid9: audio input
dev.hdaa.1.nid8: audio input
dev.hdaa.1.nid7: audio mixer
dev.hdaa.1.nid6: vendor widget [DISABLED]
dev.hdaa.1.nid5: vendor widget [DISABLED]
dev.hdaa.1.nid4: audio output
dev.hdaa.1.nid3: audio output
dev.hdaa.1.nid2: audio output [DISABLED]
dev.hdaa.1.%parent: hdacc1
dev.hdaa.1.%pnpinfo: type=0x01 subsystem=0x1028026d
dev.hdaa.1.%location: nid=1
dev.hdaa.1.%driver: hdaa
dev.hdaa.1.%desc: Analog Devices AD1984A Audio Function Group
dev.hdaa.0.reconfig: 0
dev.hdaa.0.gpo_config:
dev.hdaa.0.gpo_state:
dev.hdaa.0.gpio_config:
dev.hdaa.0.gpio_state:
dev.hdaa.0.gpi_state:
dev.hdaa.0.config: forcestereo,ivref50,ivref80,ivref100,ivref,vref
dev.hdaa.0.nid13: audio output [DISABLED]
dev.hdaa.0.nid12: audio output
dev.hdaa.0.nid11: audio output
dev.hdaa.0.nid10: audio output
dev.hdaa.0.nid9_original: 0x585600f0 as=15 seq=0 device=Digital-out conn=None ctype=Digital loc=0x18 color=Unknown misc=0
dev.hdaa.0.nid9_config: 0x585600f0 as=15 seq=0 device=Digital-out conn=None ctype=Digital loc=0x18 color=Unknown misc=0
dev.hdaa.0.nid9: pin: Digital-out (None) [DISABLED]
dev.hdaa.0.nid8_original: 0x585600f0 as=15 seq=0 device=Digital-out conn=None ctype=Digital loc=0x18 color=Unknown misc=0
dev.hdaa.0.nid8_config: 0x585600f0 as=15 seq=0 device=Digital-out conn=None ctype=Digital loc=0x18 color=Unknown misc=0
dev.hdaa.0.nid8: pin: Digital-out (None) [DISABLED]
dev.hdaa.0.nid7_original: 0x585600f0 as=15 seq=0 device=Digital-out conn=None ctype=Digital loc=0x18 color=Unknown misc=0
dev.hdaa.0.nid7_config: 0x585600f0 as=15 seq=0 device=Digital-out conn=None ctype=Digital loc=0x18 color=Unknown misc=0
dev.hdaa.0.nid7: pin: Digital-out (None) [DISABLED]
dev.hdaa.0.nid6_original: 0x185600f0 as=15 seq=0 device=Digital-out conn=Jack ctype=Digital loc=0x18 color=Unknown misc=0
dev.hdaa.0.nid6_config: 0x185600f0 as=15 seq=0 device=Digital-out conn=Jack ctype=Digital loc=0x18 color=Unknown misc=0
dev.hdaa.0.nid6: pin: Digital-out (Jack)
dev.hdaa.0.nid5_original: 0x185600f0 as=15 seq=0 device=Digital-out conn=Jack ctype=Digital loc=0x18 color=Unknown misc=0
dev.hdaa.0.nid5_config: 0x185600f0 as=15 seq=0 device=Digital-out conn=Jack ctype=Digital loc=0x18 color=Unknown misc=0
dev.hdaa.0.nid5: pin: Digital-out (Jack)
dev.hdaa.0.nid4_original: 0x185600f0 as=15 seq=0 device=Digital-out conn=Jack ctype=Digital loc=0x18 color=Unknown misc=0
dev.hdaa.0.nid4_config: 0x185600f0 as=15 seq=0 device=Digital-out conn=Jack ctype=Digital loc=0x18 color=Unknown misc=0
dev.hdaa.0.nid4: pin: Digital-out (Jack)
dev.hdaa.0.%parent: hdacc0
dev.hdaa.0.%pnpinfo: type=0x01 subsystem=0x196e11c0
dev.hdaa.0.%location: nid=1
dev.hdaa.0.%driver: hdaa
dev.hdaa.0.%desc: NVIDIA (0x0080) Audio Function Group
dev.hdaa.%parent:
dev.hdacc.1.%parent: hdac1
dev.hdacc.1.%pnpinfo: vendor=0x11d4 device=0x194a revision=0x04 stepping=0x00
dev.hdacc.1.%location: cad=0
dev.hdacc.1.%driver: hdacc
dev.hdacc.1.%desc: Analog Devices AD1984A HDA CODEC
dev.hdacc.0.%parent: hdac0
dev.hdacc.0.%pnpinfo: vendor=0x10de device=0x0080 revision=0x01 stepping=0x00
dev.hdacc.0.%location: cad=0
dev.hdacc.0.%driver: hdacc
dev.hdacc.0.%desc: NVIDIA (0x0080) HDA CODEC
dev.hdacc.%parent:
dev.hdac.1.polling: 0
dev.hdac.1.pindump: 0
dev.hdac.1.%parent: pci0
dev.hdac.1.%pnpinfo: vendor=0x8086 device=0x3a3e subvendor=0x1028 subdevice=0x026d class=0x040300
dev.hdac.1.%location: slot=27 function=0 dbsf=pci0:0:27:0
dev.hdac.1.%driver: hdac
dev.hdac.1.%desc: Intel 82801JI HDA Controller
dev.hdac.0.polling: 0
dev.hdac.0.pindump: 0
dev.hdac.0.%parent: pci3
dev.hdac.0.%pnpinfo: vendor=0x10de device=0x0fb9 subvendor=0x196e subdevice=0x11c0 class=0x040300
dev.hdac.0.%location: slot=0 function=1 dbsf=pci0:3:0:1
dev.hdac.0.%driver: hdac
dev.hdac.0.%desc: NVIDIA (0x0fb9) HDA Controller
dev.hdac.%parent:
DarkDaemon02%

I am hoping that this will provide someone with enough info to help me get this fixed. I was thinking of editing the /boot/device.hints file but unlike my laptop I wasn't sure how to set this up so that it would know that my mic was sent through X device. This is because of my lack of knowledge with FreeBSD. I have read through the device section of the handbook but wasn't able to really find anything that would help.
 
Last edited by a moderator:
This is generally very 'hard' part to cover.

For example I have used FreeBSD 11.1 on a ThinkPad T520 laptop - no problems with mic output, everything works out of the box.

I moved to smaller ThinkPad T420s, from the same Lenovo line, same year, same vendor - and there was problem with mini-jack audio output - the sound was ok when played on speakers but when I attached the headphones into the mini-jack sound output it was deaf, I needed to modify the /boot/device.hints file with the following entries:

Code:
# SOUND ON HEADPHONES
hint.hdaa.0.nid31.config="as=1"
hint.hdaa.0.nid25.config="as=1 seq=15 device=Headphones mute=0 misc=0"
hint.hdaa.0.nid28.config="as=1 seq=15 device=Headphones mute=0 misc=0"

I jest guessed that upon information below from sysctl dev.hdaa (a lot of information) but it was a lot like putting random numbers in these lines and rebooting and trying over and over again - till I found the working configuration. There is also very scarce information on the search engines/threads about this.

The tricky part is that information in sysctl dev.hdaa changes as You make changes to /boot/device.hints configuration, so in order to properly debug this issue You must try some new configuration, if it does not work, then clean Your changes from /boot/device.hints file, reboot with 'clean' config and then try to debug again ...
 
thanks vermanden. The hard part for me is tracking down which nid cooresponds with my webcam. I did however find that I think the mic is going through pcm because with my default_unit of 3 when I speak into the mic it comes out my own speakers. I

I think I am confused also though as I don't really understand the whole dev.hdaa yet and I didn't find much of an understanding from reading the handbook
 
I think I am confused also though as I don't really understand the whole dev.hdaa yet and I didn't find much of an understanding from reading the handbook

Did you get any further? I have a C920 as well and also stuck on the same issue.
 
Back
Top