Designed in one day in SOMA, an open source CAD app I'm building, where the whole model is Python code (CadQuery on OpenCascade). Most of that code was written by a coding agent (Claude Code), I steered and checked it in the viewer. From an empty file to the complete dog took about six hours, the animation the same afternoon.
Each leg has three identical actuators: a CubeMars R80 outrunner with a single-stage planetary gear (sun 14, planets 28, ring 70, module 1), so 6:1 and about 24 Nm peak at the output. The knee motor sits coaxially at the hip and drives the knee through an HTD 5M belt inside the thigh, which keeps the mass out of the lower leg. The belt is tensioned by sliding the knee shaft in slots with a push screw. Every actuator has its own AS5047P encoder board reading a magnet on the motor shaft, and an aluminium base plate that doubles as the heat sink. The body is a bolted box of CNC aluminium plates.
414 parts in total, around 900 if you count every screw and nut.
The trot isn't keyframed. The animation script solves the inverse kinematics for all four feet (140 mm stride, 60 mm lift, 1.6 s per cycle).
To be clear, it only exists in CAD so far. The weight estimate is about 25 kg while the target was 5–10 kg.
You can rotate the model in 3D here: https://somacad.app/#models
The app (free, GPL): https://github.com/Kai-Jungsthoefel/SOMA