ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question
0

RLException: Machine [ubuntu2] already added and does not match duplicate entry

asked 2020-06-12 03:24:00 -0500

magnus gravatar image

updated 2023-06-18 09:56:53 -0500

lucasw gravatar image

I have had a working multi-machine environment for a while but today I get this error that I cannot debug myself.

RLException: Machine [ubuntu2] already added and does not match duplicate entry

I have set the following environment variables:

Machine 1 ubuntu1:

export ROS_MASTER_URI=http://10.0.0.2:11311
export ROS_IP=10.0.0.1
export ROS_HOSTNAME=10.0.0.1

Machine 2 ubuntu2:

export ROS_MASTER_URI=http://localhost:11311
export ROS_IP=10.0.0.2
export ROS_HOSTNAME=10.0.0.2

In my launch file, I declare machine like:

<machine name="ubuntu2" address="10.0.0.2" env-loader="/home/ubuntu/catkin_ws/src/env.sh" user="ubuntu"/>

Machine 2 runs the roscore master node. The namespaces resolves in ssh (ssh ubuntu2). Machine1 runs the launch files. I am not sure what do to fix this.

edit retag flag offensive close merge delete

Comments

I'm not sure whether it's the cause, but in any case: do not set both ROS_HOSTNAME and ROS_IP (and don't set ROS_HOSTNAME to an IP). Use one or the other, in your case you should probably only set ROS_IP.

gvdhoorn gravatar image gvdhoorn  ( 2020-06-12 07:30:52 -0500 )edit

1 Answer

Sort by ยป oldest newest most voted
0

answered 2020-06-12 09:40:34 -0500

magnus gravatar image

Solution is to check that all startup scripts that call the same <machine> have the same configuration (in my case address).

One small launch file in the launch sequence had an old address, which is why I had duplicate entries which did not match.

edit flag offensive delete link more

Question Tools

1 follower

Stats

Asked: 2020-06-12 03:24:00 -0500

Seen: 185 times

Last updated: Jun 12 '20