Rosanswers logo

I just came across this quote:

"For use cases with multiple robots it is generally recommended to use multiple masters and forward specific tf information between the robots. There are several different methods of implementing bridges between masters. For more information please see the sig/Multimaster."

In my case, we have a small robotics lab with around 10 robots. Students pair up and each are assigned a robot. Obviously we want the different student projects not to interfere with each other. We are currently running a single roscore.

The above quote (from the tf2 documentation) implies some problems with what we are doing. I need a little help clarifying or elaborating on the above caveat as well as the "right" way to do what I am trying to do?

Originally posted by pitosalas on ROS Answers with karma: 628 on 2019-06-21

Post score: 0


1 Answer 1


Rosanswers logo

You should run a separate roscore for each robot. I usually run the roscore on the robot.

Originally posted by ahendrix with karma: 47576 on 2019-06-21

This answer was ACCEPTED on the original site

Post score: 1

Original comments

Comment by pitosalas on 2019-06-21:
Can you say why? What problems does it solve? What problems does it create? Right now I have it working apparently fine with name spacing. Thanks.

Comment by ahendrix on 2019-06-21:
Running a separate roscore for each robot doesn't require namespacing or TF prefixes.

Comment by gvdhoorn on 2019-06-22:\

Obviously we want the different student projects not to interfere with each other.

And it also automatically isolates each robot -- and connected ROS nodes -- from each other.

Nothing prevents anyone from using the namespace of a different robot and mucking things up.

Using a separate master makes this much harder (not impossible, as it's a form of security-through-obscurity, but still).

Comment by pitosalas on 2019-06-22:
Thanks @gvdhoorn. Much better than actual answer. My robots have just a raspberry pi. Would running core on them be a cpu or memory load problem do you think?

Comment by gvdhoorn on 2019-06-22:
A master does not use significant amounts of CPU, it should be fine.

Unless students start using parameters as topics -- which I have seen -- but that would obviously be a no-no in any case.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.