
6-Axis 3D Printed Robot Arm with Wolfrom Gearboxes
Download, slice and print this model in the MakerSpell app — available on Android and Windows. Get the app
Model Overview & Print Notes
Summary 6-Axis 3D Printed Robot Arm with Wolfrom Gearboxes A fully 3D printed 6-axis robot arm driven by NEMA 17 stepper motors and compact Wolfrom planetary gearboxes in every joint. No off-the-shelf bearings are used in the gearboxes: each output rides on a built-in ball bearing made of 7/32" steel balls running in a printed race. The arm is controlled by a BigTreeTech Octopus Pro with TMC2209 stepper drivers and a Raspberry Pi , which also drives the gripper servo. Features 6 axes (J1–J6) , each one with its own Wolfrom gearbox Gearboxes: 3 × 96:1 herringbone, 1 × 82:1, 2 × 35:1 Motors: NEMA 17 steppers (standard and pancake) Height (upright): ≈ 875 mm Link lengths: 270 mm (shoulder → elbow) and 200 mm (elbow → J4) Base: Ø240 mm Electronics: BigTreeTech Octopus Pro + 6 × TMC2209 + Raspberry Pi Power: 24 V switching power supply, ~15 A Gripper: servo on Raspberry Pi GPIO 16 Open source Raspberry Pi software on GitHub Editable files included so you can modify and improve the design Joints Joint Movement Gearbox Motor J1 Base rotation Wolfrom 96:1 herringbone NEMA 17, 40 mm J2 Shoulder Wolfrom 96:1 herringbone NEMA 17, 60 mm J3 Elbow Wolfrom 96:1 herringbone NEMA 17, 40 mm J4 Forearm Wolfrom 82:1 NEMA 17, 40 mm J5 Wrist Wolfrom 35:1 NEMA 17 pancake J6 Wrist rotation Wolfrom 35:1 NEMA 17 pancake The heavy joints near the base (J1–J3) use the 96:1 herringbone gearbox for maximum torque. The wrist uses the smaller and lighter 82:1 and 35:1 gearboxes to keep the weight at the end of the arm low. Each gearbox is also published on its own, with full details, tooth counts, hardware and assembly instructions: Wolfrom 96 to 1 helicoidal: [link] Wolfrom 82 to 1: [link] Wolfrom 35 to 1: [link] Electronics Power supply 24 V switching power supply, ~15 A (≈360 W) The one used in this build: https://es.aliexpress.com/item/1005003350556551.html The 24 V output goes to the power input of the Octopus Pro, which feeds the board and the six stepper drivers. BigTreeTech Octopus Pro + TMC2209 The six stepper motors are driven by a BigTreeTech Octopus Pro with TMC2209 drivers , one driver per joint. Each stepper plugs into the motor connector of its driver: Joint Driver Octopus Pro motor connector J1 TMC2209 MOTOR0 J2 TMC2209 MOTOR1 J3 TMC2209 MOTOR2_1 J4 TMC2209 MOTOR3 J5 TMC2209 MOTOR4 J6 TMC2209 MOTOR5 MOTOR2_2 is left empty. Set the current of each TMC2209 according to its motor (the pancake motors on J5 and J6 need less current than the 40 mm and 60 mm motors). Raspberry Pi and gripper The Raspberry Pi is the main computer of the arm and is connected to the Octopus Pro by USB to send the motion commands. It is powered by its own 5 V USB-C supply. The gripper is driven by a servo connected to the Raspberry Pi: Signal: GPIO 16 (physical pin 36) GND: pin 34. The servo ground, the servo supply ground and the Raspberry Pi ground must be connected together. Power: 5 V. A separate 5 V supply for the servo is recommended so it doesn't brown out the Raspberry Pi. The model does not include a final gripper. The gripper end is left open so you can design the one that fits your application. The editable files are included so you can build your own. Software The complete Raspberry Pi software to control the arm is available on GitHub: https://github.com/Bryand02/6-Axis-3D-Printed-Robot-Arm-with-Wolfrom-Gearboxes It is the full source code , so you can edit it, adapt it to your own build and add new features. Contributions are very welcome! It would be great to see people use it, fix bugs, add features and make it better. Feel free to open an issue, fork the repository or send a pull request. Printed parts Part Description base (1) Base foot, Ø240 mm base J1 rotating tower, holds the J2 motor cover base Base cover shoulder Shoulder link (J2 → J3) cover shoulder Shoulder side cover arm Arm link (J3 → J4) cover arm Arm side cover codo1 Wrist piece (J4 → J5) codo inferior J5 round cover codo2 Wrist piece (J5 → J6) codo superior J6 round cover union gripper Mount between J6 and the gripper gripper Gripper mount (base for your own gripper) Plus the parts of the six gearboxes (see each gearbox's page). Hardware 6 × NEMA 17 stepper motors with a D-shaft (flat) : 3 × 40 mm, 1 × 60 mm, 2 × pancake Steel balls 7/32" (5.5 mm): 230 in total (3 × 50 for the 96:1, 30 for the 82:1, 2 × 25 for the 35:1) M3 and M4 heat-set inserts and socket head screws (McMaster-Carr). See each gearbox's page for quantities. BigTreeTech Octopus Pro 6 × TMC2209 stepper drivers Raspberry Pi + 5 V USB-C power supply 1 × servo for the gripper + 5 V supply for the servo 24 V ~15 A switching power supply Print settings Material: PETG recommended. Layer height: 0.15–0.2 mm Walls: 3 or more Infill: 30–50 % Recommendations Build and test each gearbox on its own before mounting it in the arm. Heat the motor shaft before pressing on each input sun gear. Lubricate the gearboxes with white lithium grease . Mind the output torque : the 96:1 gearboxes multiply the motor torque almost 100 times, which is more than printed parts can take. Limit the motor current according to the load. Route the cables carefully so they don't get pinched when the joints move. Credits Hardware (screws and heat-set inserts) sourced from McMaster-Carr . NEMA 17 motor models taken from GrabCAD and modified for this design. Editable files: remix it! All the editable source files are included so you can modify the links, design your own gripper, change the gearbox ratios or adapt the arm to other motors. If you make a remix, please share it. I'd love to see what improvements come out of it. The same goes for the software: improvements to the code are welcome on the GitHub repository. License Creative Commons – Attribution – Share Alike Built one? Post your Make and let me know how it went!
