Running ROS across multiple machines
When one runs ROS across multiple machines, do the work spaces need to have the same packages, or does a package run on machine (A) need to be on machine A and visa versa?
Asked by miguel on 2015-06-29 12:13:50 UTC
Answers
You need the package/node on the machine you want to run it, but not on the machine executing the launchfile except it is also the machine you want to run the package/node on.
Asked by cyborg-x1 on 2015-06-29 16:39:52 UTC
Comments
There is at least one important limitation related to message definitions. If node_a
running on machine (A) publishes a topic with message definition message_a
, and then node_b
subscribes to this topic on machine (B), then the client library behind node_b
needs the definition of message_a
Asked by jarvisschultz on 2015-06-29 21:09:06 UTC
In C++, this is generally easy to detect as an issue because your code won't compile without the necessary headers in your workspace. In Python however, missing message definitions would result in a runtime error. Note that the message definitions must also be the same between machines.
Asked by jarvisschultz on 2015-06-29 21:11:07 UTC
This is one primary issue with running different ROS versions across multiple machines. If the versions don't have the same message definitions, you will end up with checksum mismatches.
Asked by jarvisschultz on 2015-06-29 21:12:07 UTC
@jarvisschultz jep that's correct. That is in fact a limitation. If you want to "communicate" with that node, you need to have the messages (same version). Didn't thought of that one, but you are right. I was just assuming the same versions and standard messages.
Asked by cyborg-x1 on 2015-06-30 01:21:47 UTC
Thank you!
Asked by miguel on 2015-06-30 01:51:15 UTC
Could also accept the answer (round icon with the hook inside beside the question) and close the question (Under your question (X Close) )? Thanks.
Asked by cyborg-x1 on 2015-06-30 05:14:59 UTC
I dont have the option to accept. Possible because im new to this.
Asked by miguel on 2015-06-30 05:40:22 UTC
Comments
No. No limitations.
Asked by yigit on 2015-06-29 15:49:31 UTC