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

Revision history [back]

We could actually fix the problem. Having a look at the Player-implementation, we found the following:

// * workaround for stupid hardware bug, cause unknown, but this works
// *
with minimal detriment to control // ** avoids all values with 1b in highest or 3'rd highest order byte

// 0x1b is part of the packet terminating string // which is most likely what causes the bug

// * if 2'nd order byte is 1b, round to nearest 1c, or 1a
if((urvel&0xff00)==0x1b00){ // *
if lowest order byte is>127 round up, otherwise round down urvel=(urvel&0xffff0000)|((urvel&0xff)>127?0x1c00:0x1aff); }

So we also included this into the rflex_driver.cc of the rflex ROS-package and this seemed to fix the strange behaviour with the delays and the stops between the movement. Apparently i don´t have enough Karma to upload files yet, so i´ll send you a patch via mail so you can test it.

Cheers

Michi