ROS2: Running subscriber_lambda and publisher_lambda on different machines (in the same network)
Hello,
I have two machines connected via ethernet cable, configured to be in the same network and they can ping each other successfully. What I would like to know is what would be the necessary steps to run build/examples_rclcpp_minimal_subscriber/subscriber_lambda
on one machine and build/examples_rclcpp_minimal_publisher/publisher_lambda
on another? I have tried it but the subscriber never gets anything.
Note that I cannot use ros2 run demo_nodes_cpp
on one of the machines because it has not been ported yet so that example is not a choice.
Thank you in advance.
@nickcage: I've changed the title of your question slightly so as to better reflect what you are asking.
what do you mean exactly by this? What hasn't been "ported yet"?
The thing is one of the machines is an ARM of Texas Instruments SoC, the other one is Intel PC. We have got a ros2 workspace from our clients that we are to use on ARM. Actually the talker and listener demos work on ARM when run locally (from two terminals within the same system) but also output a number of 'Failed to load entry point' messages before they start. They work properly afterwards, though. So maybe they can be used but I have not been able to make them work over network.
I'm confused: are you trying to run ARM binaries on anamd64
PC or the other way around?Edit: O wait, you have an ARM install made available by your client, and have installed ROS2 on an
amd64
machine yourself. You're now trying to make those two "see" each other.Correct?
Yes, that is mostly correct. What I mean by that is that we have also been provided a workspace for the PC but I think it was installed by standard procedure. Both distros are bouncy (on ARM and on PC).
I would at least replace the PC side of this with a proper install, instead of a "reused workspace". Debugging issues with this sw is hard enough without a lot of things being unknown variables.
Hi, thank you for sticking around. Will do that and come back to you with an update.
I can't seem to get ROS2 bouncy from the repos, I always end up having crystal after executing 'printenv ROS_DISTRO'. I followed this tutorial https://index.ros.org/doc/ros2/Instal... and only changed the --rosdistro parameter from crystal to bouncy in "Install dependencies using rosdep" section. However, I still got crystal.