Welcome to Synthiam!

The easiest way to program the most powerful robots. Use technologies by leading industry experts. ARC is a free-to-use robot programming software that makes servo automation, computer vision, autonomous navigation, and artificial intelligence easy.

Get Started
Asked — Edited
Resolved Resolved by DJ Sures!

Help With Serial Bus Servo (Almost Dynamixel Protocol)

I would like to get some help on serial bus servo's that use almost the same protocol as dynamixel.

BUT all the dynamixel instruction packets and status packets start with:

0xFF 0xFF and then you get ID> Length> Instruction>Parameters>Checksum

like this

User-inserted image

The servo's I want to use are Lobot LX-16A that use the same protocol with one difference: the packets start with 0x55 0x55 and then ID> Length> Instruction>Parameters>Checksum

so my servo's don't react on the dynamixelplugin
How can I or someone change the 0xff too 0x55 in the plugin?
Is it possible too get the source code for the plugin?
or is there another solution?
I can't afford real dynamixels and this seemed a good alternative

thanx in advance for your help


Upgrade to ARC Pro

Experience early access to the latest features and updates. You'll have everything that is needed to unleash your robot's potential.

AI Support Bot
Related Content
They work great. They are quiet and have feedback for $49 usd. Only drawback Is they are a bit slower and less torque (at about 14 kg/cm ) than the ez robot hdd servo.
I'm surprised to hear they are that much less powerful than the HDD servos. Makes a lot of sense because when i was using the Bioloid in one of my live hacks, the legs didn't seem to have much "juice" and the servo would reset.
Yup very disappointed in power and speed.
#56   — Edited
So which Serial Bus servo would you guys recommend...changing the servo setup is quiet a pain, so I have been rolling it back and forth in my head for a while. This discussion kind of sparked the idea again!
Running those on a Raspberry Pi is still not very well documented, and I am kind of glad having everything pieced together and working, that is why I delayed it always for later!:D

But now with ARC and Dynamixel Support running on the Raspi, that is quiet a game changer for me!
But obviously I would also want to use Python to control my servos, since I am always tinkering, and sometimes it is not ARC related!

If you guys have any recommendations, I would be happy to get the same brand...makes progress a lot faster if stuff is unified I figure!!:)
@fxrtst Why are you researching the other serial bus servos while having Alan already wired up with those Dynamixels? Is it just curiosity or are you looking for the best possible option for your product, having in mind that you might have to purchase a huge quantity at some point? I guess by the time Alan and Alena will be ready for the market, you will get a company to produce your own brand like @DJSures does?

Would you mind to share how you wired up the Dynamixels? I guess I will burden myself with hours of remodeling my robot, and spend quiet some money...but now I got it stuck to my mind, and I am willing to give serial bus servos a try!:D

The things that kept me from it so far was, its not really well documented for the Raspberry Pi...there is the option to purchase hardware that  should get the job done, but I am afraid to purchase something that will proof useless in the end!

What I found was the following


or these two USB connected products


Any hints on which route I should go...:)

They other thing that kind of annoyed me is, that at the moment all the boards and servos are running on 5Volts, so I would have to get a new power supply, I was thinking of some power supply with different fixed Voltages...like the ones you put into a PC?

But all in all this would mean, I will basically on the way to rebuild my robot completely!!

So I could also spend that time trying to get my Unity App working better, rather than just putting a lot of effort into having better servos...while the functionality of it basically stays the same?

What are your thoughts on this?
There are several reasons for walking down the path of other servo that run on serial bus. I like the idea of tidy cable management. Dynamixels rock, but good to have other options. If I understand what Synthiam is about..its getting together alot of hardware items to work with EZ hardware. So, it just makes since to try some of the other products.

Dynamixels are easy to set up. Just make sure you get the TTL versions. The motors have T at the end of their nomenclatures. You are correct the voltages vary per product but can go as high as 14 volts for some bigger ones.. The ideal voltage is 11.1 which is what i run all my robots on. So that might be an issue for you or for the battery pack location etc.

You don't need another control board for them (as you linked to trossen) the EZB does it all.....I usually make a separate voltage for the servos and just output the signal wires to the ezb and share a ground wire. Connect the first servo to D5 and you are on your way.There is a bit to do inside the plug in to get the servos to work. That includes changing the Ids (easy) baud rate and activating the port.

If you choose to do that then I can make you a real quick video on how to set up just one servo youll understand how to set up the others from there. 

I'm all up for you working on the unity app. Its something I want to revisit soon. Getting a version working with ARC/synthiam is a must so we can use sensors etc with the servos.

Always do what cost the least..lol.....
The dynamixel -or- LewanSoul servos connect to the Raspberry Pi's serial port, and are moved with the EZBPi Server - and ARC. ARC can either be on the Pi itself, or on a remote machine. Either way, you need the EZBPi Server on the Pi for them to work.

It's actually really easy to control those servos with the Pi using ARC and EZBPi: https://synthiam.com/Hardware/Hardware/Raspberry-Pi-17681
So which Dynamixel Servos would you guys recommend?
I heard that the DYNAMIXEL AX-12A is the most favored servo for robotics?

And yes, cable management is a reason, plus getting feedback on servo position is something that is a very cool feature!!

I am happy to hear that you do not need any additional hardware to get them running...
So I might give it a try with my EZ-Bs!!

But connecting them straight to the Raspi is not possible?
@DJ Sures, you said something about turning the Raspberry Pi into an EZ-B...so that would mean I could get the Dynamixels to work straight out of the box?

Most information I found was at least having to deal with building a small circuit system to get things working out!

I would like to drive the servos with ARC and also with my Python applications if possible!
Well if I read the info right...it is possible to connect them straight to the Raspberry Pi, too good to be true!!

So sad I cannot join in for the stream!! Gotta go to bed now!!
Yeah you gotta catch up on Djs streams ...he had stuff running on the PI. So cool to see ARC running on all these controllers!

You gotta get on our time so we can chat live! Remember you can sleep when you are dead!
#63   — Edited
Hahaha so true!!! But my brain is already somewhere far beyond being capable of comprehending any tech stuff...might just pop by to say hello!! If I manage to stay awake!!

ARC on the Pi is a milestone!!

Thanks for bringing up Unity too...that was another one!!

Soon we will piece it all together!!:D
Hey guys...still wrapping my mind around serial bus servos!:)

So one thing I figured is that I would be buying a PC Power supply to have multiple high amp power outs...
Am I correct on that, or how are you dealing with this is issue? 

And secondly, I was  trying to  figure out cable management.
So given that those servos would be wired to an EZB or Raspberry Pi directly,
you could daisychain them.
But it would also mean that you'd have to run them down one arm/leg to the hands/feet,
and then back again to the torso, to start stringing up the other limb?
Am I wrong here? The EZB/Raspi only connect to the first servo, no second connection is possible right?

So would this mean that given the scenario of a robot driven by serial bus servos, 
some kind of controller board would be necessary,
if you would not want to end up having a very messy cable management...

I ordered some LewanSoul Servos, sincce they seem to run on 5V and I dont burn a lot of money in case I break them!
First try on serial bus servos, so lets see if I will be able to produce some magic smoke!!:D
So I caught up on the Live Hacks now, and am getting a better understanding on how this all works...still got a good amount of learning how to utilize this, but it is super interesting!! I am happy that I checked the archived Live Hacks!! Will dig thru them more in the next few days!
BTW, i didn't download the file link for the unity project you had listed. I clicked to view it on my phone but when i went to use my laptop, it was gone.
#67   — Edited
@DjSures I thought you already downloaded the scene...we are currently debugging the issue! I hope after this weekend it will be all working fine, that'll safe you the time having to mess with it!! If the problems are reoccurring I will repost! 
It would be kind of better to not have the download link public though!!:)
#68   — Edited
It shouldn't be an issue that requires debugging. It's such a simple process. Set the servo positions, send the packet. It's real real real real easy :). Why dont you want it public if you're asking for help? If you want people to help, they have to see it. Otherwise, what's the advantage of someone helping if they can't learn from it as well? 

Seriously, just set the servo positions and send the packet. It's real real real simple - it can't be any easier than it is. Perhaps you're attempting to send the packet from multiple threads? That won't work. You can only have one client transmit the servo position packet.
#69   — Edited
Within this scene a paid plugin is included, and I do not want to harm the maker by posting the download link public...even though he seems to be pretty relaxed about it!! 

I put the whole thing to GitHub back in the days, when we were still developing, and took it down for that exact reason!!:)
Also while researching about serial bus servos, I found that a lot of wiring also includes an inegrated circuit...mostly a 74LS241N.
Would you also recommend utilizing it? 
I am still doing research on the whole topic, so I might be off...just taking guesses here!
My LX-16A will take a month for shipping, I did not py attention and ordered them from China!!!:D

So I guess I will order a pair of Dynamixel now, they offer faster shipping and I am really curious now and want to test serial bus servos!!:D
@ed_eilers how is your experience with the LX-16A servos, did you do any stress tests...how are the holding up?
I am kind of in the middle of figuring out the servo setup for my robot, and would like to know if its worth using them in my project!!:)