Could not determine the type for the passed topic
I have two systems that I'm struggling to get communicating reliably with ROS2 via ethernet. I've tried both Dashing and Foxy with the same results and would like to know what next steps I can take to troubleshoot this.
ros2 topic pub /str1 std_msgs/msg/String 'data: pie'
Publishing #### ...
ros2 topic echo /str1
Could not determine the type for the passed topic
- providing the type on the echo never actually prints our any messages
- echo from the same machine works
- the topic shows up on the ros2 topic list on both machines
- ros2 multicast receive / send functions as expected
- i have tried all four RMW with the same results.
- I have tried foxy latest, but prefer to continue using dashing.
- Ethernet between the two hosts, private network.
Update 5/14
This commit has helpd significantly, but the issues persist. I have a better test procedure now:
- I'm building foxy from source on both systems, with no custom nodes.
- On both hosts I monitor topic info:
watch -n 0.1 ros2 topic info -v /str1
- On one host I pub via cli:
ros2 topic pub /str1 std_msgs/msg/String 'data: 111111'
- On one host I sub via cli:
ros2 topic echo /str1
Prior to the commit above the remote nodes would disappear from the topic info list after ~4 minutes, but now it seems to be somewhat robust. In the past week I have only had one instance of the problem. Passing the --no-daemon flag makes the original fault reoccur.
So, while helpful, I think there's still an underlying issue with the DDS discovery process for remote hosts. I'm looking for some help on where to look and how to troubleshoot this further.
Here's a screen cap of the test. The top three and bottom three terminals are on different hosts. You can see the remote ros nodes disappear at about 4:30. I then restarted the publisher and you can see some interesting 'flashing' of the remote nodes, followed by another complete dropout at the end. Hope this helps trigger some thoughts on what could be wrong. The behavior is 100% reproducible here.
Thanks for your guidance!