[PlanetCCRMA] Could not initialize Ieee1349Service (sic) object - (without pictures!)

David Cornette david at davidcornette.com
Tue Aug 5 16:53:13 PDT 2008


On Tue, Aug 05, 2008 at 03:53:10PM -0700, Jim Gaspar wrote:
> I installed the CCRMA rt kernel for FC8 two days ago, which went 
> smoother than
> any install I've done at my day job thanks to the excellent instructions!
> And I loaded the CCRMA metapackage.  My goal is to connect an M-Audio 
> Firewire Solo.

I just went through something very similar a few days ago trying to get a PreSonus Firebox working, and eventually succeeded.  I think you might be having the same problem I was.

> This          jackd -v -R -P89 -dfreebob -dhw:0 -r48000 -p256 -n3 -D_
> and this     su -c 'jackd -v -R -P89 -dfreebob -dhw:0 -r48000 -p256 -n3 -D'
> 
> Give me this -
> 
> getting driver descriptor from /usr/lib/jack/jack_alsa.so
> getting driver descriptor from /usr/lib/jack/jack_dummy.so
> getting driver descriptor from /usr/lib/jack/jack_freebob.so
> jackd 0.103.0 ...
> JACK compiled with System V SHM support.
> server `default' registered
> registered builtin port type 32 bit float mono audio
> registered builtin port type 8 bit raw midi
> clock source = system clock via clock_gettime
> loading driver ..
> new client: freebob_pcm, id = 1 type 1 @ 0x806c920 fd = -1
> Freebob using Firewire port 0, node -1
> new buffer size 256
> LibFreeBoB MSG: FreeBoB Streaming Device Init*
> Ieee1394Service::initialize:* *Could not get 1394 handle: Invalid argument*
> LibFreeBoB MSG: Using FreeBoB lib version libfreebob 1.0.3
> LibFreeBoB MSG: Device information:
> LibFreeBoB MSG: Device options:
> LibFreeBoB MSG: Port : 0
> LibFreeBoB MSG: Device Node Id : -1
> LibFreeBoB MSG: Samplerate : 48000
> LibFreeBoB MSG: Period Size : 256
> LibFreeBoB MSG: Nb Buffers : 3
> LibFreeBoB MSG: Directions : 0
> Is ieee1394 and raw1394 driver loaded?
> Fatal (devicemanager.cpp)[68] initialize: Could not initialize 
> Ieee1349Service
> object
> Fatal (freebob.cpp)[69] freebob_new_handle: Could not initialize device 
> manager
> LibFreeBoB ERR: cannot create libfreebob handle
> FreeBoB ERR: FREEBOB: Error creating virtual device
> cannot load driver module freebob ;starting server engine shutdown ;freeing
> shared port segments ;stopping server thread

The output I was getting was a little different, but I think that is because you have verbose output on, and I did not.  As you probably saw, this is often a symptom of not having the raw1394 device created, or not having permission to write to it.

> ...
> 
> dmesg | grep 1394
> 
> ohci1394: fw-host0: OHCI-1394 1.0 (PCI): IRQ=[19] 
> MMIO=[d0100000-d01007ff] Max
> Packet=[2048] IR/IT contexts=[4/8]
> ieee1394: Host added: ID:BUS[0-00:1023] GUID[00301bba00007d62]
> ieee1394: Node added: ID:BUS[0-01:1023] GUID[000d6c0b00e27fc9]
> ieee1394: raw1394: /dev/raw1394 device initialized
> NOTE: The dv1394 driver is unsupported and may be removed in a future Linux
> release. Use raw1394 instead.
> 
> ll /dev/raw1394
> 
> _crw-rw-rw- 1 root disk 171, 0 2008-08-05 13:13 /dev/raw1394

You have the device and permission to use it.  This was the same for me.

> 
> Installed Packages
> libavc1394.i386 0.5.3-1.fc6 installed
> libraw1394.i386 1.3.0-7.fc8 installed
> 

And this is your problem.  libraw1394.i386 1.3.0-7.fc8 is from Fedora updates,
and you need the one from PlanetCCRMA.  Try running testlibraw.  I bet you will get something like this:

successfully got handle
current generation number: 0
0 card(s) found

There are currently two different IEEE1394 drivers in the Linux kernel.  Fedora builds there kernel to use the new, experimental one (I believe the authors still advise against providing only the new one) and PlanetCCRMA builds the older one.  Evidently the libraw library each provides only works with one of them.  A few months ago, Fedora released an update to theirs with a later version number than the one PlanetCCRMA provides, and that one gets priority.

To prevent yum from picking libraw1394 from Fedora Updates, edit the file /etc/yum.repos.d/fedora-updates.repo and put the following line at the end of the section labeled "[updates]":

exclude=libraw1394 libraw1394-devel

You will either need to uninstall libraw1394 and then use yum to install it, or you can manually download the rpm from PlanetCCRMA and then force rpm to install the older version like this:

rpm -Uvh --oldpackage libraw1394-1.3.0-6.1.fc8.ccrma.i386.rpm

> 
> /sbin/lsmod | grep 1394 _ # Should I see'ieee1394' in this list?
> 
> /dv1394 19128 0
> raw1394 24408 0
> ohci1394 29744 1 dv1394

Nope, not on the PlanetCCRMA kernel.  It has ieee1394 compiled into the kernel, not built as a module.

I hope this helps.  I know how frustrating this must be (since I just dealt with it myself).



More information about the PlanetCCRMA mailing list