Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

PointCloud rate issue (CustomFormat) #39

Open
Eragon123 opened this issue Mar 6, 2024 · 4 comments
Open

PointCloud rate issue (CustomFormat) #39

Eragon123 opened this issue Mar 6, 2024 · 4 comments

Comments

@Eragon123
Copy link

There seems to be an issue with the Custom PointCloud Format. When I select xfer_format = 1 then for a publish_freq of 50Hz I only get around 27-30Hz and for a publish_freq of 10Hz an actual lidar pointcloud rate on the /livox/lidar topic of 6.5Hz.
The imu publish frequency always seems to match the expected frequency of

What does work:

  1. However when I use the ROS1 driver in a different Docker Container on the same system I have no issue with the frame rate and the CPU usage is only around 9% where for the ROS2 driver with CustomPointCloud format and inadequate frequency the CPU usage is around 30%.
  2. When selecting the PointCloud2 format via xfer_format = 0 the published pointcloud frequency matches the expected lidar publish frequency (e.g. 50Hz) and the CPU usage is also ~5% similar to the ROS1 driver.

Possible problem source(s):

  • When commenting out the FillPointsToCustomMsg function, the rate for the Custom PointCloud reaches the expected 50Hz or 10Hz respectively. The CPU usage in this scenario also goes down to only ~6%.
    I have already tried speeding up the FillPointsToCustomMsg function in various ways without any effect on the publish frequency. My understanding is, that with 50packets per published PointCloud and 96 points per packet the loop inside the FillPointsToCustomMsg function does 12Million steps per second. However the same function in the ROS1 Driver works just fine!

Notes:

  • Frequencies are observed using ros2 topic hz
  • The used lidar is a Livox Avia.
  • The observed IMU publish frequency always is 200Hz
  • To build under ROS2 humble the changes from this PR were necessary: PR.

Thanks for any help!

@curiousityy
Copy link

@Eragon123, I am facing the same issue with my AVIA. I am also facing an issue with the IMU. My IMU rate is only at 60Hz. May I know what changes you did to get the expected IMU rate?

@BloodLemonS
Copy link

BloodLemonS commented Sep 12, 2024

@Eragon123, I am facing the same issue with my AVIA. I am also facing an issue with the IMU. My IMU rate is only at 60Hz. May I know what changes you did to get the expected IMU rate?

Have you been solve it? I have the same question with you

1 similar comment
@rmt000901
Copy link

@Eragon123, I am facing the same issue with my AVIA. I am also facing an issue with the IMU. My IMU rate is only at 60Hz. May I know what changes you did to get the expected IMU rate?

Have you been solve it? I have the same question with you

@WMAAA
Copy link

WMAAA commented Jan 13, 2025

@Eragon123, I am facing the same issue with my AVIA. I am also facing an issue with the IMU. My IMU rate is only at 60Hz. May I know what changes you did to get the expected IMU rate?

I solved the imu problem, but the lidar custom message still cannot reach 10hz, but strangely, another computer can reach it
I don't know how to solve it

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants