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

Different ROS versions on multiple machines

asked 2013-09-03 20:01:32 -0600

Johannes gravatar image

Hello, I do have a robot that is running ROS Fuerte and I can't upgrade due to compatibility reasons with other systems. I do have a second ROS installation on a PC for visualisation and interface purposes running Fuerte too. The robot is running the roscore. Now I was thinking about if it is possible to ubgrade my PC to ROS Groovy and use the multi machine feature with different ROS versions. Will this work and if yes, there any cutbacks?

Best Wishes

Johannes Mayr

edit retag flag offensive close merge delete

Comments

1

@tfoote's answer to [this question](http://answers.ros.org/question/37403/ros-backwards-compatibility-in-distributed-system/) is also relevant.

thebyohazard gravatar image thebyohazard  ( 2013-09-04 10:49:18 -0600 )edit

2 Answers

Sort by ยป oldest newest most voted
4

answered 2013-09-03 22:07:33 -0600

dornhege gravatar image

The answer would be yes, it could, but it's not made to be compatible.

AFAIK the low level communication hasn't changed. So, if your systems are on separate machines, there shouldn't be any issues. However, this requires that all messages that you are sending and receiving are exactly the same. This is something that very likely has changed somewhere. So, unless you know that you will always have a limited tested communication, you can make it work. If you set that up long-term, you might find out that the message that you need urgently at some point was changed.

edit flag offensive delete link more

Comments

I think you should emphasize the [,,] all messages [..] are exactly the same, and always have a limited tested communication. In general this does not work, and can lead to very subtle bugs.

gvdhoorn gravatar image gvdhoorn  ( 2013-09-03 23:38:51 -0600 )edit
2

These bugs are not that subtle, system will explicitly tell you that checksums are different and will issue errors immediately. I am using Groovy with Fuerte for a long time without much trouble. So it is really case by case.

Boris gravatar image Boris  ( 2013-09-04 00:20:36 -0600 )edit

@Boris: yes, the MD5 will be different. However, semantics also matter, as well as the resulting actions of the nodes involved. Those are not captured by a matching MD5.

gvdhoorn gravatar image gvdhoorn  ( 2013-09-04 00:49:54 -0600 )edit

I wouldn't assume that the semantics of the same message changes. If you do, this might also be a problem within the same distribution.

dornhege gravatar image dornhege  ( 2013-09-04 01:39:28 -0600 )edit

OK, thank you for the reply, I will test if it works for my setup and see if I will get errors for the msg I'm using.

Johannes gravatar image Johannes  ( 2013-09-04 05:59:02 -0600 )edit

I tested this now and using rviz on the groovy pc to visualize everything from the fuerte pc works quite fine. The only problem I face is that I can't use "set 2D Nav Goal" from the groovy rviz to send a /goal to my fuerte navigator. Any suggestions?

Johannes gravatar image Johannes  ( 2013-09-10 00:03:37 -0600 )edit

That usually just sends out the message. Maybe the topic changed?

dornhege gravatar image dornhege  ( 2013-09-10 00:06:18 -0600 )edit

I just noticed that none of the published topics from groovy can be passed to fuerte. I just called rostopic pub on an arbitrary topic and did a rostopic echo in fuerte and received nothing

Johannes gravatar image Johannes  ( 2013-09-10 00:09:07 -0600 )edit
0

answered 2013-09-03 20:46:45 -0600

gvdhoorn gravatar image

AFAIK: no (it won't work, by design). See also ROS Fuerte node communicating with ROS Electric node for an earlier discussion on this (but for Electric & Fuerte).

edit flag offensive delete link more

Question Tools

Stats

Asked: 2013-09-03 20:01:32 -0600

Seen: 3,085 times

Last updated: Sep 03 '13