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

Odd QOS for Diff Drive TF Publication #745

Open
DLu opened this issue Aug 14, 2023 · 4 comments
Open

Odd QOS for Diff Drive TF Publication #745

DLu opened this issue Aug 14, 2023 · 4 comments
Labels

Comments

@DLu
Copy link

DLu commented Aug 14, 2023

Describe the bug
Is there a particular reason why the TF is published directly using a publisher rather than TF Broadcaster? Publishing it with a custom publisher / custom QOS settings does not play nicely with other systems.

To Reproduce

  1. ros2 launch gazebo_ros2_control_demos diff_drive.launch.py
  2. Attempt to visualize TF in rviz2

Expected behavior
Full transform from /odom to all other links.

Actual behavior
Full transforms not published, most frequently failing to publish odom -> base_link/chassis (See ros-controls/gazebo_ros2_control#224)

Environment (please complete the following information):

  • OS: Ubuntu 20.04
  • Version Foxy
@DLu DLu added the bug label Aug 14, 2023
@bmagyar
Copy link
Member

bmagyar commented Aug 22, 2023

I believe when this was ported, the broadcaster wasn't a thing yet.
Please feel free to submit a PR

@DLu
Copy link
Author

DLu commented Nov 7, 2023

Okay, so the real issue is that raw publisher is passed to the realtime_tools::RealtimePublisher, and I don't think there's a RealtimeTFBroadcaster. Should the QOS just get fixed, or is there something else todo with realtime?

@christophfroehlich
Copy link
Contributor

Maybe it's worth it to implement a RealtimeTFBroadcaster based on the realtime_publisher?

@bmagyar
Copy link
Member

bmagyar commented Nov 7, 2023

Afaik the broadcaster/listener are tfbuffer+publisher/subscriber. We could also just grab the publisher from inside the broadcaster class if that's a possibility in API

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

No branches or pull requests

3 participants