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

How to set the dynamixel motors to multi-turn mode.

asked 2016-04-22 01:35:21 -0500

Kaz-Kom gravatar image

I'm trying to use dynamixel MX-106 in ROS, and I want to use it in multi-turn mode. I could find the way to set it to multi-turn mode in operating manual which can be found in web page of Robotis. But I can not figure out how to do it in ROS. Any help will be appreciated. Thank you.

edit retag flag offensive close merge delete

3 Answers

Sort by ยป oldest newest most voted

answered 2017-12-01 02:15:37 -0500

saurabh gravatar image

updated 2017-12-04 08:16:02 -0500

Hello Kaz-Kom, did you get the solution for this problem i.e. controlling Dynamixel motors for multi-turns.

I followed the steps as described in below link:

This is what I did : - Changed the Operating mode (Register number 11) to 4 instead of 3 (default). - Changed the angle limit from 0 to 8192

But still I am not able to set the multi-turns. Can somebody let me know what extra changes I have to do to enable multi-turns.

edit flag offensive delete link more


I solved this problem by Factory reset the motor and updating DXL_OPERATING_MODE register before updating DXL_TORQUE_ENABLE register to '1', as DXL_OPERATING_MODE is an EEPROM register and it has to be updated, before updating DXL_TORQUE_ENABLE register.

saurabh gravatar image saurabh  ( 2017-12-06 06:24:09 -0500 )edit

@sakuraba Please don't use an answer to ask a question. This isn't a forum. You can ask a new question and reference this question.

jayess gravatar image jayess  ( 2018-01-02 03:26:31 -0500 )edit

answered 2019-06-17 20:54:29 -0500

tomarRobin gravatar image

This can be done in two simple steps :

  1. Set the operating mode to extended position control mode (multi-turn). This can be done by setting the operating_Mode(11) to value 4 (considering prorocol 2.0). It supports 512 total turns (-256 to +256) however these values needs to be mapped in radians or in multiple of resolution according to the interface you are using to control the motor. for eg if you use dynamixel controller package to control the motor it takes the goal position in radians. .

  2. Now you can simply use the goal_position to give multi turn value.

A single turn takes the values from 0 to 4096 and in multiturn it can take -1,048,575 ~ 1,048,575

if you are using a gui to control dynamixel then multi-turn might not be possible because it limits the angle values but you can do it by chnaging the clock-wise and anti-clockwise angle limits or check it using the dynamixel workbench controller package.

edit flag offensive delete link more

answered 2018-02-22 00:13:45 -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-Workbench

Enjoy with it!


edit flag offensive delete link more


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 image jayess  ( 2018-02-22 00:34:28 -0500 )edit

Question Tools

1 follower


Asked: 2016-04-22 01:35:21 -0500

Seen: 2,530 times

Last updated: Feb 22 '18