Isaac ROS ZED Setup

https://media.githubusercontent.com/media/NVIDIA-ISAAC-ROS/.github/main/resources/isaac_ros_docs/getting_started/zed_parts.png/

ZED cameras require the following to be able to publish data to ROS 2 topics:

  1. ZED SDK (Installed by Dockerfile.zed)

  2. zed-ros2-wrapper (Cloned in Step 1 of Setup Instructions)

  3. ZED X driver (Installed by user on host machine in Step 3 of Setup Instructions)

Camera Compatibility

All cameras supported by the zed ros2 wrapper work with Isaac ROS.

ZED Model

SQA Testing?

ZED 2i

ZED X

ZED 2

ZED

ZED Mini

ZED X Mini

Setup Instructions

Note

This tutorial assumes that you have set up your development environment by following the instructions here.

  1. Clone the isaac_ros_common and zed-ros2-wrapper repositories:

cd ${ISAAC_ROS_WS}/src && \
git clone https://github.com/NVIDIA-ISAAC-ROS/isaac_ros_common.git && \
git clone --recurse-submodules https://github.com/stereolabs/zed-ros2-wrapper

Note

${ISAAC_ROS_WS} is defined to point to /ssd/workspaces/isaac_ros-dev/ or ~/workspaces/isaac_ros-dev/.

  1. If you are using ZED X or ZED X Mini refer to the appropriate stereolabs setup guide.

Note

You do not need to install the ZED SDK because this is done by Dockerfile.zed.

Note

You must install the ZED driver.

  1. Plug in the USB cable of your ZED camera before launching the Docker container in the next step.

  2. Configure the container created by isaac_ros_common/scripts/run_dev.sh to include Dockerfile.zed. Create the .isaac_ros_common-config file in the isaac_ros_common/scripts directory:

cd ${ISAAC_ROS_WS}/src/isaac_ros_common/scripts && \
touch .isaac_ros_common-config && \
echo CONFIG_IMAGE_KEY=ros2_humble.user.zed >> .isaac_ros_common-config
  1. Launch the Docker container.

cd ${ISAAC_ROS_WS}/src/isaac_ros_common && \
./scripts/run_dev.sh ${ISAAC_ROS_WS}

This rebuilds the container image using Dockerfile.zed in one of its layered stage. It takes some time for rebuilding.

  1. After the container image is rebuilt and you are inside the container, you can run /usr/local/zed/tools/ZED_Explorer to check that the ZED camera is connected.

/usr/local/zed/tools/ZED_Explorer

If everything is working as expected, you should see something similar to the following:

https://media.githubusercontent.com/media/NVIDIA-ISAAC-ROS/.github/main/resources/isaac_ros_docs/getting_started/zed_explorer.png/