Saturday, January 06, 2007

Presonus Firepod, Linux, ieee1394, jackd and you

Upon the arrival of my Presonus Firepod I became the 5th coolest member of my band which has only 4 members. However, all of my excitement at giving the Firepod a whirl was quickly doused by its utter failure in communicating with my Linux desktop. Why not use the your Macbook Pro instead, you ask? Because Presonus shipped the Firepod with verion 1.07 of Cubase LE which doesn't install on OS X 10.4 or greater. Awesome. So Presonus is, I $#!+ you not, snail mailing me an updated CD of Cubase LE 1.08 with a patched Mac installer. Mailing a CD. Welcome to 1998.

So that leaves me with hardware that works with the Mac with no way of interacting with it, and software that works on Linux but I can't see the hardware.

Will our hero ever figure out how to get sound to come out of the Firepod? Which will work first, the Mac with the snail mail CD patch, or Linux with the strange firewire driver problem? Will any of this happen before our hero's daughter wakes up from her nap? Stay tuned...

First off, this Pau Arumi's blog post got me most of the way there. Passed the permission problems and such. Thanks Pau. But then I ran into this fun error message.

JACK compiled with System V SHM support.
loading driver ..
Freebob using Firewire port 0, node -1
R
oot node has no children!
Root node has no children!
FreeBoB ERR: FREEBOB: Error creating virtual device
cannot load driver module freebob
Segmentation fault

Awesome. Stupid root node. The solution to this little gem, after much digging and pestering of nice people on development mailers, was thus.

This is the message that the jack server will output when you attempt to start it with the freebob as the driver and there is no firewire audio hardware connected to your system. But my Firepod was connected to the system, damn it! How stupid do you think I am?... don't say it.

As it turns out my Firepod was connected to the firewire bus on port 1 instead of port 0 and if you don't tell it to do otherwise, the freebob driver will look for hardware on port 0 and die if it doesn't find anything.

So instead of starting jackd like this:

jackd -dfreebob

you have to start it like this:

jackd -dfreebob -dhw:1

Now this is just for my setup. You're Firepod may be connected to port 0 in which case you probably wouldn't have had this problem in the first place. Hope that helps. I'm off to do some recording.

Share and Enjoy!

3 comments:

Richard said...

So, oddly enough I have nearly the same situation, but with the cheaper Firebox... but I got it to work with my MacBook Pro (after emailing presonus) ... here is the text of that:


There is now a patch for OSX Tiger that will allow you to install Cubase LE version 1.07

Click this link to download the Cubase Corrector.

http://homepage.mac.com/jungalero/.Public/CubaseCorrector-SDA.dmg

Extract the SDA Package and install it. Then install Cubase LE 1.07

You may now enjoy unlimited channel recording!

Give a moment of thanks to the author of this patch.

--------------------------------
So that's that, but I'd still like to get it running on my thinkpad with gentoo... We'll see, I spent literally a weekend on it, which was a weekend where I didn't play much music or do much of anything else... All I could get was bizarro errors which seemed to come and go depending on about 6 or so variables... ... and still no sound through the box. Oh well. That was a good couple of months ago, I should probably try again, but give that patch a shot... of course it's not a universal binary by any means.

Richard said...

link to the above URL in case it's cut off.

Paul Russell said...

That was epic! My money was on the daughter waking up. I even turned to my wife and said "Ugg... its so obvious, she's going to wake up and that Firepod is going to become a paper weight!" But no, you went the other way and our hero prevails! I love a happy ending!