Robotics StackExchange | Archived questions

ROS over three Machines via Ethernet

Hello all,

Can somebody help me with this problem?

I am trying to connect three machines running ROS. The master device is an Intel NUC. It is connected via Ethernet with a laptop and via Ethernet-USB2.0 adapter with an UDOO mainboard. I followed the Multiple Machines tutorial and I was able to achieve a connection to each slave device separately. Nevertheless, I was not able to build up the ROS network over three machines simultaneously, i.e. I cannot see the published topics of my UDOO on my laptop and vice versa.

ROSMASTERURI is set to http://scubo-nuc:11311 on each device and the ROS_IP are set as follows: NUC (10.0.0.1), Laptop (10.0.0.2) and UDOO (10.0.0.3). I wrote a script with the export commands and run them on each machine.

Asked by jdiep on 2016-04-05 08:30:30 UTC

Comments

How are the ROS_IP's and ROS_MASTER_URI's set on the three devices?

Asked by NEngelhard on 2016-04-05 10:06:20 UTC

This is probably a networking issue, as @NEngelhard is implying.

Asked by gvdhoorn on 2016-04-05 10:13:17 UTC

What happens if you do a "rostopic list" one each of the devices? [You can also edit your question with the new information so that it does not get lost in the comments]

Asked by NEngelhard on 2016-04-05 10:40:21 UTC

Try to do a ping scubo-nuc on both of your 'slaves'. If you have no working DNS (ie the slaves can resolve the name to its IP), 3-way communication isn't going to work.

Asked by gvdhoorn on 2016-04-05 10:44:43 UTC

@NEngelhard: Thank you for the tip. rostopic list only works on one slave device at once. The problem lies in the connection. I checked it with ping scubo-nuc and get following result 64 bytes from 10.0.0.2: icmp_seq=.. ttl=64 time=....

Asked by jdiep on 2016-04-05 10:58:36 UTC

@NEngelhard: But at the moment I connect the second slave device to the master this first connection gets lost ... Destination Host Unreachable

Asked by jdiep on 2016-04-05 10:59:16 UTC

@jdiep: that sounds like an IP conflict. Make sure the IPs of all involved hosts are actually unique.

Asked by gvdhoorn on 2016-04-05 13:11:02 UTC

Do I have to set two different IP adresses for the master device, since it is connected to two slaves? Until now I set the IPs following: Laptop (10.0.0.2) connect with NUC (10.0.0.1), NUC (10.0.0.1) connects with UDOO (10.0.0.3)

Asked by jdiep on 2016-04-06 13:39:23 UTC

Do I have to set two different IP adresses for the master device

No, you just have to make sure all your hosts have unique addresses if they are on the same network.

Asked by gvdhoorn on 2016-04-06 13:57:05 UTC

Answers