Close

Minor stuff

A project log for RoboDog

Cheap 3D-printed robot dog: 14-DOF ESP32 quadruped with wobbly first steps, jittery servos and lots of room for hacks at around ~100€.

stanislav-britanishskiiStanislav Britanishskii 12/11/2025 at 18:370 Comments

Let me make the last log on this project.

All the joints are mounted directly to servos with the help of the servos’ native connectors. The horns to which the connectors are mounted have these small teeth to improve traction. When the dog was more or less operational for the first time, I found out that the teeth are slightly rotated on each servo, which meant that I had to manually implement some slight offsets for each servo. I ended up with a config in which all of these offsets were listed, but manual adjustments still took quite a while.

For the frontend with the video stream and joysticks I kinda cheated and left it all for ChatGPT. The result is not perfect, but reasonably good.

For a while there was an issue with the dog’s walking pattern. When moving one leg after another it would quite often swing like a drunk and fall down in a few steps. Real animals shift their center of mass onto the three legs remaining on the ground, but I was somewhat lazy to implement that. Also that would require finding the actual center of mass of the dog. I tried decreasing time of each leg in the air, that didn’t help too much, even if it didn’t fall, it would still swing a lot and overall movement looked terrible. That is when I decided to try out trotting, and that helped a lot. After a bit of trial and error I came up with the current sequence. The dog would lift two diagonal legs at the same time, in about one quarter of the whole walking cycle move them and put them on the ground. So about half of the time the dog has all 4 legs safely standing.

Falling was still a bit of an issue while walking sideways or rotating, so I had to decrease maximum range of motion sideways for stability. That means that the dog is a couple of times slower when going sideways than when going straight, but that is fine, all dogs are slower sideways. And just to be safe I made the default angle for the legs slightly outwards, around ten degrees or so.

There obviously were also a lot of setbacks with wiring, frying out some electronics, loose cables and so on, but that is not very interesting. One kinda cool thing I discovered – pure alcohol is pretty good for cleaning contacts before soldering them, didn’t know that.

Finalizing all the logs so far and the whole project:

It was a very interesting experience, I did learn a lot about inverse kinematics, cabling, power supply and a lot of other stuff.

It took me at least a month of real work if I could do it 8/5 and around 8 months with all the drawbacks I had and limited time per week left for the hobby project.

The price of the final dog is really around 100 euro, but considering all the tools I had to buy, all the testing, different prototypes, it all goes up to at least 500 or more, so it turned out to be noticeably more expensive than I expected. Luckily most of the tools I’ll be able to reuse in future projects.

Thank you to those few who read all of my logs, I hope it was fun or at least interesting.

Discussions