ROS Resources: Documentation | Support | Discussion Forum | Index | Service Status | ros @ Robotics Stack Exchange
Ask Your Question
0

How to use android ROS teleop to control custom robot?

asked 2015-03-19 15:35:19 -0500

PT gravatar image

updated 2015-03-20 08:22:11 -0500

It seems that ROS teleop ( https://play.google.com/store/apps/de... ) is designed to control turtlebot only. I wonder whether anyone knows how to have it control a custom robot (as only Twist message is needed)?

The developer, OSRF, has several other apps that are useful to control other robot as well. It will be great if anyone knows how to use them on custom robots. Thanks

[Edit] Btw, the reason I asked is that when I run the app on android, the following error occurs. It seems that it is looking for turtlebot specific service /turtlebot/start_app. So I'm wondering how to get around it. Appreciated.

03-20 09:11:42.048: E/AndroidRuntime(20661): Process: com.github.rosjava.android_apps.teleop, PID: 20661
03-20 09:11:42.048: E/AndroidRuntime(20661): org.ros.exception.RosRuntimeException: org.ros.exception.ServiceNotFoundException: No such service /turtlebot/start_app of type rocon_app_manager_msgs/StartApp
03-20 09:11:42.048: E/AndroidRuntime(20661):    at com.github.rosjava.android_apps.application_management.AppManager.startApp(AppManager.java:138)
03-20 09:11:42.048: E/AndroidRuntime(20661):    at com.github.rosjava.android_apps.application_management.AppManager.onStart(AppManager.java:202)
03-20 09:11:42.048: E/AndroidRuntime(20661):    at org.ros.internal.node.DefaultNode$5.run(DefaultNode.java:506)
03-20 09:11:42.048: E/AndroidRuntime(20661):    at org.ros.internal.node.DefaultNode$5.run(DefaultNode.java:503)
03-20 09:11:42.048: E/AndroidRuntime(20661):    at org.ros.concurrent.EventDispatcher.loop(EventDispatcher.java:43)
03-20 09:11:42.048: E/AndroidRuntime(20661):    at org.ros.concurrent.CancellableLoop.run(CancellableLoop.java:56)
03-20 09:11:42.048: E/AndroidRuntime(20661): Caused by: org.ros.exception.ServiceNotFoundException: No such service /turtlebot/start_app of type rocon_app_manager_msgs/StartApp
03-20 09:11:42.048: E/AndroidRuntime(20661):    at org.ros.internal.node.DefaultNode.newServiceClient(DefaultNode.java:356)
03-20 09:11:42.048: E/AndroidRuntime(20661):    at org.ros.internal.node.DefaultNode.newServiceClient(DefaultNode.java:372)
03-20 09:11:42.048: E/AndroidRuntime(20661):    at com.github.rosjava.android_apps.application_management.AppManager.startApp(AppManager.java:134)
03-20 09:11:42.048: E/ActivityManager(643): App crashed! Process: com.github.rosjava.android_apps.teleop
edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted
1

answered 2015-03-19 16:30:35 -0500

tfoote gravatar image

The documented interface for android_teleop, using a Twist on the topic 'cmd_vel' is the standard control command for all ROS platforms. It's the default output for move_base and all telop tools provide that same output such as joystick and keyboard.

edit flag offensive delete link more

Comments

@PT: So, just to clarify: any robot (driver) that can accept Twist messages should be compatible with the teleop app, not just the turtlebot.

gvdhoorn gravatar image gvdhoorn  ( 2015-03-20 06:58:34 -0500 )edit

@gvdhoorn: Thanks for your explanation. That's what I thought too. However, when I ran the app, some error occurred (see edited post). So, I'm wondering how to get around it.

PT gravatar image PT  ( 2015-03-20 08:24:46 -0500 )edit

Hm, that seems like a rather strong dependency. Perhaps you could report this as an issue on the android_apps tracker?

gvdhoorn gravatar image gvdhoorn  ( 2015-03-20 08:43:13 -0500 )edit

Just did so. Thanks

PT gravatar image PT  ( 2015-03-20 09:07:54 -0500 )edit

Question Tools

1 follower

Stats

Asked: 2015-03-19 15:35:19 -0500

Seen: 2,218 times

Last updated: Mar 20 '15