Guidance for a USB microphone that always need a reset to work

From: Trenton Schulz <trueos_at_norwegianrockcat.com>
Date: Tue, 25 Oct 2022 17:49:21 UTC
Hello,

I have a Blue Yeti USB microphone that I've used for a couple years
with FreeBSD. It works fineā€¦ eventually.

When I first plug it in, it is recognized, and I can choose it as a
recording source, but it refuses to record anything. I'm not sure
exactly what the problem is, but mictests.com will complain that the
"track is paused" and nothing can unpause it. Maybe it can't be opened?

Regardless, I found that when I had the system booted to Windows and
rebooted to FreeBSD, the microphone would work. So, I somehow hit upon
the idea of running

usbconfig -d ugenX.Y reset

And surprise, it works with no Windows! It seems that I always need to
issue a reset from a cold boot or a plug-in to get the microphone to
work. It will never work without the reset.

The reset isn't a big problem, I normally remember to do it when I plug
it in, but it does feel like something that could be automated away. I
started to make a devd rule to run reset on device attach, but this
won't work (with good reason because I saw that this would easily
result in an endless loop).

So, I thought maybe there might be some suggestions to maybe make this
work on the inital plug-in. Maybe it is a bug or quirk? Is there any
additional information anyone would need?

Best regards,

-- 
Trenton