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

Connect nodes from different ROS distributions

asked 2013-10-02 04:38:08 -0600

Rasmus gravatar image

updated 2013-10-02 06:06:52 -0600

felix k gravatar image


I would like to use the newest version of MoveIt! (0.5.x) which is only available in Hydro to control my robot. The ros-wrapper for my robot driver is in groovy, so my question is:

Is it possible to make the communication work between nodes from different distributions?

Thank you

edit retag flag offensive close merge delete

3 Answers

Sort by ยป oldest newest most voted

answered 2013-10-02 05:01:03 -0600

There are cases where it may work, but in general, no. Message definitions can change slightly between distributions which makes it so nodes cannot communicate.

edit flag offensive delete link more


Thanks. But f the messages are the same it should be ok?

Rasmus gravatar image Rasmus  ( 2013-10-02 05:05:11 -0600 )edit

Yes, but I would strongly caution you against doing so. Only way to find out for sure is to try.

Dan Lazewatsky gravatar image Dan Lazewatsky  ( 2013-10-02 05:16:36 -0600 )edit

Ok, i'll give the old version moveit a try..

Rasmus gravatar image Rasmus  ( 2013-10-02 05:17:52 -0600 )edit

An important information is that while being sometimes not possible, it is safe to do so. I.e. if the messages changed the communication will fail (and your rxconsole may see a lot of error) *but* the nodes won't crash.

Thomas gravatar image Thomas  ( 2013-10-02 16:26:35 -0600 )edit

answered 2013-10-02 20:44:19 -0600

fergs gravatar image

This particular instance is not going to work easily -- because an effort[] field was added to trajectory_mgs/JointTrajectory in an attempt to better unify grasping and manipulation. This means that the trajectories output from MoveIt in Hydro will not work properly in Groovy as the MD5 checksum has indeed changed. Also, much of the Pick/Place aspects of moveit_msgs has been updated to remove a dependency on manipulation_msgs, so those messages will have completed changed since Groovy as well.

edit flag offensive delete link more

answered 2013-10-02 06:06:17 -0600

felix k gravatar image

From my experience:

In general crossing ROS distros is possible, as the framework itself should be patched identical across all active ROS distros. If all dependencies of the packages in question work (either as debs or compiled from source), changed message definitions might be the barricade (you will see warnings on message receive), as that can only be solved by taking over one message definition, updating every node.

Concerning MoveIt!'s alpha status its quite possible way more changed than what you would want to patch. Comparing the repository branches, maybe including big dependencies, might help before trying it out.

edit flag offensive delete link more

Question Tools

1 follower


Asked: 2013-10-02 04:38:08 -0600

Seen: 815 times

Last updated: Oct 02 '13