Problems (and tried solutions) to get Poppy Humanoid to work

Hi @all,

I’m working together with my students on the Poppy Humanoid and we really have problems to get it to work.

Our actual setup:

  • Poppy Humanoid with Raspi 4B, two USB2Ax, two SMPS, access to Poppy over WLAN
  • SD-card flashed with the most recent image from Github
  • mid cable of the USB2Ax cut out according to the appendix in documentation
  • Power Supply: use with only one SMPS and bridging of the two SMPS2Dynamixel, as well as one seperate SMPS for each SMPS2Dynamixel wiithout bridging: no differences in errors
  • green leds are on on both USB2Ax all the time

Our problems:

  • There is no permanent error, they come sporadic and they are not always the same. So it is very hard to figure out, what the problem is.
  • if we try to start the API over the web interface, for example we get an error:

Starting API without camera… Attempt 1 to start the robot…Could not initialize robot: No suitable port found for ids [31, 32, 33, 34, 35, 36, 37, 41, 42, 43, 44, 51, 52, 53, 54]. These ids are missing [32, 33, 34, 35, 36, 37, 41, 42, 43, 44, 51, 52, 53, 54, 31] !

This seems to be the most common error. Sometimes the procedure goes without an error and we can look at the motor overview in the web interface (temperature, positions, etc.). But most time we get an error. If I try to stop API and restart it, sometime we get connection to the motors but most time not. Even if we have a connection to the motors, it gets lost after a time.

Jupyiter notebooks has also worked in the past to some degree but now seems to do nothing when I click the run button. No error, but also no action/output.

I spent quite some hours to read through the documentation, look at the library code of poppy/pypot, but don’t really know how to proceed. What I also want to try the next days:

1.) Connect to Poppy with my PC and USB2Ax without the use of the Raspi. Do I have to take special care of something? I tried it an hour ago, the lights of USB2Ax were green (I guess, according to the doc, this means drivers are installed). Then I entered the following in my python console and got the same error as above:

from pypot.creatures import PoppyHumanoid
poppy = PoppyHumanoid()

2.) Lock in on the Raspi with external display, keyboard and computer mouse and try to start the procedure as in the step above.

3.) I thought to modify the configuration file and exclude the motors which were mentioned in the above error message. I want to see if it’s posible to establish a connection without these motors or if just another error occurs. I think motors [32, 33, 34, 35, 36, 37, 41, 42, 43, 44, 51, 52, 53, 54, 31] should be the lower body. So if it would be possible to get a connection at least to the upper body of poppy, we could work with it like the torso version (better than nothing).

Do you have an idea how we can get the poppy to run? Are these known issues that are common? To this time, it’s impossible to work with the robot unfortunately.

Thanks,
Markus

Hello @Markus,

Intermittent/sporadic error messages are usually due to aging cables. With time the 3-wire cables from Dynamixel get old not the good way and there ability to transmit a signal of good quality gets worse and worse, even if you did not use them much. If these cables have been produced a few years ago, this is even more probable. Old cables tend to get rigid due to overheating but in general, do not assume that cables are good because they look good (i.e. not rigid), cables are a very very frequent issue (see problem 2 in the FAQ)

I strongly suggest that you replace ALL Dynamixel cables at once. This is cheap and may save you hours of debugging.

You may also cut the power wire of the USB2AX (especially if this cable is long): See warning #5 here.

1 Like

Hi @Yoan,

thanks for your reply. As I said, I already cut out the VCC cable of the USB2Ax, which did not fix the issue. But the cables are years old, although the robot hasn’t been used much. So I’ll change them next. They are very short anyway, so I wanted to make cables on my own instead of buying them.

The connectors seems to be Molex Spox. Did you assemble your own cables and can you tell me which tools you are using? Do I need a special plier? Which cable type would you recommend? Seems the original ones are not really suitable.

Thanks,
Markus

I have no experience in the custom assembly of Dynamixel cables.

Ideally you would make some experiments using an oscilloscope in order to check that your custom cables do not alter the data signal. You can also increase the section of the power wire, which may be too low in official cables from Robotis.

1 Like