Synchronization of topics ZED2i + Isaac ROS VISUAL SLAM

Hi there!

I am working on a project that requires connecting a Jetson Orin Nano 8GB (JetPack 5.1.2) to a PC (Ubuntu 22.04 + Docker) via Wi-Fi. I’m using ROS2 to read ZED ROS2 wrapper topics from the Jetson on the PC. On the Jetson, it is running Isaac ROS VSLAM and the ZED wrapper, while on the PC, it is running Isaac ROS Nvblox (due to the lack of RAM on the Jetson).

I would like to know if there is a way to synchronize the /pose topic from VSLAM with the /rgb and /depth topics from the ZED, as well as /tf_static. Otherwise, I believe there will be a time mismatch when Nvblox is running.

Thanks in advance!

Hi @jim.fabian

all topics should be synchronized; an issue can be found in the network communication between Orin and PC.
If I misunderstood, can you help me to better understand your question.

I suggest using the new Isaac ROS 3.0 that works on Orin with Jetpack 6.0. We made several improvements in all packages.

Thank you in advance,
Raffaello

Hello @Raffaello,

Thanks for your response.

If I misunderstood, can you help me to better understand your question?

I am asking this because of the approach I am taking towards 3D reconstruction. This approach involves:

  • On the Jetson Orin Nano in the drone: ZED wrapper (ZED2i) with ISAAC ROS VSLAM
  • On the PC: ISAAC ROS Nvblox

My objective is to create a landmarks map with VSLAM and a mesh with Nvblox, enabling the camera to relocalize within the scanned area.

  • Landmarks map: obtained on board with the ISAAC ROS VSLAM action /save_map
  • 3D mesh + cost map: obtained on the PC with Nvblox from a rosbag created after the drone flight

This rosbag contains the /rgb and /depth topics from ZED, and /pose from the VSLAM. Given this setup, I am concerned about the publish time of these topics from different nodes. Additionally, I would like to know if this is the correct approach. I chose this method due to the limited RAM and the superior performance of my PC, which has a 4090.

I suggest using the new Isaac ROS 3.0 that works on Orin with Jetpack 6.0. We made several improvements in all packages.

I really want haha but I understand there is no compatibility with ZED cameras yet.

@jim.fabian

Perhaps you could look into the following and setup such that your host pc act as ptp master and jetson as ptp slave.

Personally i am also curious on your setup configuration as well. What are the rostopic rates of your output. Are you running live or from rosbag?

Hello @skl1g14 thanks for your advise! I will definetely try it, but not to sure now, since I have a really limited time for this project. I was hoping to have a simpler solution.

Personally i am also curious on your setup configuration as well. What are the rostopic rates of your output. Are you running live or from rosbag?

  • The topics have a maximum of 10 hz (trying to have a better performance)
  • The rosbag is for Nvblox, which is executed after the flight in a PC. For the landmarks map from VSLAM I am doing it live and after the flight, in the drone, call the action to save it.

Quick update. The Isaac ROS 3.1 is released and restored the demo with the ZED camera

https://nvidia-isaac-ros.github.io/getting_started/hardware_setup/sensors/zed_setup.html