0
$\begingroup$

Rosanswers logo

Hello,

After successfully pairing the ps3-controller with bluetooth ($ rosrun ps3joy sixpair) and running ps3joy.py ($ rosrun ps3joy ps3joy.py) it shows "Connection activated" as expected.

But when I start teleop_joy.launch ($ roslaunch p2os_launch teleop_joy.launch) it shows:

ROS_MASTER_URI=http://localhost:11311

core service [/rosout] found
process[p2os_teleop-1]: started with pid [23530]
process[pioneer_joy_controller-2]: started with pid [23532]
[ERROR] [1317809297.619312697]: Client [/p2os_teleop] wants topic /joy to have datatype/md5sum
[joy/Joy/e3ef016fcdf22397038b36036c66f7c8], but our version has [sensor_msgs/Joy/5a9ea5f83505693b71e785041e67a8bb].
Dropping connection.

I have used the ps3-controller with bluetooth before on a different pc and never had such a problem. I've tried using an USB-bluetooth dongle instead of the built-in bluetooth but it didn't change anything.

Has anyone an idea what might be wrong? Any help is appreciated.

Greets, Andrew


Originally posted by anbaldinger on ROS Answers with karma: 11 on 2011-10-04

Post score: 0

$\endgroup$

3 Answers 3

0
$\begingroup$

Rosanswers logo

The problem is not on a hardware level. The joystick node is publishing on the topic /joy with message type sensor_msgs/Joy, whereas p2os_teleop is subscribing to /joy with message type joy/Joy.

Have you considered using the joy_node from package joy?


Originally posted by David Lu with karma: 10932 on 2011-10-12

This answer was ACCEPTED on the original site

Post score: 2

$\endgroup$
0
$\begingroup$

Rosanswers logo

I just figured this out with joystick_remapper. The problem is joy/Joy msg type is deprecated and you should use sensor_msgs/Joy instead. However, (in my case) joystick_remapper still subscribes to the old joy/Joy type. I made the change in joystick_remapper.py line 43:

from sensor_msgs.msg import Joy 

Then in manifest.xml in the joystick_remapper package, remove

<depend package="joy"/>

and add

<depend package="sensor_msgs"/> 

Do rosmake the package. Then you're good to run the joy_remap node.


Originally posted by xylo with karma: 184 on 2012-04-07

This answer was NOT ACCEPTED on the original site

Post score: 1

$\endgroup$
0
$\begingroup$

Rosanswers logo

This is how you get p2os_teleop to work in ROS Electric:

  • In file p2os/p2os_teleop/manifest.xml:

  • Line 12: <depend package="joy"/><depend package="sensor_msgs"/>

  • In file p2os/p2os_teleop/src/p2os_teleop.cc:

  • Line 54: #include "joy/Joy.h"#include "sensor_msgs/Joy.h"

  • Line 145: void joy_cb(const joy::Joy::ConstPtr& joy_msg)void joy_cb(const sensor_msgs::Joy::ConstPtr& joy_msg)

  • To be able to recompile p2os_teleop, remove the file ROS_NO_BUILD from the folder p2os/p2os_teleop

  • Once you have done that, run rosmake as sudo:

  • sudo -s

  • rosmake p2os_teleop


Originally posted by georgebrindeiro with karma: 1264 on 2012-06-08

This answer was NOT ACCEPTED on the original site

Post score: 1


Original comments

Comment by georgebrindeiro on 2012-06-08:
Note that if you are using the launch file in p2os_launch (teleop_joy.launch), you need to edit that too

$\endgroup$

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.