[Assembly instructions] Take care of the Dynamixel motors configuration and assembly!

When you want to assemble a Poppy, the first thing to do is to ensure yourself you assembled correctly the horn on the Dynamixel motors. This is both the first step and maybe the more critical. An error in the configuration or assembly here is really boring to change once Poppy assembled.

1. Fix the horn on the motor

###Warning! This step is critical!
Dynamixel motors are sold unassembled, you have to add manually the horn HN07-N101 (for MX-28) and HN05-N101 (for MX-64).
The critical point is to put it correctly for the zero position. To do that, you have to correctly align the awl mark on the Dynamixel shaft and the snick on the horn:

When assembled, the horn is really difficult to remove and you will probably damage the motor, so check twice or thrice !

Also, it is pretty hard to push the horn on the shaft, you will probably have to use the screw (M2.5x8mm) and tighten it to correctly assemble the two elements.

2. Motor configuration

When you take out the motor out of its box, its internal id is 1. So before plug it on the communication bus you have to configure it. Otherwise you will have problem such as experimented in this topic:

You have 3 parameters to tune:

  1. the id must match our convention
  2. the baudrate have to be set to 1 000 000bps instead of 57142bps
  3. the return delay time have to be set to 0 ms instead of 0.5 ms

To tune these parameters you can use the Dynamixel Wizard (windows) or Herborist (Unix/Windows).
RoboPlus v1.1.1.0

If you are using USB2AX dongles under windows, you will need to install it manually using the USB2AX.inf (2 KB) file.
For more info about the installation procedure, please consult the QuickStart guide.

You are ready to begin the assembly of Poppy !

At this step, you should have 25 motors (21 MX-28, 2 MX-64 and 2 AX-12) correctly assembled and parameterized :smiley:

(in this picture there is more AX-12 because it was from a previous Poppy version)

first question of the poppy week end : it is quite difficult to fix (or to insert) the horn into the dynamixel. Is it normal or re we doing wrong way??

You are not doing the wrong way.

Normally it’s a bit hard but we received some Dynamixel motors few weeks ago and it was incredibly hard to insert the horn. I was hopping it was a problem with our specific motors but It seems it is a problem with the last Dynamixel production…

You will manage to insert the horn but it will require the use of the screw and a lot of applied torque.

Maybe try by adding some WD-40 on it ?

@robotzone3 So did you manage to insert all horn on MX motors ?
I have warned Generation Robot about this problem, they will contact Robotis for more explanation.

yes, we have. But we had to force it and i fear some of them should be damages… :confused:
It was quite painful and time consuming to insert them…

Yep it’s really weird for 250€ motor …

The answer from Robotis to Generation Robot:

Sorry to hear that many of your clients are facing the issues on the assembly of horn.
I have checked with our team and there is actually no problem with the product itself.

We have also tested in our lab and managed to assemble them although it was a bit tight.
You can also apply WD-40 which would make it easier to assemble.

No more info … It seems that we need to add WD-40 to the BOM list

it’s amazing because we tested with WD-40 and it was also hard to assemble…

Hi !

The link for the id convention doesn’t work. You can find it on Motor naming convention and configuration

Otherwise I have install Herborist. But the Scan button doesn’t work. I read it on my terminal : OSError: [Errno 13] Permission non accordée: '/dev/ttyACM0’
I don’t know how to solve this lack of permission.

Thanks, I updated the link in the first post.

For herborist, it is a weird… @Pierre @Steve any idea ?

It looks like a permission problem…
I think you are under Linux, so try sudo herborist
If it works, it was a permission problem.
Have a look at the group owner of the tty:ls -l /dev/ttyACM*
Look at the group (probably dialout). Type id to see your groups, if you are not in the tty group add it with sudo useradd -G thegroup yourlogin

I’m under Linux, Ubuntu 14.04LTS. I use python 2.7.
It isn’t a permission problem : I have try with sudo. I also have checked that I’m in the dialout group with id.

I launch herborist with terminal. Then I click on “Scan” button. In spite of the baudrates that I check off, I always read on my terminal this error : > pypot.dynamixel.io.DxlCommunicationError: could not parse received data after sending DxlPingPacket(id=0)

What should I deduce ?

Ok so I also have a problem with the usb2ax and the last version of pyserial from pip.
Can you try to first scan at 9600 bauds (you don’t have to wait, you can cancel immediatly) and then scan at 1M bauds.
The idea here is just to open the serial port à 9600 before to open it at 1M.

First : I have any result on 9615 or 1M bauds.
Second : “Abort” button doesn’t work. Nothing appends or appears in terminal.

I have tried with differents USB ports.

Ok so let’s start from the begining.
What is your setup?
What is plugged to what?
What happens exactly?

Hum it is normal, Dynamixel MX communicates at 57142 bauds by default:

Check also this post for a complete instruction:

1 Like

@Steve @Matthieu
I have forgotten to feed the servomotor :-S Now it’s work :smile:

1 Like

I just started assembling our new Poppy and we had issues configurating the dynamixel motors. More specifically herborist did not detect our motors.

Our configuration is as follows:
We use a USB2Dynamixel (configured on TTL) between the motors and our computers.
We use a macbook air with OS X Yosemite (10.10.2).

The scanning does not detect the motors at all. It outputs an empty list at 57142 (baudrate). We used ttl and asked to scan at 57142.

When we configure the USB2Dynamixel on RS485, and use RS485 connectors, the scan process just freezes.

We tested on several motors and types of motors (MX and AX), and on 2 computers.
Would you have any idea where the problem might come from?

Hello Mai,

First, be sure you use the very last version of the documentation available here:

The repo is here:

For your problem, I think you must install the FTDI driver available here:

thanks for the quick answer. Indeed it did not install the ftdi driver. We’ll try that tomorrow and keep you posted.

1 Like