[Resolved] Communication between Kinetic and Indigo only working one-way
I am currently trying to set a Master-Slave using my laptop (Ubuntu 16.04 w/ ROS Kinetic) as master and an UDOO Quad (Ubuntu 14.04.5 LTS (GNU/Linux 3.14.56-udooqdl-02044-gddaad11 armv7l) w/ ROS Indigo ARM) as a client and a router (TP-LINK TL-WR841N V7) to set the network for both devices.
I've already done all the steps given here, where I set the ROS_MASTER_URI
to the IP on my PC. So far I can see topics via rostopic list
either on my PC or via ssh on the UDOO.
The problem I have is that when I try a simple publisher node like rostopic pub \testing std_msgs\String hello
, I can only get the message using rostopic echo \testing
when I do it on the machine I am publishing from (even through ssh), I get nothing if I do it on the other machine.
I've read other questions like #q9915 and #q76279. I've tried to disable the firewall, set the ROS_HOSTNAME
, but neither of those solutions worked for me.
My intuition says to me that it should not be a problem with the messages between the machines since I am only sending a String which is one of the basic std_msgs.
Could it be a networking problem? Could it be a compatibility problem since I am running Kinetic on one device and Indigo on the other?
Any help will be appreciated
This sounds like a networking issue. I did a talk about network troubleshooting at ROSCon a few years back: https://vimeo.com/67806888 .
If I have time I'll look into that dnsmasq setup for my lab, because it sounds like I will save us some hassle. I've already added on both machines the IP of the other on
\etc\hosts
. And the weird thing is that before I went home, I managed to listen from my PC to something published in the UDOO.I think I'll try the
rosnode info
and see what debugging I can do from there.