Musings - How to engineer support for sound cards with no native Linux drivers?

Hi There

I have been using Ardour for some time now. I moved from ProTools on a Digi002 Rack interface with WindowsXP to using Ardour with an EMU 1212M on Linux. The situation arose where I had to record 16 channels of audio at once, and so I once again found myself forced to use ProTools and the digi002 with another 8 channels coming in via the adat litepipe (which incidentally, did not behave itself on the day :frowning: )

This got me to thinking, I really have a good piece of gear in the digi002 which is pretty useless under Linux, since the manufacturer does not release Linux drivers.

I remember some time ago that when Linux was battling with WiFi drivers, you could install ‘ndiswrapper’ which used the Windows driver and made it work with the Linux kernel.

So, what about the idea of writing some middleware that would make Windows audio drivers work in Linux? Could the same ndiswrapper idea be made to work with audio? So the windows driver thinks it’s in Windows, and Linux can see it also?

What do you think? Is this possible?

@AK65, short answer no, especially when dealing with Digi’s interfaces as they utilize a completely different protocol(DAE) on Windows and OS X than what is standard for those OSes to prevent other programs from using their interfaces like Protools does. Really your problem is with how Digidesign/AVID does business with its software. They do release very basic and crippled versions of OS drivers to allow other software to talk to the hardware, but they wouldn’t allow you to do 16 channels is my understanding as I think they are limited to 2 channels.

All this being said, in as far as tracking 16 channels or more, that is completely possible in Linux assuming you have the hardware for it (RME in most cases is where you would look for this though some Firewire can support it as well now courtesy of a combination of FFADO and Manufacturers releasing specs to allow drivers to be written)


Hi Seablade

Thanks for your answer. I was fearing that this was the case.

I know that digidesign released ASIO drivers some years ago that enabled other software (CuBase or others) to use their hardware (not just two channels). I don’t know if this would extend to the litepipe inputs, but I can’t think of a reason why it wouldn’t.

If that would be the case, could one not ‘wrap’ the ASIO drivers?

Otherwise, flogging the 002 and buying something else is my only option…

is wrapping those drivers useful in real time stuff like this?

the work involved in reverse engineering the existing windows drivers is pretty immense. i don’t know of anyone with the skillset AND the motivation to do this.

its vastly preferable that we reward companies who, even if they do not make linux drivers themselves, enable them to be created for their hardware. there is nothing particularly special about any audio i/o hardware that digidesign makes, and so i would suggest that if you want to work on linux, you get some h/w that actually works on linux too.

Thanks for the reply Paul.

Once a keen digidesign/ProTools user, I swapped OS to Linux to due issues I had with Microsoft treating legitimate, paying customers like criminals. Everytime a hard drive, or motherboard died, I got a hundred questions from Microsoft which I really didn’t like.

Also, the issue of vendor lock-in was a bitter pill to swallow. Being forced to upgrade the whole time, the hardware tied to the software, that kind of thing. None of the upgrades made my productions sound any different in any measurable way. And of course, the fact that perfectly good, serviceable hardware gets labeled ‘legacy’ and then dumped from future support.

I have no idea what goes on between ProTools software and hardware, but I guess the data stream is encrypted, so it’s probably impossible to reverse engineer it. Everyone is so damned paranoid these days. Even if their product sucks, they’ve got to protect whatever their I’s and 0’s are doing. It’s pretty pathetic in my view.

Not having any money to spend on hardware right now, I guess I’ll continue to use the 002 and Windows if I require a high IO count, and then continue mixdown in Ardour. For lesser projects, I’ll use Ardour straight.

BTW, going back to ProTools after all these years makes me really appreciate how pretty Ardour is. Kudos, it really is much better to look at. There are still some features that Ardour could emulate, but not many…

I have also considered getting a MacBook and using the coreaudio drivers to use the digi002. I have no idea how crippled the drivers are though…and I have never used a Mac-Anything.

@AK65: actually, the data flow for digidesign’s high end boxes has been reverse engineered. SSL sell I/O boxes that can talk to PT. But this is very different from their entry-level devices like the 001 and 002. There’s no encryption or anything going on there, but reverse engineering any device is a lot of work, and given the plethora of alternatives available with essentially the same or better specs, its hard to see the motivation.

The lastest CoreAudio drivers for the 002 work - they have a few quirks but are basically good enough to allow any software to use the 002 as an audio interface.

Thanks very much for your remarks on Ardour.