jamie.lentin.co.uk

Behringer UCA-222 (and UCA-202) under Linux

The Behringer UCA-202 and UCA-222 are USB soundcards, I've got the latter. The 222 is advertised as being low-latency, but I've been led to believe that the only difference is the software bundle (and it's red), so the below will apply to both.

In short, works very well with ALSA. Based on a Burr-Brown PCM2902E, gives you stereo phono in/out, optical out and a headphone amp. Sound quality seems reasonable enough, and there is little background hiss.

Optical output also works, and can send 44100Hz and 48000Hz PCM. There are no mixer controls relating to the optical output, it is always on.

No real configuration is needed---just plug it in. However, the hardware seems to have remained unbranded internally, so dmesg says:

usb 2-3: Product: USB Audio CODEC
usb 2-3: Manufacturer: Burr-Brown from TI
input: Burr-Brown from TI               USB Audio CODEC  as /devices/pci0000:00/0000:00:04.0/usb2/2-3/2-3:1.3/input/input3
generic-usb 0003:08BB:2902.0001: input,hidraw0: USB HID v1.00 Device [Burr-Brown from TI               USB Audio CODEC ] on usb-0000:00:04.0-3/input3

As it is unbranded, ALSA knows it as either "default" or "CODEC". To make it the default sound device, I do this in /etc/asound.conf:

pcm.!default    front:CODEC # USB Soundcard
ctl.!default    {
    type hw
    card CODEC
}

There is also a HID device, that exposes volume up/down/mute buttons. These aren't wired up though, you'd have solder directly to pins 5--7 to be able to use these.

ALSA Output

/proc/asound/card?/stream0

This file shows what input/output configurations are possible. The full output is available here.

/proc/asound/card?/usbmixer

This file shows the mixer channels available:

USB Mixer: usb_id=0x08bb2902, ctrlif=0, ctlerr=0
Card: Burr-Brown from TI USB Audio CODEC at usb-0000:00:04.1-4.4.4.3, full speed
  Unit: 3
    Control: name="PCM Playback Volume", index=0
    Info: id=3, control=2, cmask=0x3, channels=2, type="S16"
    Volume: min=-32768, max=0, dBmin=-12800, dBmax=0
  Unit: 3
    Control: name="PCM Playback Switch", index=0
    Info: id=3, control=1, cmask=0x0, channels=1, type="INV_BOOLEAN"
    Volume: min=0, max=1, dBmin=0, dBmax=0