ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question

libdc1394 package not available for Diamondback?

asked 2011-10-13 16:27:22 -0600

Divya gravatar image

updated 2011-10-18 15:56:00 -0600

joq gravatar image


I am new to ROS and Ubuntu environments... I have been trying to install bumblebee2 package for my system.. but it gives me the following error

      '[rosbuild] Building package bumblebee2
        Failed to invoke /opt/ros/diamondback/ros/bin/rospack deps-manifests bumblebee2
         [rospack] couldn't find dependency [libdc1394v2] of [bumblebee2]
        [rospack] missing dependency'

I tried to look for the package libdc1394v2 in ROS .. but I couldn't find a valid package that works for Diamondback version...

Does anyone know how I can solve this? Is there another package that I can use instead of libdc1394v2? Or do I have to re-install the C-turtle version of ROS?


edit retag flag offensive close merge delete

2 Answers

Sort by ยป oldest newest most voted

answered 2011-10-18 16:03:15 -0600

joq gravatar image

The libdc1394v2 package has been deprecated for a very long time. It was long ago replaced by a rosdep dependency on the system version of libdc1394.

If you have a bumblebee driver that depends on libdc1394v2, it is not being actively maintained. You may be able to get it working by converting that <depend> to a <rosdep> in the manifest.xml file. But, I expect you will uncover other problems, beyond that.

There may not be any actively maintained bumblebee driver right now. It probably would not be terribly hard to create one, but a maintainer with access to the device would be necessary.

edit flag offensive delete link more

answered 2011-10-13 17:13:20 -0600

Thomas D gravatar image

updated 2011-10-19 04:24:19 -0600

Do you have camera_drivers installed? Use

sudo apt-get install ros-diamondback-camera-drivers

Since you are looking for libdc1394v2 I'm not sure it will work, but it definitely works for Point Grey Firewire cameras (Flea2) I have tried.

To use, calibrate your cameras using the stereo version command. That will save the calibration files to /tmp, but you can copy/move them into your node. In your launch file start up two camera1394 nodes:

<!-- The left camera node. -->
  pkg="camera1394" type="camera1394_node" name="camera_left">
  <rosparam file="$(find your_node)/left_bumblebee.yaml"/>
  <remap from="camera" to="left"/>

<!-- The right camera node. -->
  pkg="camera1394" type="camera1394_node" name="camera_right">
  <rosparam file="$(find your_node)/right_bumblebee.yaml"/>
  <remap from="camera" to="right"/>

The left_bumblebee.yaml file will contain something like the following, where you set parameters for the camera1394 node:

# ID of your camera. Use coriander to help identify.
guid: 0000000000000000
# Mode describes the size and number of channels for the images.
#video_mode: 640x480_mono8
video_mode: 320x240_yuv422
# The frame_id MUST be part of your URDF to display correctly in RViz.
frame_id: left_camera
# The location of the ROS calibration file.
camera_info_url: file:///absolute_path_to_your_node/calibration_file.yaml
# Frames per second.
frame_rate: 30
# Try to reset the camera when opening.
reset_on_open: true

These two nodes will then publish on /left/image_raw, /left/image_rect, /right/image_raw, and /right/image_rect. You can see all of the topics they publish on using rxtopic list. Many ROS stereo nodes require exact matches for the timestamps on the image and camera_info topics. You might get that with the bumblebee camera automatically. If not, you can try to run your images through something like sync_images.

Last thing: it would benefit you quite a bit to move at least to Diamondback, if not Electric. I don't think that C-turtle is going to be supported much longer, and there have been changes made recently that break some backwards compatibility. In any case, more people will be able to help you with Diamondback and Electric if you run into trouble.

edit flag offensive delete link more


so you mean to say that instead of bumblebee2 package I should try to use 'camera-drivers'?
Divya gravatar image Divya  ( 2011-10-13 18:01:48 -0600 )edit
I've edited my answer to hopefully make it more clear as to what I think will work for you.
Thomas D gravatar image Thomas D  ( 2011-10-14 02:22:55 -0600 )edit
I'm also interested on acquiring images from bumblebee2. Thomas' answer is useful but I've to add the following to each node: <param name="video_mode" value= "1024x768_yuv422" type="str" />. However initially I don't have calibration files , so can I run it without calibration file ? However,
Andreu gravatar image Andreu  ( 2011-10-17 01:48:00 -0600 )edit
As a result, I'm getting two "libdc errors": "libdc1394 error: Error: Failed to allocate iso bandwidth" and "libdc1394 error: Error: Failed to setup DMA capture".
Andreu gravatar image Andreu  ( 2011-10-17 02:01:49 -0600 )edit
Do you get any errors if you run with just a single camera? Or if you decrease the resolution?
Thomas D gravatar image Thomas D  ( 2011-10-17 02:47:36 -0600 )edit
Thanks Thomas for the interest. When I'll get something clearer about the bumblebee2 i'll post it.
Andreu gravatar image Andreu  ( 2011-10-18 22:44:35 -0600 )edit
`camera1394` will not work as suggested here. The bumblebee is a single 1394 camera that returns interleaved data for both left and right images. It needs a special driver.
joq gravatar image joq  ( 2011-10-19 07:16:40 -0600 )edit
Completly right joq ! that is what we've learned this week ! Thanks !
Andreu gravatar image Andreu  ( 2011-10-20 01:51:39 -0600 )edit

Question Tools


Asked: 2011-10-13 16:27:22 -0600

Seen: 533 times

Last updated: Oct 19 '11