Robotics / Mechanical
3D-Printed Robot Arm.

How it all started
During my freshman year at LMU in Los Angeles, I worked at the engineering makerspace. The professor who managed the makerspace and I shared an interest in robotic automation, but the university’s only robot arm was a 20-year-old FANUC. Without the budget for a new industrial arm, we decided to explore an open-source, fully 3D-printed alternative.
Version 1 - Jeff
The first robot arm I worked on was based entirely on the Arctos project. I built it over winter break and named it Jeff.
Custom version of uCNC
The six motors each used a standard stepper driver, so I created a modified version of uCNC to coordinate their motion. This was necessary because joints 5 and 6 were mechanically linked.
ROS 2 control hardware interface
To control the robot through ROS 2 Humble, I developed a custom ros2_control hardware interface.
Problems and areas for improvement
This first version revealed several mechanical and electrical challenges:
- Most gearboxes had severe backlash.
- Some components were extremely difficult to assemble.
- The CAD model was disorganized and difficult to work with.
- Many parts were not designed for 3D printing, which affected both appearance and function.
- The open-loop stepper motors were prone to losing steps.
- Wiring every motor individually made cable management difficult.
Computer vision research
During a six-week summer research stay at LMU, I further improved the robot arm and implemented visual servoing using ROS 2.
Version 2 - Jenny
To address these issues, I started working on Jenny, a second robot arm based on an updated version of the Arctos project, with additional improvements of my own.
Mechanical modifications
I redesigned the gearboxes to reduce backlash and improve precision. I also redesigned several parts to improve their printability and make assembly easier.
Version 3 - Jonny
I built the latest version of the robot arm, Jonny, during the summer of 2025.
CAD
I designed the entire system from scratch, focusing on printability, structural strength, and reduced backlash. It was my most ambitious CAD modeling project to date.



Software
The new system used CAN communication and encoders mounted on the backs of the stepper motors to improve the arm’s precision and reliability. I developed a new ros2_control hardware interface and integrated MoveIt for motion planning and control.
The full robot


