Re: Steinberg UR44 uaudio device
On Sat, 2022-06-11 at 19:31 +0200, Eivind Nicolay Evensen wrote: > Den Fri, 10 Jun 2022 21:25:48 -0400 > skrev "David H. Gutteridge" : > > > > To add to what others have said, a general rule as I've understood > > it > > is that if a device offers > 24/96 for ADC/DAC, it will be expecting > > USB Audio 2.0, at least for processing at those higher rates. Some > > devices are switchable between 1.0 and 2.0; some actually have a > > physical switch to select which USB Audio class should be used. I've > > never seen a UR44, much less operated one, but a glance at the > > manual > > refers to a switch on the rear labelled "CC Mode". This is for > > "Class > > Compliant" mode, which implies it will work with generic OS drivers. > > Have you tried flipping that switch to "on"? (The manual is a bit > > light on specific technical details.) > > Yes, this was all done with the "class compliant" switch set to "on". Interesting, not what I would necessarily expect here. Anyway, clearly we're missing some significant support here. Dave
Re: Steinberg UR44 uaudio device
Den Fri, 10 Jun 2022 21:25:48 -0400 skrev "David H. Gutteridge" : > On Thu, 9 Jun 2022 at 17:43:02 +0200, Eivind Nicolay Evensen wrote: > > > On 6/8/22 16:50, Eivind Nicolay Evensen wrote: > > > > If I read that right, Martin's guess that this is a v2 device is > > > > right. > > > > > > Hi, > > > > > > If you compile the kernel with "options USB_DEBUG", there will be > > > a "sysctl hw.usb.uaudio.debug=16", which will print this in > > > dmesg. > > > > > > So then, this confirms it it seems: > [...] > > To add to what others have said, a general rule as I've understood it > is that if a device offers > 24/96 for ADC/DAC, it will be expecting > USB Audio 2.0, at least for processing at those higher rates. Some > devices are switchable between 1.0 and 2.0; some actually have a > physical switch to select which USB Audio class should be used. I've > never seen a UR44, much less operated one, but a glance at the manual > refers to a switch on the rear labelled "CC Mode". This is for "Class > Compliant" mode, which implies it will work with generic OS drivers. > Have you tried flipping that switch to "on"? (The manual is a bit > light on specific technical details.) Yes, this was all done with the "class compliant" switch set to "on". > > Regards, > > Dave > -- Eivind Nicolay Evensen
Re: Steinberg UR44 uaudio device
On Thu, 9 Jun 2022 at 17:43:02 +0200, Eivind Nicolay Evensen wrote: > > On 6/8/22 16:50, Eivind Nicolay Evensen wrote: > > > If I read that right, Martin's guess that this is a v2 device is > > > right. > > > > Hi, > > > > If you compile the kernel with "options USB_DEBUG", there will be a > > "sysctl hw.usb.uaudio.debug=16", which will print this in dmesg. > > > So then, this confirms it it seems: [...] To add to what others have said, a general rule as I've understood it is that if a device offers > 24/96 for ADC/DAC, it will be expecting USB Audio 2.0, at least for processing at those higher rates. Some devices are switchable between 1.0 and 2.0; some actually have a physical switch to select which USB Audio class should be used. I've never seen a UR44, much less operated one, but a glance at the manual refers to a switch on the rear labelled "CC Mode". This is for "Class Compliant" mode, which implies it will work with generic OS drivers. Have you tried flipping that switch to "on"? (The manual is a bit light on specific technical details.) Regards, Dave
Re: Steinberg UR44 uaudio device
Den Wed, 8 Jun 2022 17:08:20 +0200 skrev Hans Petter Selasky : > On 6/8/22 16:50, Eivind Nicolay Evensen wrote: > > If I read that right, Martin's guess that this is a v2 device is > > right. > > Hi, > > If you compile the kernel with "options USB_DEBUG", there will be a > "sysctl hw.usb.uaudio.debug=16", which will print this in dmesg. So then, this confirms it it seems: uaudio_chan_fill_info_sub: Wrong number of channels uaudio_chan_fill_info_sub: Wrong number of channels [large amounts of above] uaudio_attach: audio rev 2.00 uaudio_attach: 0 mixer controls uaudio0: Play[0]: 192000 Hz, 4 ch, 24-bit S-LE PCM format, 2x8ms buffer. uaudio0: Play[0]: 176400 Hz, 4 ch, 24-bit S-LE PCM format, 2x8ms buffer. uaudio0: Play[0]: 96000 Hz, 4 ch, 24-bit S-LE PCM format, 2x8ms buffer. uaudio0: Play[0]: 88200 Hz, 4 ch, 24-bit S-LE PCM format, 2x8ms buffer. uaudio0: Play[0]: 48000 Hz, 4 ch, 24-bit S-LE PCM format, 2x8ms buffer. uaudio0: Play[0]: 44100 Hz, 4 ch, 24-bit S-LE PCM format, 2x8ms buffer. uaudio0: Record[0]: 192000 Hz, 6 ch, 24-bit S-LE PCM format, 2x8ms buffer. uaudio0: Record[0]: 176400 Hz, 6 ch, 24-bit S-LE PCM format, 2x8ms buffer. uaudio0: Record[0]: 96000 Hz, 6 ch, 24-bit S-LE PCM format, 2x8ms buffer. uaudio0: Record[0]: 88200 Hz, 6 ch, 24-bit S-LE PCM format, 2x8ms buffer. uaudio0: Record[0]: 48000 Hz, 6 ch, 24-bit S-LE PCM format, 2x8ms buffer. uaudio0: Record[0]: 44100 Hz, 6 ch, 24-bit S-LE PCM format, 2x8ms buffer. uaudio0: MIDI sequencer. uaudio_attach: doing child attach umidi_bulk_read_callback: start pcm9: on uaudio0 uaudio_attach_sub: software controlled main volume uaudio_mixer_init_sub: child=0 uaudio_chan_init: Worst case buffer is 36864 bytes uaudio_chan_init: Worst case buffer is 55296 bytes uaudio_chan_set_param_speed: Selecting alt 4 uaudio_chan_set_param_speed: Selecting alt 4 uaudio_chan_set_param_format: Selecting format 0x0041 uaudio_chan_set_param_speed: Selecting alt 4 uaudio_chan_set_param_speed: Selecting alt 4 uaudio_chan_set_param_format: Selecting format 0x0861 umidi_bulk_read_callback: actlen=512 bytes umidi_bulk_read_callback: start uaudio0: No HID volume keys found. uaudio_mixer_write_cfg_callback: umidi_bulk_read_callback: actlen=512 bytes umidi_bulk_read_callback: start umidi_bulk_read_callback: actlen=512 bytes umidi_bulk_read_callback: start > > You can also do: > > pkg install usbutils > > and > > lsusb -vvv > > and look for something like this: > > > Interface Descriptor: > > bLength 9 > > bDescriptorType 4 > > bInterfaceNumber2 > > bAlternateSetting 0 > > bNumEndpoints 0 > > bInterfaceClass 1 Audio > > bInterfaceSubClass 1 Control Device > > bInterfaceProtocol 0 > > iInterface 0 > > AudioControl Interface Descriptor: > > bLength 9 > > bDescriptorType36 > > bDescriptorSubtype 1 (HEADER) > > bcdADC 1.00 > this one will tell > > wTotalLength 38 > > bInCollection 1 > > baInterfaceNr( 0) 3 As well as this: Bus /dev/usb Device /dev/ugen0.7: ID 0499:1704 Yamaha Corp. Steinberg UR44 Device Descriptor: bLength18 bDescriptorType 1 bcdUSB 2.00 bDeviceClass 239 Miscellaneous Device bDeviceSubClass 2 ? bDeviceProtocol 1 Interface Association bMaxPacketSize064 idVendor 0x0499 Yamaha Corp. idProduct 0x1704 Steinberg UR44 bcdDevice2.10 iManufacturer 1 Yamaha Corporation iProduct2 Steinberg UR44 iSerial 0 bNumConfigurations 2 Configuration Descriptor: bLength 9 bDescriptorType 2 wTotalLength 324 bNumInterfaces 4 bConfigurationValue 1 iConfiguration 0 bmAttributes 0xc0 Self Powered MaxPower0mA Interface Association: bLength 8 bDescriptorType11 bFirstInterface 0 bInterfaceCount 4 bFunctionClass 1 Audio bFunctionSubClass 0 bFunctionProtocol 32 iFunction 0 Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber0 bAlternateSetting 0 bNumEndpoints 0 bInterfaceClass 1 Audio bInterfaceSubClass 1 Control Device bInterfaceProtocol 32 iInterface 0 AudioControl Interface Descriptor: bLength 9 bDescriptorType36 bDescriptorSubtype 1 (HEADER) bcdADC 2.00 bCategory 8 wTotalLength 75
Re: Steinberg UR44 uaudio device
On 6/8/22 16:50, Eivind Nicolay Evensen wrote: If I read that right, Martin's guess that this is a v2 device is right. Hi, If you compile the kernel with "options USB_DEBUG", there will be a "sysctl hw.usb.uaudio.debug=16", which will print this in dmesg. You can also do: pkg install usbutils and lsusb -vvv and look for something like this: Interface Descriptor: bLength 9 bDescriptorType 4 bInterfaceNumber2 bAlternateSetting 0 bNumEndpoints 0 bInterfaceClass 1 Audio bInterfaceSubClass 1 Control Device bInterfaceProtocol 0 iInterface 0 AudioControl Interface Descriptor: bLength 9 bDescriptorType36 bDescriptorSubtype 1 (HEADER) bcdADC 1.00 this one will tell wTotalLength 38 bInCollection 1 baInterfaceNr( 0) 3 --HPS
Re: Steinberg UR44 uaudio device
Den Fri, 3 Jun 2022 15:11:35 +0200 skrev Hans Petter Selasky : > On 6/3/22 15:00, Eivind Nicolay Evensen wrote: > > Thanks, that is interesting to know. I haven't upgraded my FreeBSD > > machine past 11.3. When plugging the unit into that, it was only > > recognised as ugen. Perhaps I finally have a reason to upgrade it, > > if only just for comparison. And it seems the driver has shared > > some bits before, in the small chance I figure out what needs > > doing in there. > > FreeBSD 13.1 is a good release :-) And indeed it's supported there. At least play, I didn't test record. ugen0.7: at usbus0 uaudio0 on uhub9 uaudio0: on usbus0 uaudio0: Play[0]: 192000 Hz, 4 ch, 24-bit S-LE PCM format, 2x8ms buffer. uaudio0: Play[0]: 176400 Hz, 4 ch, 24-bit S-LE PCM format, 2x8ms buffer. uaudio0: Play[0]: 96000 Hz, 4 ch, 24-bit S-LE PCM format, 2x8ms buffer. uaudio0: Play[0]: 88200 Hz, 4 ch, 24-bit S-LE PCM format, 2x8ms buffer. uaudio0: Play[0]: 48000 Hz, 4 ch, 24-bit S-LE PCM format, 2x8ms buffer. uaudio0: Play[0]: 44100 Hz, 4 ch, 24-bit S-LE PCM format, 2x8ms buffer. uaudio0: Record[0]: 192000 Hz, 6 ch, 24-bit S-LE PCM format, 2x8ms buffer. uaudio0: Record[0]: 176400 Hz, 6 ch, 24-bit S-LE PCM format, 2x8ms buffer. uaudio0: Record[0]: 96000 Hz, 6 ch, 24-bit S-LE PCM format, 2x8ms buffer. uaudio0: Record[0]: 88200 Hz, 6 ch, 24-bit S-LE PCM format, 2x8ms buffer. uaudio0: Record[0]: 48000 Hz, 6 ch, 24-bit S-LE PCM format, 2x8ms buffer. uaudio0: Record[0]: 44100 Hz, 6 ch, 24-bit S-LE PCM format, 2x8ms buffer. uaudio0: MIDI sequencer. pcm9: on uaudio0 uaudio0: No HID volume keys found. If I read that right, Martin's guess that this is a v2 device is right. -- Eivind Nicolay Evensen
Re: Steinberg UR44 uaudio device
Den Fri, 3 Jun 2022 14:04:45 +0200 skrev Hans Petter Selasky : > On 6/3/22 12:57, Martin Husemann wrote: > > It is most likely a uaudio v2 device (not suprising for > > 32bit/192kHz). Unfortunately NetBSD currently does not support that > > audio class. It is not hard to add support, just needs someone with > > some time to do it;-) > > FreeBSD has had support for USB audio v2 for some time now. > > --HPS Thanks, that is interesting to know. I haven't upgraded my FreeBSD machine past 11.3. When plugging the unit into that, it was only recognised as ugen. Perhaps I finally have a reason to upgrade it, if only just for comparison. And it seems the driver has shared some bits before, in the small chance I figure out what needs doing in there. -- Eivind Nicolay Evensen
Re: Steinberg UR44 uaudio device
On 6/3/22 12:57, Martin Husemann wrote: It is most likely a uaudio v2 device (not suprising for 32bit/192kHz). Unfortunately NetBSD currently does not support that audio class. It is not hard to add support, just needs someone with some time to do it;-) FreeBSD has had support for USB audio v2 for some time now. --HPS
Re: Steinberg UR44 uaudio device
On Fri, Jun 03, 2022 at 10:12:44AM +0200, Eivind Nicolay Evensen wrote: > Hello. > > Is there any way to get more information to understand > what is needed to get this Steinberg UR44 to work on > NetBSD: > > [ 109,152749] uaudio0 at uhub1 port 1 configuration 1 interface 0 > [ 109,152749] uaudio0: Yamaha Corporation (0x0499) Steinberg UR44 (0x1704), > rev 2.00/2.10, addr 4 > [ 109,152749] uaudio0: autoconfiguration error: audio descriptors make no > sense, error=4 It is most likely a uaudio v2 device (not suprising for 32bit/192kHz). Unfortunately NetBSD currently does not support that audio class. It is not hard to add support, just needs someone with some time to do it ;-) Martin