David J. Raymond david.raym...@nmt.edu http://kestrel.nmt.edu/~raymond
Jan, Hmm.... Not being able to use the microphone and speaker from separate devices at the same time is a show stopper for me. I guess I will just have to use my headphones (with microphone) or get a combined USB or headset jack speaker-mike when I need to have a conversation over Zoom. (I have used gens 1, 4, and 5 of X1 Carbons and everything just worked. The lack of support for the microphone on later generations was an unpleasant surprise -- though I understand why the support is lacking on OpenBSD. I am certainly not going back to Linux because of this!) I am attaching the dmesg text since the last reboot for the record -- it is hard to include big files on gmail. Dave On Fri, Jul 18, 2025 at 1:02 AM Jan Stary <h...@stare.cz> wrote: > On Jul 17 14:32:36, david.raym...@nmt.edu wrote: > > I have a Lenovo X1 Carbon Thinkpad (gen 9 I think) which has microphone > > hardware not supported by OpenBSD. > > Post the full dmesg, obviously, to show what the device is. > What exactly have you tried to conclude the mic hw is unsupported? > > > I purchased an inexpensive USB > > microphone with displays the following dmesg entry: > > > > uaudio0 at uhub1 port 1 configuration 1 interface 1 "C-Media Electronics > > Inc. USB PnP Sound Device" rev 1.10/1.00 addr 5 > > uaudio0: class v1, full-speed, sync, channels: 0 play, 1 rec, 3 ctls > ^^^^^^^^^^^^^^ > > > audio1 at uaudio0 > > So when using the audio1 device you will be able to record, but not play. > > How exactly do you run sndiod? > You might want to use something like > sndiod_flags=-f rsnd/0 -F rsnd/1 > to record with the usb mic (temporarily plugged in for the recording) > but play through your in-built audio0 (unplugging the usb mic after > recording). > > Or buy a usb dongle that can both play and record > so that you don't have to switch devices. > > > > uhidev0 at uhub1 port 1 configuration 1 interface 2 "C-Media Electronics > > Inc. USB PnP Sound Device" rev 1.10/1.00 addr 5 > > uhidev0: iclass 3/0 > > ucc0 at uhidev0: 10 usages, 3 keys, enum > > wskbd1 at ucc0 mux 1 > > wskbd1: connecting to wsdisplay0 > > > > > > Unfortunately, it doesn't seem to work with OBSD. Recording a test > message > > with aucat -o file.wav produces a wave file, but aucat -i file.wav > > is silent. > > Which os audio0 / audio1 are you using for the recording and the playing? > > > If I plug a headphone into the speaker jack, it works fine with > > aucat and in actual use. > > Are you even telling sndiod to use the audio1? > If not, playing a sound through headphones in the jack > presumably just uses the builtin audio0, which works fine for playback. > > > Am I missing something? Sndioctl produces > > > > input.level=1.000 > > input.mute=0 > > output.level=1.000 > > output.mute=0 > > server.device=0(azalia0) > > app/aucat0.level=1.000 > > app/audacio0.level=1.000 > > app/firefox0.level=1.000 > > app/firefox1.level=1.000 > > app/iridium0.level=1.000 > > app/iridium1.level=1.000 > > app/iridium2.level=1.000 > > app/iridium3.level=1.000 > > > > for both the USB microphone and the headset and with nothing plugged in. > > sndioctl will use the default device unless told otherwise, > so if you are not telling it otherwise, it doesn't matter > that you have plugged the usb mic in. > > > > > Mixerctl produces > > > > penguin# cat null.txt > > inputs.dac-2:3=174,174 > > inputs.dac-0:1=174,174 > > record.adc-0:1_mute=off > > record.adc-0:1=252,252 > > record.adc-2:3_mute=off > > record.adc-2:3=252,252 > > outputs.spkr_source=dac-2:3 > > outputs.spkr_mute=off > > outputs.spkr_eapd=on > > outputs.spkr2_source=dac-2:3 > > outputs.spkr2_mute=off > > outputs.spkr2_boost=off > > inputs.mic=85,85 > > outputs.mic_dir=input-vr80 > > outputs.hp_source=dac-0:1 > > outputs.hp_mute=off > > outputs.hp_boost=off > > outputs.hp_eapd=on > > record.adc-2:3_source=mic > > record.adc-0:1_source=mic > > outputs.mic_sense=unplugged > > outputs.hp_sense=unplugged > > outputs.spkr_muters=hp > > outputs.master=255,255 > > outputs.master.mute=off > > outputs.master.slaves=dac-2:3,dac-0:1,spkr,spkr2,hp > > record.volume=255,255 > > record.volume.mute=off > > record.volume.slaves=adc-0:1,adc-2:3 > > record.enable=sysctl > > > > if nothing is plugged in. The USB microphone doesn't change this > > result at all. > > mixerctl also uses the default device by default. > > > However, the headphone changes a few things in the mixerctl > > output as illustrated by this diff: > > That is proof you are using the bultin audio0 > (as you can;t plug the headphines into the audio1 mic). > > > penguin# diff null.txt headphone.txt > > 8c8 > > < outputs.spkr_mute=off > > --- > > > outputs.spkr_mute=on > > 11c11 > > < outputs.spkr2_mute=off > > --- > > > outputs.spkr2_mute=on > > 21,22c21,22 > > < outputs.mic_sense=unplugged > > < outputs.hp_sense=unplugged > > --- > > > outputs.mic_sense=plugged > > > outputs.hp_sense=plugged > > > > I think this just reflects the change from an internal device to one > > plugged into the headphone jack. > > This is still the same "device", namely audio0, > recognizing HP is plugged in (and muting the speakers). > > Strangely, it also recognizes a mic as plugged in. > But some laptiops have one jack for both ... > > > Am I doing something wrong or are we just dealing with an unsupported > > device? > > How could anyone tell without the dmesg? > > > In the latter case, any suggestions for a compact microphone that > > can be plugged in when needed? As far as I am concerned this could plug > > into either a USB port or the headphone jack. > > RODE NT is working nicely for me > on a macbook with recording unsupported > (a situation similar to yours). > > Jan > >
mydmesg
Description: Binary data