Master-slave feature for XM430-W350-R

I’d like to ask a question about this motor.

We are interested in using pairs of motors by using dual-mode for master/slave methods like these motors. So my questions are:

  1. can we use this dual-mode for the master/slave feature for XM430-W350-R motors?
  2. If not, do you think if any problems if we want to use the pairs of XM430-W350-R motors manually? I think if we don’t have the feature, maybe we observe the different torque between motors in pair so the generated torque by a pair of motors would be not stable? In other words, would you have any recommendations to use pairs of motors like master/slave if this feature is not implemented for XM430-W350-R motors?

I look forward to hearing from you!

Best regards,

Hi there @legged_robot_love, thank you for your post and welcome to our Community Page! I should be able to help with your question:

  1. For the DYNAMIXEL MX-series, only the largest model in that product series (MX-106) technically offers a master / slave mode that can be used when it’s connected directly to another servo using a “sync cable” inserted into the units’ “dual joint” connector. Only models with the “dual joint” connector for a sync cable can be used in an exact “master / slave” mode- the user can choose how DYNAMIXELs connected with a sync cable behave by changing the “Drive Mode” firmware address.

  2. Similarly for DYNAMIXEL X-series, only the larger models currently include a “dual joint” port that can be used with a sync cable. These models include:

  • XM540-W270
  • XM540-W150
  • XH540-W270
  • XH540-W150
  • XH540-V270
  • XH540-V150
  1. Unfortunately the X_430 sized models in DYNAMIXEL X-series do not currently include the “dual joint” port as a feature. However, you may be able to use another feature to accomplish a similar goal.

-XM430-W350-R and all models of X-series include a firmware setting known as “secondary ID”. This setting lets users set a second ID number for a DYNAMIXEL, which can be shared among groups of DYNAMIXEL units. When a command is sent to an ID number matching the secondary ID of a servo, all the servos with that secondary ID number will perform the command.

-XM430-W350-R also includes a setting for Drive Mode, but with slightly different features compared to models with “dual joint” connectors. In Drive Mode, you can set the DYNAMIXEL to “reverse mode” which causes it to reverse any received command.

If a user were to send a Secondary ID command to two servos, with one in Reverse mode, they will perform the opposite movements ideal for a paired joint. Using a combination of Secondary ID and Reverse Mode, it may be possible to create your desired dual-servo joints using the smaller XM430-W350-R models.

Let me know if this helps or whether you have any questions!

Hello @Andrew

Thanks for your kind response! This reply is so informative!

I’d like to ask the question. So, I’m not sure the reason why we need to set up a “secondary ID”. Can we just realize a sort of master-slave feature using “reverse mode”? For example, say we have a dual motor where the axis is connected. Say the motor ids are 1 and 2 and the motor 2 uses reverse mode. Then, as long as we command the “same” desired joint angles for those motors (motor id 1 and 2), then we can realize master-slave motion?

Maybe my question becomes what the motivation of using secondary ID to realize the “the opposite movements ideal for a paired joint”. Could you explain this part a little bit more?

Thank you so much for your kind support and I look forward to hearing from you!
Best regards,

Hi @legged_robot_love, thanks for the question.

Like you described, it’s also in theory a valid solution to set one of the paired motors into Reverse mode, and send two individual commands for the same angle (to ID#1 &2 for example).

The main benefit of using the secondary ID feature would be to reduce the overall required number of commands- instead of sending two (one each for ID 1 & 2) you could just send one command to a group under “secondary ID” 3.

Let me know if this helps to clarify!