Stepper robot arm

A while ago I printed a MeArm on my Prusa I3 3D printer. While printing the mearm I quickly came to the conclusion that the design is not really suitable for 3D printing. The original mearm was designed to be laser cut. Those machines are very accurate, the design relies on that accuracy. My 3D printer was not very well calibrated at that time and I was (still am) a rookie at 3D printing. While I managed to print a working mearm I have to confess that I spent hours filing and cleaning up the parts to make them fit.

I found some code for it on github that works very well, it uses inverse kinematics to calculate the position of the arm. Code on github

Video of my MeArm: Mearm: 3D printed Arduino robot arm - YouTube

Since I was not very happy with the original design I decided to make my own version. Goal was to make it much simpler to print, less pieces that don't need to be so accurate to fit together. I used Freecad to design my robot arm. I have built a lot of robots/robotic devices using hobby servos. This time I wanted to try something different. I had a bunch of 28BYJ-48 stepper motors in stock so I decided to use those. I only use one servo for the gripper.

This is my design in Freecad:

And here is the 3D printed version:

A video of the arm in action: Mearm forked: mearm with stepper motors - YouTube

To control the arm I'm using an Arduino Duemilanove and a CNC (grbl) shield with 3 Allegro 4988 stepper drivers. At the moment I have only written some basic code that lets me control the stepper motors like a servo. I use a timer2 interrupt to "step" the motors. My goal is to convert the inverse kinematics code for the MeArm so it works with the stepper motors. (anyone willing to help me with that?)

If you are interested in printing your own or want to hack/modify it, I'm sharing all the Freecad/stl files on my blog: Stepper robot arm - Bajdi electronics