We are having trouble getting turtlebot_teleop node to work.
After we ssh into the turtlebot and roslaunch turtlebot_teleop keyboard_teleop.launch the program begins working, but when we press the keys, the turtlebot does not respond. It displays changes in velocity, so we know that it is registering our key presses, but the robot remains stationary.
We even borrowed another turtlebot from someone else working in the lab to make sure it wasn't our robot, but could not get it to work on his either.
Log File:
[rospy.client][INFO] 2012-03-21 11:15:15,572: init_node, name[/turtlebot_teleop_keyboard], pid[9624]
[xmlrpc][INFO] 2012-03-21 11:15:15,573: XML-RPC server binding to 0.0.0.0
[xmlrpc][INFO] 2012-03-21 11:15:15,575: Started XML-RPC server [http://192.168.1.101:42373/]
[rospy.init][INFO] 2012-03-21 11:15:15,575: ROS Slave URI: [http://192.168.1.101:42373/]
[rospy.impl.masterslave][INFO] 2012-03-21 11:15:15,576: _ready: http://192.168.1.101:42373/
[rospy.registration][INFO] 2012-03-21 11:15:15,580: Registering with master node http://192.168.1.101:11311
[xmlrpc][INFO] 2012-03-21 11:15:15,580: xml rpc node: starting XML-RPC server
[rospy.registration][INFO] 2012-03-21 11:15:15,581: Registering publisher topic [/cmd_vel] type [geometry_msgs/Twist] with master
[rospy.init][INFO] 2012-03-21 11:15:15,677: registered with master
[rospy.rosout][INFO] 2012-03-21 11:15:15,808: initializing /rosout core topic
[rospy.rosout][INFO] 2012-03-21 11:15:15,814: connected to core topic /rosout
[rospy.simtime][INFO] 2012-03-21 11:15:15,821: /use_sim_time is not set, will not subscribe to simulated time [/clock] topic
[rospy.core][INFO] 2012-03-21 11:15:55,983: signal_shutdown [atexit]
[rospy.impl.masterslave][INFO] 2012-03-21 11:15:55,995: atexit
When I echo /cmd_vel it displays linear and angular coordinates, so the information is definitely being published, but when I look at the rxgraph of everything, the /turtlebot_teleop_keyboard is only linked to /rosout.
Shouldn't it also be communicating with something else in order to send its messages to the robot?
Karthik,
I will try this out later today and let you know how it goes. Thank you again for your help!
March 26 Update
I tested all the network connections and everything is fine, but turtlesim is not installed on the laptop, so I could not test that.
So I believe my problem stems from the nodes not correctly publishing or subscribing. In my rxgraph, the turtlebot_teleop_keyboard node is publishing a cmd_vel topic but the turtlebot_node is not subscribing to it. When I click on the turtlebot_node it says "Subscriptions: none". When I do rosnode info turtlebot_node it says
Subscriptions:
* /turtlebot_node/cmd_vel [unknown type]
so it looks like there is conflicting info. I am unsure what to do to fix this.
March 28
So I found this post which might explain some of the problem: here
but I followed the proposed solutions and it still does not work.
I downloaded Brown university's teleop package - teleop_twist_keyboard and it almost mimics the teleop_keyboard one, but with the same problem - it publishes cmd_vel while the turtlebot_node subscribes to /turtlebot_node/cmd_vel. I even went into the python code and changed the name of the published topic to "/turtlebot_node/cmd_vel" and it still does not work.
April 16 - PROBLEM FIXED
Sorry for the late response, but we managed to fix this a few weeks ago by doing the following:
roscd turtlebot_bringup/upstart
sudo ./install.bash
For some reason both diamondback and electric were installed and this fixed the issue of it trying to use old stuff.
The default topic for the cmd_vel changed as you discovered. It looks like you might be running code of different versions of the release on your different machines. You can fix it by using topic remapping until you update one or both machines.
Hi, If you are able to view the pointclouds in rviz, then you might have just overlooked something.
Check rxgraph if the nodes are connected by correct topics.
Try to echo the topic /cmd_vel to see if the keystrokes are giving the msgs.
Check the launch file if the topics are correct.
You should be able to diagnose something with all these checks. Hope it helps
Thanks, Karthik
Following are the checks that you can do
Check the .bashrc of the both workstation and turtlebot_lappy if they are concurrent with the http://www.ros.org/wiki/Robots/TurtleBot/Network%20Setup
You may check the network setup by running the turtlesim on turtlebot_lappy and teleop it from the workstation. This should work fine if network is perfectly setup. I explain the steps as follows
a)In your turtlebot_lappy
roscore
and
rosrun turtlesim turtlesim_node
b)From your workstation
rosrun turtlesim turtle_teleop_key
Check if the turtle is moving in turtlebot_lappy when u press the arrow keys in workstation.
Once this is working. Then i guess you may test the turtlebot with similar procedure.
The rxgraph should look like below for the turtlebot teleoperated from workstation

Hope it helps
Karthik
I have had this issue myself. For some reason, the turtlebot_teleop only likes to work when the keyboard is connected to the actual turtlebot. I would try using a program called Synergy to share your keyboard with the turtlebot. Once you share it, you should open a terminal on the turtlebot laptop and run the teleop. Use Synergy to share the keyboard at your workstation with the robot. Hope it works!
answered 2012-05-26 01:37:34 -0500
This post is a wiki. Anyone with karma >75 is welcome to improve it.
April 16 - PROBLEM FIXED
Sorry for the late response, but we managed to fix this a few weeks ago by doing the following:
roscd turtlebot_bringup/upstart sudo ./install.bash For some reason both diamondback and electric were installed and this fixed the issue of it trying to use old stuff.
Asked: 2012-03-19 14:17:41 -0500
Seen: 678 times
Last updated: May 26 '12
How to make keyboard_teleop in TurtleBot more "fluid"
Running teleop in Safety Mode on Turtlebot
Can I make the new rosjava project that send the message through existing node?
Lots of delay when trying to teleop with a Turtlebot
Turtlebot teleop running, no response
Ros topics over different computer
teleoperating problem [closed]
Teleop based control of a custom vehicle
Cannot get geometry_msgs::Twist from subscription to cmdVelReceived [closed]
ROS Answers is licensed under Creative Commons Attribution 3.0 Content on this site is licensed under a Creative Commons Attribution Share Alike 3.0 license.
Please provide more information. We cannot help you unless you provide information on how to reproduce your error.
tfoote ( 2012-03-19 14:38:24 -0500 )editOne thing to check is that the TurtleBot dashboard is working and that you are communicating with the Create. http://www.ros.org/wiki/turtlebot_dashboard.
I Heart Robotics ( 2012-03-19 14:48:18 -0500 )editThere is no real "error", the robot just does not respond to keystrokes. The output on the screen shows that the program is responding to the keystrokes, but the robot itself does not move. It led us to believe it was a problem with our robot, but we tried another robot it would not move either.
uncc_student ( 2012-03-19 14:48:29 -0500 )editThe dashboard is working perfectly (everything is green), and we can even visualize things with the kinect in rviz. We were hoping to have some fun with gmapping, but without teleop we have no way to really drive it around. Thank you again for any suggestions.
uncc_student ( 2012-03-19 14:50:47 -0500 )editThe /turtlebot_teleop_keyboard is connected to /cmd_vel The details are Type: geometry_msgs/Twist
Publishers: * /turtlebot_teleop_keyboard (http://192.168.1.101:59990/)
Subscribers: None
uncc_student ( 2012-03-21 09:32:45 -0500 )editType: geometry_msgs/Twist
Publishers: * /turtlebot_teleop_keyboard (http://192.168.1.101:59990/)
Subscribers: None
uncc_student ( 2012-03-21 09:32:46 -0500 )editOk i have edited my answer witha diagnosing method. Let me know if you find anything
karthik ( 2012-03-21 16:39:52 -0500 )editif you run 'rostopic info /cmd_vel' you should see turtlebot_node listed as a subscriber. I would try running minimal.launch manually to see if there is a problem there.
I Heart Robotics ( 2012-03-24 16:47:32 -0500 )edit