USB C Audio Help (Realtek)

Hello,
My project requires microphone input. Currently what is working is USB C to USB A to Sabrent USB stereo adapter.*

However, this configuration is precarious and awkward. And so I purchased a USB C DAC in an attempt to make everything more compact. What I received in the mail is one of these Realtek ALC5686 5PCS Hifi Type C Chip Audio Headphone Plug ALC5686 Digital DAC Decoding Lossless Sound Quality 32bit 384khz USB C Adapter Silver|Plug & Connectors| - AliExpress

This is causing problems. The DAC is recognized by the Radxa Zero (I am using the Ubuntu image) but within a few seconds of plugging in, the whole system locks up. Here is the dmesg:

[ 42.996517] usb 1-1: new high-speed USB device number 2 using xhci-hcd
[ 43.196427] usb 1-1: New USB device found, idVendor=0bda, idProduct=4be2, bcdDevice= 0.01
[ 43.196447] usb 1-1: New USB device strings: Mfr=3, Product=1, SerialNumber=2
[ 43.196461] usb 1-1: Product: Realtek USB2.0 Audio
[ 43.196474] usb 1-1: Manufacturer: Realtek
[ 43.196485] usb 1-1: SerialNumber: 201405280001
[ 43.254249] input: Realtek Realtek USB2.0 Audio as /devices/platform/soc/ffe09000.usb/ff500000.usb/xhci-hcd.0.auto/usb1/1-1/1-1:1.3/0003:0BDA:4BE2.0001/input/input0
[ 43.319055] hid-generic 0003:0BDA:4BE2.0001: input,hidraw0: USB HID v1.11 Device [Realtek Realtek USB2.0 Audio] on usb-xhci-hcd.0.auto-1/input3
[ 43.585231] usb 1-1: cannot get ctl value: req = 0x81, wValue = 0x100, wIndex = 0x400, type = 0
[ 43.600882] usbcore: registered new interface driver snd-usb-audio
[ 49.216047] xhci-hcd xhci-hcd.0.auto: WARN Event TRB for slot 1 ep 2 with no TDs queued?
[ 49.217393] xhci-hcd xhci-hcd.0.auto: WARN Event TRB for slot 1 ep 2 with no TDs queued?
[ 49.218636] xhci-hcd xhci-hcd.0.auto: WARN Event TRB for slot 1 ep 2 with no TDs queued?
[ 49.221100] xhci-hcd xhci-hcd.0.auto: WARN Event TRB for slot 1 ep 2 with no TDs queued?
[ 49.222403] xhci-hcd xhci-hcd.0.auto: WARN Event TRB for slot 1 ep 2 with no TDs queued?
[ 49.224175] xhci-hcd xhci-hcd.0.auto: WARN Event TRB for slot 1 ep 2 with no TDs queued?
[ 49.225388] xhci-hcd xhci-hcd.0.auto: WARN Event TRB for slot 1 ep 2 with no TDs queued?
[ 49.226769] xhci-hcd xhci-hcd.0.auto: WARN Event TRB for slot 1 ep 2 with no TDs queued?
[ 49.228543] xhci-hcd xhci-hcd.0.auto: WARN Event TRB for slot 1 ep 2 with no TDs queued?

Those last messages are repeated until I unplug the adapter, at which point the system returns to normal.

Anybody know what could be the cause of this? And is this something that can be fixed?


*For those who maybe interested, I have installed NDI SDK and GStreamer for low latency wireless audio.

A quick search shows this is some kind of kernel bug that should be fixed already? In any case the post has a workaround that you can put a USB 2 hub in front of the DAC, so you can try that solution.

If I plug into USB 2 hub it seems to work most of the time except it misbehaves. For example it only seems to work using “arecord” and not through GStreamer’s alsasrc. There were also some other bugs and logs I don’t recall. The thing is, it works find with other device I have that is USB 2 only. So I have abandoned trying to make it work. Possibly I will try again running Android. Thank you for your insight.