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

Support tf_static 2to1 #424

Open
wants to merge 2 commits into
base: foxy
Choose a base branch
from
Open

Support tf_static 2to1 #424

wants to merge 2 commits into from

Conversation

pawelirh
Copy link

Changes

This PR allows to use of dynamic_bridge with /tf_static topic in the 2to1 direction of bridging.
Due to an invalid qos policy, the ROS2 subscriber created by the bridge was not able to receive the tf_static message. Furthermore, the ROS publisher wasn't latching the message.

  • For tf_static bridging in 2to1 direction special rules are applied
  • ROS2 subscriber special qos (reliable, keep all, transient local)
  • ROS publisher latching enabled

quarkytale and others added 2 commits October 25, 2023 08:51
Signed-off-by: pawelirh <[email protected]>
@weidinger-c
Copy link

weidinger-c commented Dec 13, 2023

Is this already on the main branch for humble? I still cannot latch tf_static messages in ROS 1 Noetic. Both for dynamic and parameter bridge.

@pawelirh
Copy link
Author

The master branch (same as foxy) has this rule applied in the ROS->ROS2 direction. This PR implements the corresponding change but allows to port of the tf_static message in the reverse direction ROS2->ROS too.

Feel free to use my fork until changes here are not merged. -> https://github.com/hsrn24/ros1_bridge/tree/foxy
IMPORTANT: Changes are applied only in dynamic_bridge on a foxy branch

@weidinger-c
Copy link

weidinger-c commented Dec 20, 2023

Thanks for your reply, but I am only using the parameter_bridge, because I only need a small subset of a large amount of topics bridged. So I guess I need to wait for the fix on the parameter bridge.

@pawelirh
Copy link
Author

I don't think it's gonna happen shortly.

However, the parameter_bridge allows for configuring the QoS. So theoretically you can achieve demanded behavior by doing so (I didn't try running parameter_bridge).

Did you check out this link?
https://github.com/ros2/ros1_bridge?tab=readme-ov-file#parametrizing-quality-of-service

@weidinger-c
Copy link

weidinger-c commented Dec 20, 2023

Yes I am using the special QoS settings for tf_static from the ros_bridge readme, but still have no success for ROS2 -> ROS1, because it seems that the bridged ROS1 static tfs are not latching publishers.

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

Successfully merging this pull request may close these issues.

4 participants