Ask Your Question
0

Error while connecting two ROS machine to the same MASTER (one is Raspbian jessie, one is Linux in VBox)

asked 2018-01-28 15:13:03 -0500

Mohammedism gravatar image

updated 2018-01-28 17:51:06 -0500

HI everyone, I have been trying to learn how to connect two ROS machines to the same master. I am using Linux in Virtual machine (VBox) , and raspbian jessie, and i want the master to run on the linux. what i did was both ROS are kinetic

when i run the linux, i do these steps:

1- hostname -I

i think the first one for the Virtual machine and the second id for the main OS with is MAC OS

 10.0.2.15  10.0.3.1

2-export ROS_IP=10.0.2.15

3-roscore

then i move to the raspbian jessie:

1- hostname -I

 10.0.0.8   2601:1c:8601 ......etc <<very long address with letters and numbers

2-export ROS_MASTER_URI=http://10.0.2.15:11311/

3-export ROS_IP=10.0.0.8

each machine can ping itself, but when i ping the ROS on jessie from linux to seems to work and give me something like

 64 bytes from 10.0.0.8: icmp_seq=0 ttl=63 time=39.868 ms
 64 bytes from 10.0.0.8: icmp_seq=1 ttl=63 time=9.677 ms
 64 bytes from 10.0.0.8: icmp_seq=2 ttl=63 time=38.659 ms

but when i ping the linux from jessie it does not work, it fails.

so does anyone know how to solve that?

*edit 1: when i try to run roscore on jessie it runs with master 10.0.0.8 even though i assigned export

 ROS_MASTER_URI=http://10.0.2.15:11311/

so it looks that it did not get it !?

*edit2: after running netcat i found out that the linux machine can see the raspbian but the raspbian can not see the linux

edit retag flag offensive close merge delete

Comments

1

it does not work, it fails

What does this mean? Also, being able to ping isn't sufficient. Check out http://wiki.ros.org/ROS/NetworkSetup#...

jayess gravatar image jayess  ( 2018-01-28 15:24:00 -0500 )edit

it means that it says something like: 3 packet transmitted , 0 received , 100% packet loss, time 1024 ms

Mohammedism gravatar image Mohammedism  ( 2018-01-28 15:31:23 -0500 )edit

Are you setting the environment variables and running everything from the same terminal? Once you open a new terminal you have to set the environment variables all over again.

jayess gravatar image jayess  ( 2018-01-28 17:20:21 -0500 )edit

yes, i added them to the ~/.bashrc and i also set them manually in every terminal.

as i said some machine A sees B bug B does not see A or at least this is what i understood

is it possible the problem is that the linux in running in virtual machine?

Mohammedism gravatar image Mohammedism  ( 2018-01-28 17:34:02 -0500 )edit

Yes, that does change things. Definitely update and retag your question indicating that you're using a virtual machine.

jayess gravatar image jayess  ( 2018-01-28 17:39:18 -0500 )edit

oh thanks for the notes, i will update it

Mohammedism gravatar image Mohammedism  ( 2018-01-28 17:48:45 -0500 )edit

1 Answer

Sort by ยป oldest newest most voted
1

answered 2018-01-29 07:51:29 -0500

rdelgadov gravatar image

updated 2018-01-29 07:53:40 -0500

It's look like a problem with vbox network configuration, the vbox create a subnet inside the computer and to access from outside you need to configure the vbox. Try following this tutorial.

edit flag offensive delete link more

Comments

thanks man, i figured out what was the problem. I had my network attached to NAT which will use the main machine ip address, with an extension, which wont work. so i had to attach my virtual machine to bridget wifi adaptor, which will give the VM separate ip

Mohammedism gravatar image Mohammedism  ( 2018-01-29 16:50:52 -0500 )edit

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Question Tools

2 followers

Stats

Asked: 2018-01-28 15:13:03 -0500

Seen: 95 times

Last updated: Jan 29 '18