What is the source of `/imu/data` orientation when `pos_tracking_enabled: false`?

Hi Stereolabs team,

I’m using a ZED2i with ROS1, and I only need the following topics for my visual-inertial SLAM pipeline (e.g., VINS-Mono):

  • /zed2i/zed_node/left_raw/image_raw_color
  • /zed2i/zed_node/imu/data

In my common.yaml, I have explicitly set:

  • depth_mode: 'NONE'
  • pos_tracking_enabled: false
  • imu_fusion: false (inside the pos_tracking block)
  • mapping_enabled: false
  • od_enabled: false

My core question is:

In this configuration, how is the orientation field in /imu/data computed?

  • Is it the result of an internal AHRS using gyroscope + accelerometer + magnetometer only?
  • Or does it involve any visual information fusion (e.g., from image features or SLAM), even if positional tracking is disabled?

Also, does pos_tracking_enabled or imu_fusion affect how /imu/data orientation is computed?

Thanks for your clarification!

Hi @Simon1140889141
Welcome to the Stereolabs community

You must also disable depth_stabilizationzed-ros-wrapper/zed_wrapper/params/common.yaml at master · stereolabs/zed-ros-wrapper · GitHub

This is the case, but magnetometer information is not fused.

It does not affect it.

Thank you very much for the clarification!

Just to confirm one more thing:

  1. Is it correct that the magnetometer data is never fused into either /zed2i/zed_node/imu/data or /zed2i/zed_node/imu/data_raw (i.e., orientation is computed from only accelerometer + gyroscope)?
    If that’s the case, in what situations (if any) does the magnetometer data actually get fused within the ZED SDK or ROS wrapper?

  2. Also, is pos_tracking_enabled simply a ROS-side feature provided by the ZED ROS wrapper to enable the SDK’s visual-inertial odometry (VIO)?
    And enabling it does not change how /imu/data or /imu/data_raw are computed or published, correct?

  3. One more question — I’m using the official 5-meter “USB 3.0 Type-C Dual Screw Locking Cable” from the Stereolabs store.

    Could this kind of long extension cable introduce additional or independent jitter, specifically in ROS when recording with rosbag?
    In other words, could it cause frame timestamp irregularities that are not coming from the camera itself, but rather from USB transmission delays or instability?
    Just want to be sure that any timing jitter I observe is not caused by underpowered or unstable USB transmission.

    Also, regarding the Micro USB power input on the cable, how much voltage and current (V/A) is recommended to ensure a stable power supply for proper operation over 5 meters?
    Is there a minimum wattage requirement?

Thanks again — your answers are really helping me understand how to cleanly separate raw sensor data from SDK-level fused outputs!

That’s what I said. The magnetometer data is never fused into Positional Tracking information. You should perform this after a good magnetometer calibration has been performed.

This is correct.

Yes. We recommend ingesting an additional 5V voltage using the microusb ports of the cable. 5W are enough.

Thanks a lot for the clear explanations!

This helps me better understand how to properly use the ZED2i for my V-SLAM pipeline. Really appreciate your support!