ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question
0

[ROS2] Use a different version of Fast-RTPS

asked 2020-05-12 05:18:23 -0500

elias gravatar image

Currently the Fast-RTPS version used for eloquent is v1.9.3 (ros-eloquent-fastrtps 1.9.3-2bionic.20200218.174738), but this version has a bug while running inside a docker container (see https://github.com/eProsima/Fast-RTPS...). With the new version v1.10.0 I do not have the same issue.

I'm trying to run ROS2 nodes inside docker containers and subscribe/publish to other nodes in other docker containers (not necessarily on the same bridge network). With the current version of Fast-RTPS the subscription works once (or sometimes a few times) but fails in later tries. Therefor we need this new version 1.10. Should I ask to update the version in ROS2 (https://github.com/ros2-gbp/fastrtps-...) or how can I build and use a different version?

Reproduce the problem with:

docker run -it --rm osrf/ros:eloquent-desktop ros2 run demo_nodes_cpp talker
docker run -it --rm osrf/ros:eloquent-desktop ros2 run demo_nodes_cpp listener

Restarting the talker container (once, but in some cases it works the first restart) makes the listener not receive the messages.

  • Fast-RTPS version: v1.9.3-2
  • ROS2 version: Eloquent
  • OS: Ubuntu 18.04 LTS
edit retag flag offensive close merge delete

Comments

As you can see in ros2/ros2#888, 1.10 has already been integrated. Foxy seems to be using 2.x even. Eloquent however uses 1.9.3 (from here).

There just hasn't been a release of ROS 2 which uses it.

You'll probably have to build ROS2 from source (or at least the parts which directly touch FastRTPS) if you want/need to use it right now.

gvdhoorn gravatar image gvdhoorn  ( 2020-05-12 05:49:29 -0500 )edit

I tried compiling the Fast-RTPS packages from source but this introduced some compile errors which are fixed in the master of ROS2 but we are not ready yet to move to Foxy. So thanks for the comment and we'll wait for the official Foxy release.

elias gravatar image elias  ( 2020-05-13 02:45:40 -0500 )edit

1 Answer

Sort by ยป oldest newest most voted
2

answered 2020-05-12 13:46:45 -0500

Dirk Thomas gravatar image

Therefor we need this new version 1.10. Should I ask to update the version in ROS2 (https://github.com/ros2-gbp/fastrtps-...) or how can I build and use a different version?

Eloquent is not going to change the minor (or major) version of FastRTPS. That would imply breaking changes as well as complete retesting which isn't viable for an already releases distro.

I would suggest to report the problem in the Fast-RTPS repo and request the patch to be backported to the 1.9.x branch.

Your other alternative is to switch to Foxy (which will be released in roughly a month) which uses Fast-RTPS 2.0 assuming that won't have the described bug either.

edit flag offensive delete link more

Comments

Thank you to elaborate. I tried updating the version locally but I haven't had success yet. As ROS2 Foxy will be released soon and it's a LTS release I'll wait for that. I had created a bug report first (https://github.com/eProsima/Fast-RTPS...) and is now closed as it was not an issue in release 1.10.x.

elias gravatar image elias  ( 2020-05-13 02:33:49 -0500 )edit

Question Tools

1 follower

Stats

Asked: 2020-05-12 05:18:23 -0500

Seen: 940 times

Last updated: May 12 '20