Multiple Machines connected to local network, not working

asked 2019-06-25 14:33:22 -0500

Peter_See gravatar image

I've tried to troubleshoot this myself all day but I am out of ideas.

I am trying to use ROS across multiple machines (Ubuntu 16.04, ROS kinetic) all connected to a wireless network run by a router (no internet). I have followed the tutorials and network setup for multiple machines. However when I try to run any nodes from machines other that the host (PC running master) they cannot find the master. Here's what I have done so far:

1) Are all my PC's connected to the network? Yes -> Can they see each other? Yup, I can ping + SSH each other entirely on this local network.

2) Did I set up the correct environment variables? Each computer has this added to the .bashsrc:

export ROS_MASTER_URI=http://tegra:11311
export ROS_IP=<IP of PC>
export ROS_HOSTNAME=<IP of PC>

3) Each PC has the same hosts file:

192.168.2.3        tegra
192.168.2.5        localScott

On tegra (which is a Jetson TX2) I run roscore, and all runs as expected. On localScott I then attempt to see the topics

rostopic list

however this just outputs nothing, but when I run it on tegra I see

/rosout
/rosout_agg

I tried troubleshooting on localScott running roswtf, this returns no errors or warnings. After a few minutes roswtf will close saying 'unable to find master'. I am out of ideas, does anyone have any clue what I could be missing?

edit retag flag offensive close merge delete

Comments

Try not using ROS_IP and ROS_HOSTNAME http://wiki.ros.org/ROS/EnvironmentVa...

martimorta gravatar image martimorta  ( 2019-06-25 15:10:12 -0500 )edit

Unfortunately that hasnt seemed to work. I've tried setting one, setting the other, both by names and by IP. Still wont connect.

Peter_See gravatar image Peter_See  ( 2019-06-27 09:37:29 -0500 )edit

just use export ROS_MASTER_URI=http://tegra:11311 and the file is .bashrc (in the post says .bashsrc)

martimorta gravatar image martimorta  ( 2019-06-27 15:09:43 -0500 )edit