Marty the robot powered by Myrobotlab !

Marty using MRL inside, great ! I'm using raspi + Adafruit16CServoDriver only.




Small setup :

sudo apt-get install python-smbus
sudo apt-get install i2c-tools
raspi-config ( and activate i2c )

to check : i2cdetect -y 1( or 0 )

driver :

marty :

Software: I m using wip inmoov script because it is a common base ( chatbot, mrl services ... ) . And put code inside CustomScript

About customCode :

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.
kyle.clinton's picture

Great video

I have a couple of the I2C servo controllers that I need to solder pins on. Any control problems you have seen with it?

MdG_NL's picture

Haha LOL Marty the

Haha LOL

Marty the BreakDancer

Now you need Marty to learn the MoonWalk and some other dance movements LOL

Nice job anyway, it's fun to see this (much smaller) robot.




GroG's picture

Great Work Moz4r ! :D When

Great Work Moz4r ! :D

When are you going to voice control your lights, and stereo and thermostat and garage door ? 

So you can tell InMoov to make Marty moondance with lights and music... Connect it All ! 

moz4r's picture

Lol good idea, I will ask

Lol good idea, I will ask Inmoov to send orders to marty in deep secret language, to execute domotics :)  And power on lights in moonwalk of course after launch some Mickaël songs. Great crazy family I love it.

I just do a small test , I will post review soon about i2c I think i have problemes about speed control but not work a lot on it.

Mats's picture

Adafruit16CServoDriver speed control

Hi moz4r

You are right about the speed control. I implemented it a few weeks ago, so it's very little tested. There was a discussions about what the different speed settings should do and I know that part of the code for the servodriver it needs to be changed.

I'm really happy to see that somebody is using it from a RasPi. The nice thing with i2c is that you don't need to do any more wiring on the RasPi than you already have done, even if you add other i2c devices. 




moz4r's picture

Mission if i accept : let

Mission if i accept : let marty walk :)

If I use something like this to control speed is it ok ?

for x in range(0, 180):

or maybe there is other thing in the service I can use ?
Mats's picture

Speed control

I implemented setVelocity in the latest release.

So you could try something like this:




It should now move from 0 to 180 at 10 degrees per second.

I tested tonight, and there is one small thing left to do, and that's to make it possible to set the servo back to full speed again. The algorithm works fine at low speeds, but reaches a limit at high speed. 

The current algorith moves the servo one degree and then it sleeps until it's time to send a new position.

moz4r's picture

Thank you very much mats !!

Thank you very much mats !! speed control works great with setVelocity !

But I have some communications problems with the I2C. And this is a very very strange problem :

If I use servo.detach() , I can't attach anymore, even if I reboot and cut off the power !!

I need to chose another pin ( never used pin )

mmmm very strange, maybe my hardware ? I will test other regulator


moz4r's picture

Hi ! I ve tested a new

Hi !

I ve tested a new PCA9685 with new alimentation I still have problems

The first launch, everything is ok !

The second, nothing happen ( just a very quicky noise in the servo )

If I change PIN and restart mrl , it worky, but only once... like at the begining

If I return to the initial pin, no worky anymore.

this is the script :

I use mrl 1825 with raspi2


Mats's picture



I tested and I also see this strang behaviour. The PCA9685 does not get reset like the Arduino does. So if it go to a strange state, it wll stay like that until powercycled. I hope I get some time tonight to do more testing and code changes.


moz4r's picture

Ok it's good news I'm not

Ok it's good news I'm not crazy lol

Have a nice day mats

GroG's picture

GO MARTY !!! I'm very


I'm very excited your using mrl for more than 1 bot  Moz4r !

Let Marty be the crash test dummy