ros-drivers / ros2_ouster_drivers

ROS2 Drivers for the Ouster OS-0, OS-1, and OS-2 Lidars
https://ouster.com/
Apache License 2.0
134 stars 79 forks source link

Timestamp issues stops Nav2 from working #110

Closed MrOCW closed 1 year ago

MrOCW commented 1 year ago

Hi, After starting Nav2, this error will start flooding at random and the whole system will fail.

nav2_1                     | [component_container_isolated-1] [INFO] [1662462978.301765469] [global_costmap.global_costmap]: Message Filter dropping message: frame 'os1_lidar' at time 1662462977.921 for reason 'the timestamp on the message is earlier than all the data in the transform cache'

It usually occurs after giving initialpose to my 3D NDT Localization package and I've tried 2 different packages (Autoware's & pcl_localization_ros2 package), but both had this issue so it likely isnt the localization package issue. On Autoware's localization package, it was constantly printing this:

Validation error. The reference time is %lf[sec], but the target time is %lf[sec]. The "
      "difference is %lf[sec] (the tolerance is %lf[sec]).

with the target time fixed at a constant time while reference time is the ROS time. the pointcloud's timestamp matches the ROS time as well when echoing.

On certain occasions when it actually worked at the start, the message filter error appears midway during navigation without any form of pattern or trend.

MrOCW commented 1 year ago

After further testing, it seems that my robot_localization stopped publishing odometry when this happens, this might be a robot_localization issue so will be closing this