MachineKit Delta configuration + calibration

tl;dr: Instructions to run (and calibrate!) a linear delta 3D printer on MachineKit. I use a CRAMPS board but much of this applies to other boards too.

The first post in this series showed how to get a CRAMPS board up and running with MachineKit, along with how to verify that each board feature works as expected.

This second post shows how to get a Linear Delta 3D printer (a la Rostock, Kossel, 3DR, Wolfstock, etc.) running and calibrated with this same CRAMPS/MachineKit combination. Most of the instructions will apply equally to other boards like the BeBoPr.

Continue reading

Initial Setup: CRAMPS BeagleBone cape with MachineKit


CRAMPS works, and the tips here might save you some time getting yours set up.

Why make and use a CRAMPS board?

I had some good luck at the end of 2013 using Charles Steinkuhler’s MachineKit SD images on a BeBoPr board with BeagleBoneBlack to control a Kossel delta printer to print parts for a GUS Simpson.  At the time, it was developer-level software on a developer-level board with a developer-level printer, making a completely-out-there experimental 3D printer design.  Bleeding-edge fun.  I posted a YouTube video of it and got a few hits:

The BeBoPr is great, but it’s expensive, has limited availability, and is closed-source, so it can be a bit harder to debug stuff.  Recently, Charles designed a simple, low-cost, hand-solderable board similar to the BeBoPr, but open-source.   It’s like the RAMPS board used with Arduinos, but as a BeagleBone cape, and designed for 3.3v logic.  Here’s mine:


These are available on Charles’ web store for a reasonable kit price of $60 or board as $10.  Add a $45 BeagleBone Black and 4x Pololu-style stepper drivers(~$50) and you’re within spitting distance of a PrintrBoard in price, but with vastly more power (32 bit, 1 Ghz + 2x200MHz microcontrollers vs 16 Mhz, 8-bit, no floating point) and a much more flexible dev environment (Python, C++, shell scripting on an OS etc vs embedded C).

Cell-phone ARM processors are the future of RepRap control, especially for printer types that require coordinate transformation, like deltabots, although the software options are not currently as feature-complete or printer-specific as many Arduino-based options.  Add MachineKit, which does machine path and motor control in a real-time way (so that nothing else running on the CPU can interrupt your machine’s motion) and you’ve got professional-level open-source printer control.

Anyway, enough high-level view.  Presumably you’re here to set up your CRAMPS, or at least see what the setup process is, because it really is totally different than Arduino-based boards.  The current docs for this combo stop at the board build, so posts like this will help fill in a documentation gap or hopefully get pulled into official documentation.

Continue reading