Skip to content

Recorded ROS2 bag for Image topics from ZED2i have timestamp always on 0 #969

@nobinov

Description

@nobinov

Preliminary Checks

  • This issue is not a duplicate. Before opening a new issue, please search existing issues.
  • This issue is not a question, feature request, or anything other than a bug report directly related to this project.

Description

I ran a ZED2i on a Jetson Orin Nano, and tried to record some data from it as a ROS2 bags. However, all image-related topics that I recorded always have 0 timestamp on all messages :

  • /zed/zed_node/depth/camera_info
  • /zed/zed_node/depth/depth_info
  • /zed/zed_node/left/camera_info
  • /zed/zed_node/depth/depth_registered
  • /zed/zed_node/left/image_rect_color

I tried to record /zed/zed_node/pose, but that topic have non-0 timestamp on all messages.

Steps to Reproduce

  1. Start a ZED node using ros2 launch zed_wrapper zed_camera.launch.py
  2. Wait for a while for ZED to finish initialization
  3. Start a recording using ros2 bag record -o "$BAG_PATH" -s mcap --qos-profile-overrides-path "$QOS_OVERRIDE_YAML" "${BAG_TOPICS[@]}"
    .

Expected Result

header:
  stamp:
    sec: (SHOULD BE NON-ZERO)
    nanosec: (SHOULD BE NON-ZERO)
  frame_id: zed_left_camera_optical_frame
height: 360
width: 640
encoding: bgra8
...

Actual Result

header:
  stamp:
    sec: 0
    nanosec: 0
  frame_id: zed_left_camera_optical_frame
height: 360
width: 640
encoding: bgra8
...

ZED Camera model

ZED2i

Environment

Device : NVIDIA Jetson Orin Nano 
RAM : 8 GB
OS : JetPack 6.2.1+b38
L4T version 36.4.7
ROS2 Version : Humble
ZED SDK Version : 5.0.3
CUDA version : V12.6.68

Anything else?

I have tried these possible solution on bag recording side to fix it, but so far still can't make the timestamp appear :

  • Use --qos-profile-overrides-path for zed topics and set reliability: best_effort and durability: volatile for all zed image topics
  • Try storage type on both mcap and sqlite3
  • Add delay beetween camera start and bag recording
  • Use --max-cache-size 0
  • Record the bag directly inside Jetson
  • Laptop connected to Jetson via LAN, and both Laptop and Jetson is on same ROS2 Domain, and record the bag on the Laptop

I have tested bag recording using another camera (Intel Realsense D455), and recorded topics from there have timestamps (not 0)

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions