Re: M-Audio Fast Track Ultra 8R
- In reply to: Jan Stary : "M-Audio Fast Track Ultra 8R"
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Sat, 08 Feb 2025 00:02:25 UTC
According to snd_uaudio(4), this seems to be the driver for regular class compliant audio interfaces. "The snd_uaudio driver provides support for USB audio class devices and USB MIDI class devices." The driver states that it's designed according to the specs on https://www.usb.org/. That 0xef you've mentioned probably is not considered when choosing the driver to begin with. I don't really know how it works, but I imagine that FreeBSD just picks this default driver. The device itself seems to be more class compliant than M-Audio is willing to 'guarantee'. I'm sure that some features won't while using the default driver. You know, the stuff that comes with it when you install it on windows or mac. The obligatory 'lite' versions of some stuff and the "you need to register" blabla. I bet recording and playing works as expected. Again, I don't know the first thing about driver development. And this post might be unnecessary. Regards, Mathias P.s. You could always browse the source code of the driver at: https://github.com/freebsd/freebsd-src/blob/main/sys/dev/sound/usb/uaudio.c https://github.com/freebsd/freebsd-src/blob/main/sys/dev/sound/usb/uaudio.h On Fri, Feb 07, 2025 at 04:16:15PM +0100, Jan Stary wrote: > I got my hands on an M-Audio Fast Track Ultra 8R, > an USB audio interface; eight tracks, 24/96, nice. > It attaches like this on FreeBSD: > > ugen0.6: <M-Audio Fast Track Ultra 8R> at usbus0 > uaudio0 on uhub2 > uaudio0: <M-Audio Fast Track Ultra 8R, class 239/2, rev 2.00/1.51, addr 6> on usbus0 > uaudio0: Play[0]: 96000 Hz, 8 ch, 24-bit S-LE PCM format, 2x4ms buffer. (selected) > uaudio0: Play[0]: 88200 Hz, 8 ch, 24-bit S-LE PCM format, 2x4ms buffer. > uaudio0: Play[0]: 48000 Hz, 8 ch, 24-bit S-LE PCM format, 2x4ms buffer. > uaudio0: Play[0]: 44100 Hz, 8 ch, 24-bit S-LE PCM format, 2x4ms buffer. > uaudio0: Record[0]: 96000 Hz, 8 ch, 24-bit S-LE PCM format, 2x4ms buffer. (selected) > uaudio0: Record[0]: 88200 Hz, 8 ch, 24-bit S-LE PCM format, 2x4ms buffer. > uaudio0: Record[0]: 48000 Hz, 8 ch, 24-bit S-LE PCM format, 2x4ms buffer. > uaudio0: Record[0]: 44100 Hz, 8 ch, 24-bit S-LE PCM format, 2x4ms buffer. > uaudio0: Single command MIDI quirk enabled > uaudio0: MIDI sequencer. > pcm3 on uaudio0 > uaudio0: No HID volume keys found. > > Everything seems to work, recording the 8 channels. > > The device doesn't seem to be USB class-compliamt, though. > Class 239 (= 0xef) is "miscelaneous", i.e. not audio, which is 0x01. > https://en.wikipedia.org/wiki/USB#Device_classes > > I am trying to make this work on OpenBSD > https://marc.info/?l=openbsd-misc&m=171972890415337&w=2 > where it only attaches as ugen, not uaudio. > > I would like to learn here what it is that FreeBSD does > while trying to attach the device, given that it is, apparently, > not an adio-class compliant device. > > Is there a quirk that makes the kernel go > "oh, but it is actualy USN audio device, even > if it does not report as such; act accordingly"? > > Please excuse my ignorance. Where in the FreeBSD code can I look > at the driver and see how exactly the device gets treated? > > Thank you > > Jan > > PS: M-Audio themselves have left users in the cold, abandoning the device. > https://avidtech.my.salesforce-sites.com/pkb/articles/en_US/Knowledge/Fast-Track-Ultra-8R-Drivers > > > -- They don't know how the world is shaped. And so they give it a shape, and try to make everything fit it. They separate the right from the left, the man from the woman, the plant from the animal, the sun from the moon. They only want to count to two. -- Emma Bull, "Bone Dance"