We rewrote the 3D-printed parts of three open-source robots as CadQuery (Python) programs: SO-101, Open Duck Mini v2 and the LeRobot humanoid. 83 parts.
Change a shared dimension once, and every part that uses it follows, for printing and for simulation.
git clone
github.com/yotown/gym && cd gym
pip install -e .
gym check so101
gym build so101 --step --stl
Edit the horn screw size in robots/so101/shared.py, then run gym diff so101 to see which parts changed.
Bought parts are code too: Feetech and DYNAMIXEL servos, RobStride actuators, bearings, Raspberry Pi and IMU boards. Printed parts take their holes from these, so a plate always fits its board.
Next: training tasks, so a robot's body and its controller can be designed together.
These are first versions. Issues and PRs welcome. Thanks
@therobotstudio ,
@antoinepirrone,
@LeRobotHF for the original designs.