Ask Your Question
0

dynamixel_controller manager wrong package prefix

asked 2018-02-01 07:12:57 -0500

Cataglyphis gravatar image

Hello, I'm working with the dynamixel MX-64AT servos. Using a Ubuntu 16.04 and ROS kinetic version 1.12.12 Up until now I had no problem to get them up and running. Then I switched computers and now I get an error message whenever I try to start the controller_manager. Weirdly this problem now also occurs on the computer that up until now I had never had any troubles with. Basically the error can be reproduced when following this tutorial : http://wiki.ros.org/dynamixel_control... I do have the baud rate and id set to the right values and also checked that the USB port has the correct read and write permissions. Also I read that it could be related to faulty cables, but I also changed all of them several times, so that shouldn't be the problem.

Whenever I try to execute roslaunch my_dynamixel_tutorial controller_manager.launch I get these error messages saying something about a invalid response and wrong prefix error.

    1517479067.955998897 INFO [dynamixel_serial_proxy.py:158(__find_motors) [topics: /motor_states/pan_tilt_port, /rosout, /diagnostics] pan_tilt_port: Pinging motor IDs 1 through 25...
1517479070.048603057 ERROR [dynamixel_serial_proxy.py:187(__find_motors) [topics: /motor_states/pan_tilt_port, /rosout, /diagnostics] Exception thrown while getting attributes for motor 10 - Invalid response received from motor 10. Wrong packet prefix []
1517479070.175116062 ERROR [dynamixel_serial_proxy.py:187(__find_motors) [topics: /motor_states/pan_tilt_port, /rosout, /diagnostics] Exception thrown while getting attributes for motor 10 - Invalid response received from motor 10. Wrong packet prefix ['\xff']
1517479070.177623033 ERROR [dynamixel_serial_proxy.py:187(__find_motors) [topics: /motor_states/pan_tilt_port, /rosout, /diagnostics] Exception thrown while getting attributes for motor 10 - Invalid response received from motor 10. Wrong packet prefix ['\xff', '\n']
1517479070.194986104 ERROR [dynamixel_serial_proxy.py:187(__find_motors) [topics: /motor_states/pan_tilt_port, /rosout, /diagnostics] Exception thrown while getting attributes for motor 10 - Invalid response received from motor 10. Wrong packet prefix ['\xc0']
1517479070.321788072 ERROR [dynamixel_serial_proxy.py:187(__find_motors) [topics: /motor_states/pan_tilt_port, /rosout, /diagnostics] Exception thrown while getting attributes for motor 10 - Invalid response received from motor 10. Wrong packet prefix []
1517479070.340946912 ERROR [dynamixel_serial_proxy.py:187(__find_motors) [topics: /motor_states/pan_tilt_port, /rosout, /diagnostics] Exception thrown while getting attributes for motor 15 - Invalid response received from motor 15. Wrong packet prefix ['0']
1517479070.357222080 ERROR [dynamixel_serial_proxy.py:187(__find_motors) [topics: /motor_states/pan_tilt_port, /rosout, /diagnostics] Exception thrown while getting attributes for motor 15 - unsupported operand type(s) for <<: 'float' and 'int'
1517479070.504827976 INFO [dynamixel_serial_proxy.py:211(__find_motors) [topics: /motor_states/pan_tilt_port, /rosout, /diagnostics] pan_tilt_port: Found 1 motors - 1 MX-64 [15], initialization complete.

Weirdly enough, sometimes it will still recognize both motors and be able to work with them. To me it sounds a bit as if something with the communication is going wrong, but to be honest I can't figure out, where it's going wrong. I would appreciate any help.

Best Regards, B.

edit retag flag offensive close merge delete

1 Answer

Sort by ยป oldest newest most voted
-1

answered 2018-02-22 00:02:49 -0500

Darby Lim gravatar image

Hello :)

ROBOTIS provides official opensource repository as ROBOTIS-GIT?

In this repository, you can find Dynamixel-Workbench to control all series of DYNAMIXELS. Because it is official package for DYNAMIXEL, you can get a proper solution when you faced some problems.

This is WIKI page for DYNAMIXEL and introduced packages.

WIKI for DYNAMIXEL

WIKI for Dynamixel-Workbench

Enjoy with it!

Darby

edit flag offensive delete link more

Comments

I believe that this should be a comment instead of an answer as this doesn't answer the question. Instead, it just points to a wiki and GitHub repo.

jayess gravatar imagejayess ( 2018-02-22 00:33:47 -0500 )edit

Hello, my problem is, that it did work well for a while and I have some work already done in the old framework. If possible I would like to avoid redoing all that work to be compatible to the new package.

Cataglyphis gravatar imageCataglyphis ( 2018-02-22 08:47:35 -0500 )edit

In particular with the old package it was very easy to control 3 servos. I tried the workbench, but in the tutorials it only describes working with 2 servos and I couldn't find a way to generalize this to 3 or more motors without rewriting big chunks of the code, following a trail of libraries etc.

Cataglyphis gravatar imageCataglyphis ( 2018-02-22 08:49:35 -0500 )edit

The new version of Dynamixel supports 3 or more motors connect in tutorial. You can download in github (not apt-get install)

Darby Lim gravatar imageDarby Lim ( 2018-03-19 18:35:21 -0500 )edit

Thanks for the tip, I will look into it

Cataglyphis gravatar imageCataglyphis ( 2018-03-26 10:52:03 -0500 )edit

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Question Tools

2 followers

Stats

Asked: 2018-02-01 07:12:57 -0500

Seen: 241 times

Last updated: Feb 22 '18