Frequently Asked Questions
What is Isaac ROS?
Isaac ROS is a collection of ROS 2 packages for making autonomous robots. The Isaac ROS suite has been developed and released by NVIDIA to leverage the power of hardware acceleration on NVIDIA Jetson and discrete GPUs for standard robotics applications.
A summary of all available Isaac ROS packages is available here.
What is the difference between a repository and a package?
Each Isaac ROS package is hosted inside an Isaac ROS repository. Most Isaac ROS repositories contain a single Isaac ROS package,
but some contain multiple packages. For instance, the Isaac ROS Object Detection repository contains
isaac_ros_yolov8, which both do object detection but using different models.
How can I use a package?
Each Isaac ROS package has a detailed quick start guide hosted on our documentation site under the relevant package (ex: isaac_ros_visual_slam). Additionally, many Isaac ROS packages include more advanced tutorials, such as camera-to-detection compute graph examples and integration with NVIDIA Isaac Sim.
I have native ROS 2 code, will it work with Isaac ROS packages?
Yes. Isaac ROS packages use standard ROS interfaces on input and output topics. Where appropriate, Isaac ROS packages are also designed to be drop-in replacements for the commonly-used, CPU-based ROS implementations familiar to robotics developers.
What is NITROS?
NVIDIA Isaac Transport for ROS (NITROS) is an implementation of type adaptation and negotiation that enables Isaac ROS nodes to unlock the full potential of hardware acceleration with zero-copy data transfer from node to node. Traditional ROS communication requires that all messages are serialized by the CPU at every node interchange, but NITROS allows compatible nodes to eliminate unnecessary GPU-to-CPU copies and thus achieve better performance.
A more detailed explanation of NITROS is available here.