Dynamixel container Detection

I tried to use this container but i’ve got some problems
I want to use Ergo-JR motors Dynamixel XL-320

First try GPIO + Dynamixel container
Jupyter answer

Then i try to plug my 6 motors poppy and the power supply 7.5V from ErgoJR Kit
Jupiter is bugging …

  • plug daisy chain ergoJR on Dynamixel container
  • plug power 7.5V on AC power plug container
  • plug usb container on computer

and no answer …

What is the problem ?

Hi Luc

Your first try should display an output of GPIO and Dynamixel, not only GPIO, unless you didn’t plug any motor to the container, in which case it’s normal not to see the container after robot.containers.

You can try again your first architecture (GPIO + Dynamixel) with one motor plugged to the container, in order to check that the Dynamixel container is well recognized.

Be sure to respect the specific order of plugging-in the elements.
You should plug the system in this order:

  • Dynamixel motor to Dynamixel container
  • Power-plug container to Dynamixel container
  • 7.5 V AC to Power-plug container
  • USB container to the previous system
  • USB cable to USB container

More details on this page: https://www.luos-robotics.com/en/documentation/dxl/

Hi Simon
OK I understand now.
The Dynamixel container is well seen if there is only one motor on the bus.

But when i make the same operation with 2, or more motors (Ergo_JR has 6 motors on a daisy chain) …robot = Robot(‘COM4’) or robot.containers don’t answer.

Do i need ONE Dynamixel container per motor ?

Hi Luc,

Today it seems that a chain of motors won’t work with this container. I’ll let you have more information next week after we discuss of that matter, my colleague and I.

Hi @Luc,

I think you have multiple bugs during your tests :

  • The daisy chain bug with XL320 is a bug. you should see one containers per container appear on the list. I will try to fix this bug this week, I will let you know about this one as soon as I fix it.
  • Your containers seems to have bad names on your last post. If your containers only have number as name, you can’t control it using python. This is because an object can’t be named as a number on python. This is a known bug, and we think this can happen when the network take power spike. We don’t figure it out yet but we filter the name saving on containers to reject numbers only names. To fix it you have to erase the saved name and update your container to the latest revision to avoid this to happen again. To keep it simple for you I will make a new revision that erase the name if it’s a wrong one on your container. This way you will just have to update your containers to the latest revision and you should be able to use it again.

I keep you in touch by the end of the day.


I just push a new release of containers for you. This new release should fix your name issue.
You can update your containers firmware following this documentation page : https://www.luos-robotics.com/en/documentation/container-upgrade/

Let me know if you experience any other issue or observation concerning container naming.

I try to reproduce your bug with XL320 motors of a Poppy ergo Jr. I have few Ergo Jr here so I just try to use it with a DXL container.

When I plug the motor chain I can see :

(the {'detection': {}} thing is due to my debug version of Pyluos, don’t take care of this)

I only can see 5 of them and this is because Robus is configured to limit virtual containers to 5. I just change this limit to 20 and now I can se 6 motors :

Now I also can have more than 6 motors :

I try to use the power supply given with the Poppy Ergo Jr kit and I experience some trouble with the connection. I don’t exactly know why but the contact in the power jack seems to be a little bit random… When I move my setup without USB connected I can see my motor rebooting sometimes.

Do you have the same issue with your power supply?
If not you can try to update your container with the Dynamixel_V2_0.0.4.bin and try again. With this revision you should see 5 of your 6 motors. If this test succeed, I will release a new version of the Dynamixel allowing more motors so you should be able to use it with your Poppy Ergo Jr.

HI @ Nico

I’ve tried to update the firmaware for my 6 cards
2 USB, 2 GPIO & 2 Dynamixel

One USB is impossible to update. It’s not recognise by usb

Then I use the udated USB for the test
First try

You can observe the command robot.container.firmware_revision
as explained on site doesn’t work.
robot.container.firmwares_revision does’nt work to.

The test with 2 container GPIO is OK

The test with One motor is OK

The test with One motor & One GPIO is OK

During the test with 6 motors, only 5 five of them are seen

The test with 4 motors and 1 GPIO is OK

The test with 4 motors and 2 GPIO is OK

The test with 5 motors and 2 GPIO is OK

As a last test i use my “bad USB card”
The same test with 5 motors and 2 GPIO is OK

So it’s quite good now but

  • only 5 motors can be connected on the daisy chain
  • there is a bug on the command “robot.container.firmware_revision”

& One of my USB card is’nt update able …?

Hi Luc,

Could you please describe what happens exactly when you try to upgrade this board?
Did you plug the cable at right side of the board? As there are two micro-USB on this container, you must plug the one on the face where LUOS is written.

Great news, as I said previously it’s normal, it’s because Robus doesn’t allow more than 5 virtual containers on a physical containers, so your Dynamixel container can’t host more than 5 virtual containers XL320. This is just a parameter on the firmware.
I just make you a new release for your Dynamixel container allowing 20 motors : Dynamixel_V2_0.0.5

I think you misunderstand the documentation, you have to change the word “containers” by the name of the container that you want to have the firmware revision.
In your case you should do :

I will make it more precise on the documentation, thank’s to pointing that.

Hi Simon,
As you can read it in my last message i have tried to upgrade my 6 containers 2 GPIO & 2 Dynamixel and 2 of them are USB container
The first one is ok,
For the second it’seems it’s not recognised by the PC neither the software

As i said the two containers are ok for use but only one is upgradable.
I think there is an hardware problem on it ?

HI Nico
With the Dynamixel_V2_0.0.5 version
With ErgoJR and its 6 DXL i’v got
Which is very nice

but if i add the GPIO container i’ve got
One motor is missing ! Wich is not so nice !:slight_smile:

Ok but with command i’ve got
wich is not really usefull

@Luc I will try to fix your first bug first, which is more complicated I think.
I try to reproduce it here but I only have 3 XL320 available for now.

I have something strange behavior but a little bit different than yours.
If I make a network with 3 xl320 and a GPIO container, Pyluos can see only motor 2 and 3, Gpio container and Motor 1 doesn’t appear. If I try to re-detect without unplug the network I finally can see motor 1 and Gpio container but with a strange name.

So it’s sounds like your problem come from the auto-naming feature which seems to be really buggy (one of your previous bug come from this one too). So I try to disable this feature as suggested by @Didbo to see if the bug disappear.
With this feature disable I have the same issue the first time but the second time containers seems to have a good name. So we have 2 different bug who seems to be linked because the 2 missing containers having trouble with name too.
It could be a tough bug, I will dig it deeper, and keep you in touch as soon as possible.

@Luc I just push a new release that should fix your problem with container detection.

Thank’s a lot, you give me a way to reproduce a really random bug!

The problem come from the power jack, when you plug it the power on the network is REALLY noisy and can make switch random containers into specific mode named “detection_mode”.

I had to broke compatibility a bit to fix this one, that’s why all firmware have switch to 0.1.0.

You have to update all your containers to avoid any compatibility trouble.

Let me know your results after updating.

@Nico &@Simon

I’m happy to show you this screenshot :slight_smile:
I’ve got it with the new usb container(called by me U3) you sent me today. I can see my 6 motors !

But …with the usbcontainer (called by me U2) i’ve updated with Usb_0.1.0.bin.zip

it’s not so good !

Since i ve updated all the container with some success, i suggest :

  • you didn’t use the same file for your usb container (U3)
  • my second usb container(U2) have a bug ? (remember there was a hard bug on my usb container(called by me U1) wihich was impossible to detect on USB port to update it)

This is strange! From my point of view this bug can’t be hardware, as you mention I think the firmware on your container U2 is different from the container U3.
Sadly For now it’s not possible to get the firmware revision of gates…

@Simon can you try to flash an USB container using 0.1.0 revision on Windows and test it?

Yes, @Luc we are going to proceed to some tests on our side.

@Luc We received your USB container that can’t be upgraded. A component just had fallen from the PCB I replace this missing component and the container come back.
This seems to be a production Issue.

Is it for me? 🤔