Hexapod, pt.0
I have built one of these now, a hexapod, six legged robot that is supposed to walk smoothly and look cool. Mine does that, almost.
I have been seeing these here and there and I think I found some good designs from thingiverse too so I thought that it can’t bee too hard to get one going. I decided to build this one from user Ferretti since I really liked his design and I found out that it was really well thought through how everything came together. There are mounting holes for almost everything and my favorite thing is how the arduino mounts in there vertically so the usb port is really easy to reach at all times.
Here’s the thing upside down and without bottom plate. As you can see there are a lot of servo wiring going on. Here you can also see that even though I have a power button on it, it is not connected to anything at all.
All the parts I used for this build. 18 MG90S servos with all of their mounting hardware, a lot of printed parts, arduino and USC-32 controller, PS2 controller, two UBECs which I wired in parallel, bearings for the joints and so on. Lotta M3 screws too!
Build picture gallery
These build pictures are pretty self explanatory, just soldering things and putting them together.
This is the way I put the legs together. On the right the servo arm is hot glued to the printed part and on the left there is screw, bearing, nut, nut and then nut between the servo and printed part to which it attaches to.
This was my first leg built, here those bearing are clearly visible.
As seen on the first picture I first used 3S lipo battery with this but then moved on to use two 18650 cells in series because they provide almost the same capacity but weight a lot less. Power is in any case provided through BECs so voltage change should not matter too much. They are also much more universal which I like, salvaged them from an old laptop battery.
Here we have it walking and moving, works pretty okay.
And here is the problem why I said that this almost works. It is very visible here that the legs twitch all in a circular pattern. the movement is not big and it corrects it instantly but it still happens.
I have tried to troubleshoot this several times, modified the code since I thought it happens because servo midpoints and offsets are incorrect. That didn’t help.
I found this post from 2009 that talks about query pulses and incorrect offsets which kind of looks like what is going on here.
I gave up with trying to solve this last time because I have different hardware too. Many of these hexapod walking robots seem to use SSC-32 servo controller boards which apparetly is a little different from what I have, an USC-32 board. I tried to use SSC-32 board tools to connect to it and/or update the firmware but as expected none of those worked because it has different processor and it’s a different board.
Right now I don’t know how to solve this and this project is kind of frozen because of all other things I need to do. It was very fun to build but right now it is kind of useless and unfinished. I had great plans on making a lot bigger version when I get this working and know how the software works but I never made it that far.
If anyone reads this and has any clues how to solve this feel free to contact me anyhow.
Hi there! Such a good short article, thanks!