UR22C in Linux

Hi,

The UR22C runs plug and play on my Linux installation (manjaro, kernel 5.6.12-1).

But the dspMixFx application won’t find my device in wine. Which was to be expected I guess. (UR-C Updates and Downloads | Steinberg)

If you don’t plan to provide the tools/drivers/dspMixFx for Linux, could you please at least open source them? People could try to make it work and provide a running Linux version of it on github, so that the DSP can be used in Linux as well. Creative also has open sourced drivers in the past (Creative Gives In, They Open-Source Their X-Fi Driver - Phoronix)

That would be really neat.

Thanks!

7 Likes

When the Interface was connected on a USB 2.0 port instead of 3.0, it produced clicking noises every few seconds. The manual says it has to run from USB 3.0 due to the power requirements.

Here is all the other, probably irrelevant, stuff that I tried while it was on the wrong port

https://wiki.archlinux.org/index.php/Power_management#USB_autosuspend

maybe that helps you if you get clicking noises even though it’s on usb 3.0

1 Like

If you want to add “Master” and “Mute” alsa controls to it so that you can do

amixer set Master 10-
amixer set Mute toggle

you can use this as ~/.asoundrc:

pcm.ur22cVol {
    type            softvol
    slave {
        pcm         "sysdefault:CARD=UR22C"
    }
    control {
        name        Master
        card        0
    }
}

pcm.ur22cMute {
    type            softvol
    slave {
        pcm         "ur22cVol"
    }
    control {
        name        Mute
        card        0
    }
    resolution 2
}

pcm.!default {
    type            asym
    playback.pcm {
        type        plug
        slave.pcm   "ur22cMute"
    }
    capture.pcm {
        type        plug
        slave.pcm   "sysdefault:CARD=UR22C"
    }
}

You can also map the amixer commands to your multimedia keys as shortcuts somewhere in your user interface. If you are using xfce, you can run this in a console to add those shortcuts:

xfconf-query --create --channel xfce4-keyboard-shortcuts --property /commands/custom/XF86AudioRaiseVolume --type string --set 'amixer set Master 8+'
xfconf-query --create --channel xfce4-keyboard-shortcuts --property /commands/custom/XF86AudioLowerVolume --type string --set 'amixer set Master 8-'
xfconf-query --create --channel xfce4-keyboard-shortcuts --property /commands/custom/XF86AudioMute --type string --set 'amixer set Mute toggle'

If you are using KDE, KMix might work for you

More info: Alsa Opensrc Org - Independent ALSA and linux audio support site

Or you can use this: GitHub - sezanzeb/alsa-control: Easy to use GUI based ALSA default soundcard and volume configurator with Dmix, Dsnoop and Softvol support

1 Like

Playing youtube videos makes pulseaudio switch to 48000hz, which cannot be disabled in my case by configuring /etc/pulse/daemon.conf for some reason (run pacmd list-sinks to get sample rates). This change of the sample rate makes the interface go quiet for 2 seconds. It can be avoided with jack2 (jack works as well probably), cadence and the pulseaudio-jack bridge alsa - Pulseaudio detects wrong sample rate. Forcing pulseaudio a sample rate - Unix & Linux Stack Exchange

1 Like

If you are reading this, you might be interested in trying out pipewire as a replacement for pulseaudio and jack.

1 Like

The steps that are needed to get the interface to work in pulseaudio:

# to get it to work at all this is nowadays required, otherwise it goes silent right after starting pulse
sudo sed 's/load-module module-suspend-on-idle/#load-module module-suspend-on-idle/' /etc/pulse/default.pa -i

# preventing pulseaudio crashing when opening audacity or recording into telegram,
# as well as preventing crackling
sudo echo "default-sample-rate = 44100" | sudo tee --append /etc/pulse/daemon.conf
sudo echo "alternate-sample-rate = 44100" | sudo tee --append /etc/pulse/daemon.conf
# /etc/pulse/daemon.conf is ignored on my system, editing the users config works for me
echo "default-sample-rate = 44100" | tee --append ~/.pulse/daemon.conf
echo "alternate-sample-rate = 44100" | tee --append ~/.pulse/daemon.conf

# I don't know if this is actually still required, because pavucontrol allows you to lock the profile nowadays.
# to prevent pulse from switching devices (for whatever reason), blacklist all other devices:
# (probably requires rebooting)
sudo touch /etc/modprobe.d/fix_pulse.conf
# see https://bbs.archlinux.org/viewtopic.php?id=135782
sudo echo "blacklist snd_hda_codec_hdmi" | sudo tee --append /etc/modprobe.d/fix_pulse.conf
sudo echo "blacklist snd_hda_intel" | sudo tee --append /etc/modprobe.d/fix_pulse.conf
# see lsmod | ack snd
sudo echo "blacklist snd_hda_codec_generic" | sudo tee --append /etc/modprobe.d/fix_pulse.conf
sudo echo "blacklist snd_hda_codec_realtek" | sudo tee --append /etc/modprobe.d/fix_pulse.conf

In case you are facing issues, this is what you have to do to get pulseaudio logs:

systemctl mask pulseaudio.socket --user
sudo pkill -f pulseaudio && pulseaudio -v

Maybe this helps with debugging your own issues.

Well, or you should maybe just get a mac mini and avoid all this nightmare. Pipewire doesn’t really work for me.

Hi! Pipewire works pretty good on my side, far better than hacking PulseAudio with Jack together. Never opened the PulseAudio settings once so far. No crashes or such.

Tho the system I use is OpenSuse Tumbleweed. I installed pipewire-pulseaudio there and everything is good, no crackling or such. Enough for everyday use (even with multiple audio devices / DACs), but I still need to evaluate music production … so far it seems to be fine.

I unfortunately got problems with clicking noises in my audio input that are not present with a different audio interface. It is pretty much this problem: alsa - Audio Pops & Clicks on USB-Soundcard - Ask Ubuntu, but the proposed solution there doesn’t do it for me. (Not asking for help here, just reporting that this can be an issue)

some reverse-engineerig, that could help