Does this project spark your interest?

Become a member to follow this project and don't miss any updates

6DOF Robot Arm

Building an open source robot arm for schools and DIYers

Similar projects worth following

This project was created on 04/28/2014 and last updated 13 days ago.

I want to put robots on the moon to build my base. An industrial arm starts at $10k and go up from there. I figure I can make some money to pay for the space ticket by building and selling the robots myself. I'd like to drive the cost down by making an arm that others can tinker with, improve on, and build community around. I'd like to see two arms assemble a third.

So far I've built a 3DOF arm that I brought to the 2014 San Mateo Maker Faire. I've taught it to write so it can sign pictures and print your message here. I've also built a 5DOF prototype (pictured).

I need all the help I can get. Please share with your friends!

Thanks for reading,

I don't know what to write here that isn't covered elsewhere.   Ask questions?

You can get the full part list or support me by buying a copy of the current design here:


Project logs
  • Arm3 software update

    13 days ago • 0 comments


    Updated the Java code to run better on devices with no mouse. Also makes the UI a lot more intuitive.

    Work is already being done on the inverse Kinematics for 6 axies. If you can help with the singularities, please comment.

    Also, on /r/robotics I saw this great list of 3D printable robot arms. You'll notice I didn't say a list of great arms. They come in three flavors: arms made with hobby servos (small and weak), copies of industrial arms (printable but not runable), and big-dream arms (nice idea, no working model). Still... good job doing the homework to collate a list.

    Speaking of which, here's my playlist of robot arm videos on Youtube.

    As always, if you can help with this project in any way please let me know. Even a tweet or a like means a lot.

    This weekend I'm in St. Petersburg, Russia for GEEK PICNIC. When I get home I start on the next version of the hardware.

  • Why Hypocycloids Gearboxes Don't (appear to) Work

    2 months ago • 4 comments

    Over the course of the last year I've invested several thousand dollars to prototype hypocycloid gearboxes and I've learned why they don't work. I couldn't tell from the outside, and it seemed like such a straightforward idea! Well, so does the Wankel engine.

    I run so that I can afford to keep making robots all day. The hope is that this way I'll gain enough experience to do something truly awesome, like make a low cost robot arm, and then teach others how to do the same. When you support my stuff you don't just get a cool robot, you help make more cool robots possible. The big show stopper in my plans for world domi-i mean robot arms, is getting enough power to move the arms from the tiny 3D printer motors available everywhere. It would be so easy if I had the right gearbox available off-the-shelf. I don't, so I tried to design my own.

    In a traditional gearbox like a sun/planet arrangement, the forces are evenly distributed - the planets are arranged around the sun. As torque on the sun increases, the force is transferred through all the planets at once to the outer gear. At worst it might break a tooth off one of the gears. The real downside to sun/planet gears (and also worm gears) is that they have backlash - while the input to a gear box is not moving there's still a bit of wiggle in the output. (At any given time there are only two teeth touching, and the distance between the teeth is the amount of wiggle.) That makes a robot very imprecise, which makes programming very challenging. I want joints and gearsboxes that are stiff - they stop exactly where I tell them to so the computer model and the real machine always match.

    In a hypocycloid there is no backlash because there's always lots of teeth touching. Also, the force is uneven. Torque on either the output shaft or the input shaft causes the shaft to bend off-axis, away from the point of contact between the inner gear and the housing. As soon as this happens the interior gear starts to tilt. A tilted gear is a jamming gear, and I don't mean in a One Love kind of way.

    With my machinist friend Bernie over at Coast Precision CNC and the incredible Jim Shook (who drafted all the designs) we attempted to lock down the parts, eliminate play, and experimented with different tolerances. It all came back to the same problem: the cycloid gear at the heart of the design is a problem hiding inside a solution.

    There is one kind of cycloid gear, known as a harmonic drive, that works. It has a point of contact on opposite sides of the housing at the same time, eliminating the chance of bending. I was recently quoted $1650 CAD per unit for a combo RH-14D gearbox, DC motor, and encoder. $9900 for six is 10x more than I want to pay. I didn't bother asking what their closed-source controller costs.

    So what's next? You keep sharing the Marginally Clever story and sending me your ideas, I keep making robots. Together we'll figure this out.

  • UBC robot arm Thingiverse files

    3 months ago • 0 comments

    Here you go!

View all 29 project logs

Build instructions
  • 1

    Instructions so far:

See all instructions


Andrew Becker wrote a year ago point
Hi Dan, sorry for the long delay, I took my family on holiday and decided to leave the hobbies behind. I have already had a good look at your project and it looks great, I would be more than happy to share my work with you, I'm also very curious as to what control system you're using.

Are you sure? [yes] / [no]

Dan Royer wrote a year ago point
The software is home-grown. The electronics are a RUMBA controller - think an Arduino MEGA and a super sized RAMPS board put together.

Are you sure? [yes] / [no]

Andrew Becker wrote a year ago point
So you are doing all of the forward and inverse kinematics from first principles? I've managed to logic out the geometric relationships for my arm because the axis pairs intersect which simplifies the maths. I've then moved all of that into excel to visualise it and plan on using that to implement it in Linux CNC. It works out fairly simple because the alpha, beta and gamma angles fix the position of the 3rd link in space, thereafter it's a matter of working back through each joint position. Because of the geometry I chose there is only one solution to the set of equations and it's not necessary to use matrices to solve. How are you handling it?

I have a Reprap Ormerod and initially I had some trouble with the software. It turned out that the PSU supplied was not supplying a stable voltage to the controller and when the heated bed switched on it would freeze. I went for an industrial PSU with a much higher rated amperage and the problem disappeared. It did however put me off using an arduino based controller considering how easily my first Linux CNC set-up went.

Are you sure? [yes] / [no]

mad.hephaestus wrote a year ago 1 point
I had a random thought:
If you take that whole arm section and put it in a 2 axis gambol, centered around the elbow joint (with the elbow being the outside joint), you could get a true R-R-R spherical wrist, without twisting the belts. The entire section you have now would rotate around the center axis. With a circular track around the edge the track race could then form the elbow joint on the out side. You could actuate it with a third counterbalance motor and a gear interface to the outer track.

Are you sure? [yes] / [no]

Dan Royer wrote a year ago point
That's the first thought I had. I've skipped it for now to ... Work my way up? Also as the gimbal turns the wrist motors could collide with the shoulder assembly. I'm looking for a method closer to what existing arms do where the ulna rotation is between the elbow and wrist. I have some drawings and I'm saving them for later.

Are you sure? [yes] / [no]

Dan Royer wrote a year ago point
One of the things that drives my business most is customer feedback. You asked for it and I can do it, so I'll start posting here more. Given how busy I am it will probably be a copy/paste from my website, which may hurt my SEO.

Are you sure? [yes] / [no]

zakqwy wrote a year ago point
Thanks Dan. Great work so far, it's been fun to watch your progress as you develop the 4th and 5th axes.

Are you sure? [yes] / [no]

zakqwy wrote a year ago 1 point
What are your thoughts on putting more info on I'm less likely to click through for project logs or other updates, it's easier to read everything in one place (and comment on it here, too).

Are you sure? [yes] / [no]

Similar projects