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
ROS2 static transforms partially propagating through the web bridge to studio #238
Comments
Internal tracking ticket: FG-4047 |
Note that You can fix this by increasing the qos depth:
You can do the same for foxglove bridge:
I believe that this solves your issue? |
Doing
Edit: This depends on the used RMW:
|
I'm just conforming that I am using RTI ConnextDDS, so depth |
@achim-k I can confirm that your proposed fix |
Yes, we have to be smarter here. Will transfer this issue to https://github.com/foxglove/ros-foxglove-bridge and submit a PR that fixes it. |
…epth Some RMWs do not retrieve history information of the publisher endpoint in which case the history depth is 0. We use a lower limit of 1 here, so that the history depth is at least equal to the number of publishers. This covers the case where there are multiple transient_local publishers with a depth of 1 (e.g. multiple tf_static transform broadcasters). See also #238 and #208
…tory as unknown (#239) ### Public-Facing Changes Assume publisher qos depth of 1 if the middleware reports the qos history as unknown ### Description Some RMWs do not report history information of a publisher endpoint in which case the history depth is reported as 0. We internally use this depth to calculate an appropriate depth for the subscription, which uses the `KeepLast(depth)` history policy. In case a publisher's history depth is reported as 0, we assume a depth of 1 so that the final history depth is at least equal to the number of publishers. This covers the case where there are multiple transient_local publishers with a depth of 1 (e.g. multiple tf_static transform broadcasters). Before this PR, a user would have to manually specify a `min_qos_depth` of N when having N tf_static broadcasters. This PR also increases the max qos depth default value, 10 seemed very low. I'm not sure anymore why we added an upper limit in the first place. Additionally, a warning is logged when the upper limit is reached. Fixes #238 See also #208
Description
Steps To Reproduce
Take a look at this simple launch file that sets up a basic static transform hierarchy:
https://gist.github.com/asymingt/1d833ac9857ecba36eb2fa523137a7ba
Launch like this from a ROS2 rolling distribution:
Confirm you see the correct frames with:
Expected Behavior
I would expect to see a transform hierarchy that looks like this, in both the
Transforms
section of the3D
panel, as well as in the 3D visualization itself:However, only a subset of the frames are actually received and drawn. So, for example sometimes you see this:
And sometimes you see this:
Example screenshot of the problematic
Transforms
panel:Example screenshot of the problematic
3D
window:The text was updated successfully, but these errors were encountered: