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

Revision history [back]

click to hide/show revision 1
initial version

I have been battling the DDS / Fast DDS for two months now.
The fast solution is to make sure that both machines are on the same LAN.
(I would double check the .1 address, that is usually a router address.)
(If you are using virtual box or VM make sure you are using NAT Network).

Try using "ros2 multicast receive" one one, and "ros2 multicast send" on the other. (If the receiving gets the message it should work.)

Remove ALL variables that deal with Fast RTPS. Make sure you set a consistent ROS_DOMAIN_ID on both machines. For me, I had to use a non-zero ROS_DOMAIN_ID, but there may have been another problem. If you are modifying your bashrc, save it and restart the terminal. ros2 daemon stop ros2 daemon start You should be good to go, there can be a 2-3 second lag when a node first spins up.

Example of my .bashrc export ROS_DOMAIN_ID=44 source /opt/ros/iron/setup.bash ... Note if you have any fast DDSsetting it will disable the normal DDS, this was my problem. In order to use fast dds you must have the server declared, and if you want introspection you have to specify the xml file to configure fast DDS. The biggest problem with fast DDS is other terminals must have it configured for local nodes to interact with the ROS system. I would recommend the normal DDS if you are starting out.

Hope that helps, Cheers, BM