[ROS2] Two machines are in same network but can't communicate in ROS2 [closed]

asked 2019-08-16 17:25:13 -0600

ahtsan gravatar image

They can ping each other, but nodes in both machines cannot talk to each other. Topics being published are not seen by another machine too.

edit retag flag offensive reopen merge delete

Closed for the following reason question is not relevant or outdated by ahtsan
close date 2020-07-27 18:10:15.132535

Comments

Did you set the same ROS_DOMAIN_ID for both machines?

surfertas gravatar image surfertas  ( 2019-08-18 08:06:32 -0600 )edit

A lot of people have gotten similar weirdness with fastRTPS as their dds implementation. If you are using that, I recommend switching to opensplice and seeing if your issue continues to reproduce.

johnconn gravatar image johnconn  ( 2019-08-18 10:43:28 -0600 )edit

Is it possible UDP multicast is disabled in the network? How can I check that? If so, is there a way to do it differently? I saw something like unicast and specifying ops in a XML file.

ahtsan gravatar image ahtsan  ( 2019-08-18 10:45:30 -0600 )edit

I modify opensplice settings here: /opt/ros/dashing/share/opensplice_cmake_module/config/ros_ospl.xml

but I don't know how to configure other impls

the folks here mentioned problems with multicast: https://blog.roverrobotics.com/ros-2-...

johnconn gravatar image johnconn  ( 2019-08-18 10:58:32 -0600 )edit

I think it's not the issue of ROS_DOMAIN_ID since it works under the ethernet but right after switching to the wifi it doesn't.

ahtsan gravatar image ahtsan  ( 2019-08-18 11:01:32 -0600 )edit

That sounds a lot like your traffic is being blocked on the wifi or it's still trying to route through the ethernet that was just unplugged.

tfoote gravatar image tfoote  ( 2019-08-20 16:52:23 -0600 )edit