Steinberg UR824 with Linux - technical points

  • Story categorisation:

This page is a combination of explanations, and ToDo items.

Why rate / light-pipe options have to be specified when driver is loaded

The UR824 offers 8 alts on the audio input / output USB interfaces. The corrrect alt must be chosen according to the sample rate 44.1kHz/48kHz or 88.2kHz/96kHz, and whether the light-pipes are used for SPDIF or ADAT, because these affect the number of audio channels available.

I've not yet got into the standard snd-usb-audio module sufficiently to change the way it chooses which alt to use, and the default mechanism doesn't work for the UR824.

It ought to be possible to change the code so that for the UR824, the alt is chosen according to alsa controls which contain the required information as received from the unit. If not, I will change the code so that the optical configuration alsa control is set according to the mode specified when the driver is loaded.

Why the clock source can not be selected

Items which are selected from the control panel in Windoze use a different protocol to the bulk of the mixer controls, and use USB interface 0. I have not yet looked at this mechanism sufficiently to implement it.

Why the phantom power indicator control doesn't work

In fact it sort-of works, if you press one of the phantom buttons on the UR824, the value of the control is updated, but not inital status is sent, so the correct picture only builds up as changes are seen.

Why the alsa controls differ initially from the actual status of the UR824

I haven't discovered a command by which the UR824 status can be entirely when the driver is started. When you start the driver, the UR824 internal status (routing etc.) is preserved, which is probably what you want, but the alsa controls do not get updated to reflect this. Therefore, the controls only get into sync as you change them.

Saturday, 23rd October 2021

A Deodar site terms