Leap motion controller controlling a reprap delta 3d printer

I hacked this together today. I can see a new era of automation where we just 'show' robots what we do and they can copy us.

It would be possible to make a giant rugged delta bot with GPS guided wheels and you could use this technique to stick something like a spade on it and then it can dig your own trenches on your farm once you teach it the movements to 'dig'... imagine that!

This here is pretty straight forward if you can code. - Write a program to take the leap motion controller xyz inputs and send then to the rep rap as G code over the serial interface. (3 steps you see)

I used the Leap javascript library to get the xyz inputs from the controller and sent them via ajax to a CGI script which sent them via the command line to the serial port as G-Code. The webserver has the USB connection to the Reprap (in my case it's all the same box). There are less convoluted ways to do this but for me this took less than an hour to create from the ground including installing all the development tools & troubleshooting & testing so... I am using Ubuntu 12.10

Tools Needed:

  • Leap Motion Controller of course!
  • Leap Motion Developers account - https://developer.leapmotion.com/
  • Leap Motion JS - https://github.com/leapmotion/leapjs
  • LibReprap - https://github.com/Ralith/libreprap
  • Reprap Utils - https://github.com/Ralith/reprap-utils

Future upgrades:

  • Smoothing the motion - it's too jumpy, need to take averages and ignore far fetched pickups.
  • Adding a record and play back function. This will save the recordings to a database. - Then I can modify the speeds & path and re-send them back to the printer! (think translate, smooth, delete random points etc). Great for pick & place type situations.

I will release my software as OpenSource but it's just a pile of mess right now. I would like donations to encourage me to keep working on it.

Comments and suggestions are most welcome

Tim Jacobsen
2013-11-22