How do I connect a dashboard on a remote PC to a working turtlebot?
I have two Ubuntu 14.04 machines with indentically-installed ros/turtlebot packages. One is connected to my bot, and when I launch the dashboard from it, I get all the expected messages and controls. The other has ROS_MASTER_URI=http://$TURTLEBOT_IP:11311
and ROS_IP=$PC_IP
. The dashboard on the remote PC fires up with no errors, but gets no messages. If I try to send commands (e.g. put the bot in passive mode) it will eventually timeout:
Failed to put the turtlebot in passive mode: service call failed with error: unable to connect to service: timed out
I verified with tcpdump on the bot side that it’s getting packets from the remote PC.
I’m sure I’ve just missed something, but I’ve gone over the network setup and ENV a million times and feel dumb. Where else should I look to find out why the dashboard will connect to the turtlebot, but do nothing with it?
No messages show up in the console on the turtlebot when I connect or send commands from the dashboard.
Another reason I'm certain this isn't a connectivity problem is that if I change ROS_MASTER_URI
to a non-existant URI, the dashboard fails with the expected unable to contact ROS master at [URI]
message.
More information as requested:
2 hosts: Turtlebot & remote PC, both on same network. TB is a netbook, PC is a VMware guest on an iMac running Mac OS X Yosemite. Both systems are Ubuntu 14.04 with a single NIC/IP.
Turtlebot IP is 192.168.127.106
Remote PC IP is 192.168.127.109
ENV for Turtlebot:
ROS_MASTER_URI=http://192.168.127.106:11311
ROS_IP=192.168.127.106
Env for remote PC:
ROS_MASTER_URI=http://192.168.127.106:11311
ROS_IP=192.168.127.109
When I run roslaunch turtlebot_dashboard turtlebot_dashboard
on the turtlebot PC, the dashboard starts and I can see messages in the qt window that opens. The buttons work.
When I run the same command on the remote PC, the window opens but all of the buttons/indicators are greyed out.
With the same ENV, if I run roslaunch turtlebot_teleop keyboard_teleop.launch --screen
on the remote PC, I can indeed teleoperate the bot from the keyboard on that remote PC.
Asked by FarrisGoldstein on 2015-10-15 20:04:31 UTC
Comments
Can you tell us a bit more about the network setup? For your working system, the turtlebots and the non-working system?
Also: can you do a
rostopic echo /whatever/topic
and receive msgs? Doesrosnode ping ..
work in all directions?Asked by gvdhoorn on 2015-10-16 02:59:08 UTC
I added more details. I will try the echo/ping commands this evening when I'm near the systems again.
Asked by FarrisGoldstein on 2015-10-16 09:51:33 UTC
I've deleted my previous answer, as it was based on your original question (which provided incorrect info). Have you tried
rosnode ping ..
already?Asked by gvdhoorn on 2015-10-18 05:54:55 UTC