This package facilitates the integration of DepthAI and compatible hardware with ROS. List of compatible hardwares can be found here. This package is based on the Gen 1 API for DepthAI and provides an interface for ROS (not ROS2).
This meta-package contains the following packages:
Though this metapackage might work on other systems, it has only been tested on:
A list of pre-requisites:
g++
or clang
with at least C++17 support)rospack deps depthai_ros_driver
)To use depthai_ros
metapackage, clone this repo with submodules:
$ git clone --recursive https://github.com/rapyuta-robotics/depthai_ros.git
For older versions of git, one of the following processes might be needed:
--recurse-submodules
instead of --recursive
git submodule update --init --recursive
Sample models are available here
catkin build depthai_ros
or catkin_make_isolated --build depthai_ros
. catkin_make
will not build the package successfully../deploy_udev_rules.sh
present in ~/depthai_ros/depthai_ros_driver/scripts
.roslaunch depthai_ros_driver depthai_{node,nodelet}.launch
blob_file
and blob_file_config
arguments to the launch file. If an argument A
needs value B
, the syntax is roslaunch <launch_file> A:=B
$ rostopic list /depthai
$ rosservice list /depthai
$ rosparam list /depthai
If you see an error similar to this:
Stream not opened: config_d2h
Available streams: []
device is not initialized
Pipeline is not created.
No USB device [03e7:2485], still looking... 0.401s [FOUND]
Sending internal device firmware
Successfully connected to device.
Try forcing USB2 mode using <roslaunch as before> force_usb2:=true
depthai_ros_msgs
This package contains all the custom messages and services used by the depthai_ros_driver
API. While we tried to use the standard messages where possible, due to the unique hardware, it wasn't possible to stick with the standard messages everywhere.
depthai_ros_driver
This package consists of a node and a nodelet version of the ROS driver. It also contains the launch files required for an easy use.
node_interface
This package contains some utilities used to reduce code duplication between the node and the nodelet version in depthai_ros_driver
.