BeagleBone Hardware Capes

An unofficial list of various 3D Printer, CNC, and motion control related capes I am aware of, along with their status.  If you know of any I missed, or notice something wrong, please leave a note in the comments.

Turnkey Systems:

3D Printer / CNC Capes:

CNC Machine Control Capes:

The boards are ordered loosely based on availability and my personal experience with them.  Boards at the top of the list are real and available for purchase, while boards at the bottom are whimsical fancy (vaporware).  Do not infer anything about the usefulness of these boards or suitability for your particular application from their position in the list.


Turnkey Systems:

Sandy Box


Details
Designer Alexander Rössler
On Board Drivers0
On Board Driver TypeN/A
Off Board Drivers5*
Off Board Driver TypeDB25
Analog Inputs (thermistor)0
Digital Inputs (limit switches)0-8*
Heater & Fan Outputs ( High power / Low power)0 / 0-8*

 NOTE: There are 18 digital I/O that can be switched between step/dir for motor drivers and digital I/O as needed for a particular machine.  It is also possible to use some I/O pins as an I2C bus for expansion (outboard A/D, I/O expander, etc).

Where to buy: The Cool Tool


3D Printer Capes:

BeBoPr++ (also BeBoPr / BeBoPr-Bridge / BeBoPr+)


The first real, shipping board for controlling a 3D printer with your BeagleBone.  These boards are known to work with LinuxCNC and the MachineKit images, and several people (including me) are using this board to control real machines.

Details
Designer Bas Laarhoven
On Board Drivers4
On Board Driver TypePololu Sockets
Off Board Drivers5
Off Board Driver Type16 pin header
Analog Inputs (thermistor)3
Digital Inputs (limit switches)6
Heater & Fan Outputs ( High power / Low power)3 / 0
Where to buy:
The BeBoPr++ is available directly from the designer (email for details).

The original version (usable on a BeagleBone Black if you obtain a Bridge board) may still be available from some of the following vendors:
If you do not buy your board directly from the designer, you will not get any connectors and you will get the original board designed for the BeagleBone White.  You will need to purchase at least two power connectors to get the board working.  Also, if you have a BeagleBone Black and would like to use the HDMI port, you need a Bridge Board, which you can make yourself or I am selling boards pretty much at cost so you can avoid the 2+ week wait from OSH Park.

Support Forum: http://forum.bebopr.info/

Manual: Available via download from github.


Replicape / Replicape-plus


Details
Designer Elias Bakken
On Board Drivers5
On Board Driver TypeDRV8825 soldered on-board
Off Board Drivers0
Off Board Driver TypeN/A
Analog Inputs (thermistor)3
Digital Inputs (limit switches)6
Heater & Fan Outputs ( High power / Low power)3 / 3
NOTE: This board requires setup via I2C and SPI, and will not work properly with LinuxCNC and my MachineKit images until this setup code is written.  If anyone gets this working, please share your code.

Where to buy: Thing-Printer.com


The Rosseta Bone



Details
Designer Bart Dring
On Board Drivers0
On Board Driver TypeN/A
Off Board Drivers5
Off Board Driver TypeDB25 / RAMPS / GRBL
Analog Inputs (thermistor)3
Digital Inputs (limit switches)6
Heater & Fan Outputs ( High power / Low power)Depends on shield
Additional features: This is an interface board to connect the BeagleBone to a RAMPS or GRBL Arduino shield, or to to a conventional CNC stepper driver via DB25.

Where to buy: Schematics are linked on the buildlog post.  I am not currently aware of any PCB design files or boards available for sale.


CRAMPS (Cape version of RAMPS)



Details
Designer Charles Steinkuehler
On Board Drivers6
On Board Driver TypePololu Sockets
Off Board DriversNot Yet
Off Board Driver TypeSPI Expansion
Analog Inputs (thermistor)4
Digital Inputs (limit switches)6
Heater & Fan Outputs ( High power / Low power)5 / 2
More information:

A design by Charles Steinkuehler (your friendly blog host!) converting the RAMPS-FD into a BeagleBone Cape. This is intended to address what I see as shortcomings with the currently available capes.

Several CNC breakout boards are available at reasonable prices, but they don't easily support 3D printers (no heater outputs or Pololu sockets). The available capes that target 3D printing (BeBoPr and Replicape) are excellent designs, but both are complex and expensive. The RAMPS and RAMPS-FD designs are simple, functional, and inexpensive. I hope to keep that combination with the Cape version.

Where to buy: PCB Design is available from OSH Park
Assembled boards are available from Pico Systems


BUMPS (BeagleBone Universal Multi Pololu Steppers)



Details
Designer Henner Zeller
On Board Drivers5
On Board Driver TypePololu Sockets
Off Board Drivers0
Off Board Driver TypeN/A
Analog Inputs (thermistor)3
Digital Inputs (limit switches)3
Heater & Fan Outputs ( High power / Low power)2 / 2
More information:

BeagleBone Black cape hosting Pololu stepper driver boards (and derivatives). This helps making use of readily available drivers. Right now just an experimental board to make hacking on BeagleG simpler, but eventually meant to help have a full 3D printing (and CNC) solution with BeagleBone + Bumps.

Where to buy: Not yet available for purchase, but the design is open source and can be  built by anyone.


tBone



Details
Designer tBone Team
On Board Drivers5
On Board Driver Type3x 4 Amp / 2x 1.5 Amp
Off Board DriversNo
Off Board Driver TypeN/A
Analog Inputs (thermistor)3
Digital Inputs (limit switches)10
Heater & Fan Outputs ( High power / Low power)2 / 1 (expandable)
Additional Features:
  • 3 encoder inputs
  • 1-wire interface
  • Advanced Trinamic stepper drivers
This design pairs an on-board Arduino for real-time control with the BeagleBone, so will not work out of the box with LinuxCNC.  It should be possible to use the Arduino instead of the PRU for motion control, but it depends somewhat on specific design choices and I have not been able find schematics on-line for review.

Where to buy: Indiegogo


CapeR

UPDATE: This design is currently deprecated. It looks like the market is fixing the need for CNC capes without my help, and I currently feel making a Cape version of the RAMPS-FD (see CRAMPS, above) is a better way to go than crafting an interface board to an existing RAMPS.

A hypothetical design by Charles Steinkuehler (your friendly blog host!) intended to address several issues:
  • Interface to a RAMPS board (this may be unnecessary, if the Rosetta Bone becomes available)
  • Allow use of AM335x hardware encoder (primarily for use as a spindle encoder with a step/dir driven machine)
  • Optimize the pinout to allow PRU direct inputs to be used for soft encoder inputs (for a true servo system with minimal extra hardware)
  • Optimize the pinout to allow PRU emulation of an EPP port (or possibly use the GPMC interface and a tweaked FPGA configuration), allowing use of "smart" off-board controllers, like the Mesa 7I43 or 7I90 for true servo support with no performance restrictions
This may turn into two boards since the RAMPS support and the other features really don't go together well.  If you're using a RAMPS board, you probably don't care about encoders, and if you need encoder inputs, you probably aren't using a RAMPS.

So far, this board is not past the planning stages, although a lot of work and thought has gone into the choice of pins for the I/O.  Note that if you are not trying to do encoder inputs or support EPP communications, the pin assignment for step/dir, limit switches, and the like is pretty much arbitrary.  The PRU and HAL code can read and write any available GPIO pins as readily as any other.  I'll work up a blog post about BeagleBone pinouts for motion control...in the mean time, if you're working on something and want my view on I/O assignments, just send me an e-mail.


CNC Machine Control Capes:

bbb_parport


Details
Designer Alex Joni
On Board Drivers0
On Board Driver TypeN/A
Off Board Drivers6
Off Board Driver TypeDB25 / headers
Analog Inputs (thermistor)4
Digital Inputs (limit switches)up to30*
Heater & Fan Outputs ( High power / Low power)0 / up to 30*
Additional features: I2C ADC for analog inputs

* There are 30 digital I/O which can be independently assigned as inputs or outputs, 12 are typically assigned to the 6 step/dir axis signals, leaving 18 for use as general I/O.  The PRU HAL code can arbitrarily assign any number of GPIO, step/dir, and PWM signals to these 30 I/O pins.

Where to buy: http://webshop.juve.ro/

Additional details are available on Alex' blog page.


Xylotex BareBonesCNC



Details
Designer Jeff Pollard / Xylotex
On Board Drivers0
On Board Driver TypeN/A
Off Board Drivers4+
Off Board Driver TypeDB25 / IDC26
Analog Inputs (thermistor)0
Digital Inputs (limit switches)5
Heater & Fan Outputs ( High power / Low power)0 / 4
Additional Features: DB25

Where to buy: Xylotex
Additional details are available here.

Xylotex BeagleCNC BBB_DB25/26



Details
Designer Jeff Pollard / Xylotex
On Board Drivers0
On Board Driver TypeN/A
Off Board Drivers5+
Off Board Driver TypeDB25 / IDC26
Analog Inputs (thermistor)0+
Digital Inputs (limit switches)4 + EStop
Heater & Fan Outputs ( High power / Low power)0 / 3 + Enable
Additional Features: SPI interface available as an option, replacing 4 I/O pins on the DB25
BBB_DB26 includes an IDC header with  16 additional I/O pins, including 6 analog lines and 10 digital signals which can be used as GPIO, extra drives, encoder inputs, etc.

Where to buy: Xylotex
Additional details are available here.

Probotix PBX-BB



Details
Designer Len Shelton / Probotix
On Board Drivers0
On Board Driver TypeN/A
Off Board Drivers5
Off Board Driver TypePBX Headers & screw terminals
Analog Inputs (thermistor)0
Digital Inputs (limit switches)5
Heater & Fan Outputs ( High power / Low power)0 / 5
Additional Features: RF Isolated Inputs and Outputs

Where to buy: Probotix

PMDX-432 K9 CNC I/O Cape


Details
Designer Practical Micro Design
On Board Drivers0
On Board Driver TypeN/A
Off Board Drivers4+
Off Board Driver TypeIDC26/DB25
Analog Inputs (thermistor)4
Digital Inputs (limit switches)18+
Heater & Fan Outputs ( High power / Low power)0 / 8+
Additional features: RS-485 port, buffered I2C bus, and more!
Video on YouTube

Where to buy: PMDX


Furaday Isolated Cape


Details
Designer Robotise.It
On Board Drivers0
On Board Driver TypeN/A
Off Board Drivers4+
Off Board Driver TypeAnalog/PWM
Analog Inputs (0-5V)4
Digital Inputs (limit switches)8
Heater & Fan Outputs ( High power / Low power)0 / 8
Isolated I/O, 4 encoder inputs + 4 separate optocoupler outputs, designed for machine control using servo amplifiers or VFD with a BeagleBone.

Where to buy: Robotise.It


Necitec CNC Cape


Details
Designer Necitec
On Board Drivers0
On Board Driver TypeN/A
Off Board Drivers4
Off Board Driver TypeStep/Dir
Analog Inputs (0-5V)0
Digital Inputs (limit switches)16
Heater & Fan Outputs ( High power / Low power)0 / 8
Isolated inputs, buffered outputs.

Includes a pre-configured uSD card with Machinekit installed, sample configurations, and a setup program for adapting system parameters.

Where to buy: Kickstarter


Optocape CNC Cape


Details
Designer Dean Gouramanis
On Board Drivers0
On Board Driver TypeN/A
Off Board Drivers4-6
Off Board Driver TypeStep/Dir
Analog Inputs (0-5V)4
Digital Inputs (limit switches)10
Heater & Fan Outputs ( High power / Low power)0 / 15+4
Design files on github
Isolated I/O
4 solid-state-relay outputs (500 mA)
12-bit color LVDS video
Isolated serial port (UART4)


Where to buy: Tindie


Dual Motor Controller Cape




Details
Designer
Exadler
On Board Drivers2
On Board Driver TypeDC Motor
Off Board Drivers0
Off Board Driver TypeN/A
Analog Inputs (thermistor)0
Digital Inputs (limit switches)0 + 2 Encoders
Heater & Fan Outputs ( High power / Low power)0 / 0
NOTE:  This cape is controlled via the I2C bus, so it is not really appropriate for conventional LinuxCNC axis control.  It should be possible, however, to use this cape for ancillary functions (tool changers or similar) that do not need fully coordinated motion, or for slow feed rates.

Hardware details and software details are on github.

Where to buy: Exadler Technologies


LPT-Cape / Io-1




Details
Designer
Jon Pry
On Board Drivers0
On Board Driver TypeN/A
Off Board Drivers2
Off Board Driver TypeIDC26/DB25
Analog Inputs (thermistor)0
Digital Inputs (limit switches)10
Heater & Fan Outputs ( High power / Low power)0 /24
This cape is a true parallel port for your BeagleBone, supporting 5V signals and the standard x86 style PC parallel port register interface.  Uses only 12 pins on the BeagleBone expansion headers.

This board should also allow interfacing to 'smart' parallel port devices, such as the Mesa 7i43, with minor updates to the LinuxCNC HAL drivers.

Software details are on github.

Where to buy: Not yet available


K9 SmorgasBoard


Details
Designer Practical Micro Design
On Board Drivers4
On Board Driver TypePololu Sockets
Off Board Drivers8+
Off Board Driver TypeDB25
Analog Inputs (thermistor)2
Digital Inputs (limit switches)4+
Heater & Fan Outputs ( High power / Low power)2 / 2
Additional features: Thermocouple input, Encoder input, RS-232 and RS-422 ports, buffered I2C bus, and more!

Where to buy: This board is not available for purchase.  It was a proof of concept design and is now available as the PMDX-432 K9 CNC I/O Cape listed above.

50 comments:

  1. please indicate if cape is simple i/o or limited to motor control
    ( would still like a simple i/o cape for standalone Hal )

    If meant for motor control,
    please identify the motor tech type.
    Stepper or Servo
    or gawdawfulmisbegottenbastardizedinbetrweeny-thing :)

    thx Tomp tjtr33
    ( looking for real servo encoder 'cape' )

    ReplyDelete
    Replies
    1. What about Furaday cape:
      http://www.robotise.lt/3-hardware-for-beaglebone
      ?
      Could someone please it too?

      Delete
  2. There is nothing for the BeagleBone that works with true servos (yet). That is what I would like to see designed, or will do with the CapeR board if no one else beats me to it.

    ReplyDelete
    Replies
    1. This comment has been removed by the author.

      Delete
    2. Maybe Furaday cape would clasify?
      http://www.robotise.lt/3-hardware-for-beaglebone
      ?
      Could someone please add my cape too?

      Delete
  3. Here's one for controlling motors for a robot (or other purposes - controlling a robot is what I'm planning on using it for).
    http://exadler.myshopify.com/products/dual-motor-controller-cape-dmcc-mk-6

    ReplyDelete
    Replies
    1. That looks like a nifty little board, but I'm not sure it can be made to work with LinuxCNC. Do you know where to find any specifications or design files? Looking through the driver software, it looks like it's controlled via I2C with updates every 200 mS, which will be too slow to do coordinated CNC (at any sort of reasonable speed).

      Delete
    2. I'm the creator of the board. You can find the full schematics and PCB layout on https://github.com/Exadler/DualMotorControlCape. The software can be found at https://github.com/Exadler/DMCC_Library. You are correct that it is controlled by I2C, and I'll actually be trying really soon now to get it working with LinuxCNC - I'm trying to CNC convert my 7x10 mini Lathe to CNC, so I'll be diving into the Linux CNC issues and testing the update speeds. I can't promise anything, other than I'll find a way to get it working and details/results will be in my blog at http://exadler.blogspot.com

      Delete
    3. Thanks for the details Paul! I've added them to the board entry. Let me know if you get it working with LinuxCNC, or if you need help with the HAL driver, and feel free to email me directly with questions.

      Delete
    4. Thanks for the offer to help! I'll probably take you up on the HAL a little later after I get going on the LinuxCNC!

      Delete
  4. Not to knock on Xylotex but there are $100 drivers (massmind TB drivers) that blow them totally out of the water. I had one of them and with my new drivers I'm getting WAY faster and better results with no stalling.
    So I have a question past my little quip about Xylotex :)
    I just buy a cape and a Beagle Bone black then I'm set?
    MY LinuxCNC machine is old and is starting to glitch.
    So far it's wreaked $45-$100 of wood (depending on supply) and I'm getting mad.

    ReplyDelete
    Replies
    1. Two years of playing around and I'm over the bulky old computers.
      http://imageshack.us/a/img827/1489/xil9.jpg
      http://imageshack.us/a/img29/3197/0bbi.jpg
      http://imageshack.us/a/img843/8021/8wkj.jpg
      http://imageshack.us/a/img829/8254/3ulm.jpg

      Delete
    2. "I just buy a cape and a Beagle Bone black then I'm set?"
      LinuxCNC and my MachineKit image are working well, but anyone using it at this point is definitely an early adopter. If you are looking at using one of the CNC style capes with a DB25, it will PROBABLY work with the MachineKit image with minor tweaking. Most of them are based on the same pinout used by the BeBoPr-Bridge. If you are familiar with LinuxCNC and it's ini and hal files, you shouldn't have too much trouble.

      Of course, you do also need the other bits for a full system: Power supply, stepper drivers, eStop chain, an actual mill or router, HDMI monitor, keyboard, etc. Just a BeagleBone Black and a cape won't do much completely on their own! :)

      Delete
  5. Alex Joni has started a page on the bbb_parport board:

    http://juve.ro/blog/projects/01382040758

    ReplyDelete
  6. Hi Charles,
    Jeff from Xylotex here. Just to let you know that my BBB_DB25 boards is available (and has been for a while).
    Thanks,
    Jeff

    ReplyDelete
  7. Great news, Jeff! I'll get the page updated.

    ReplyDelete
  8. Charles, the Replicape is now available for sale in case you want to update your overview page. Go ahead and grab the picture as well if you want : ) http://www.thing-printer.com/product/replicape/

    ReplyDelete
    Replies
    1. Thanks for the ping, Elias! I had gotten halfway through updating the list when I got sidetracked and forgot to finish. I've re-organized a bit, and updated the Replicape entry. Let me know if I made any goofs.

      Delete
    2. Looks good, Charles! I'm eager to see how it performs with a LinuxCNC image. As you may know I'm working on an alternative implementation that uses the PRUs instead, but if LinuxCNC turns out to work better, that might become the standard software.i If I have your blessing, of course..

      Delete
    3. LinuxCNC is fairly "heavy", but shines in setups running closed loop or with complex kinematics. For a typical 3D printer with steppers and trivial kinematics it probably doesn't matter too much. Even linear delta machines have "simple" kinematics (no trig functions).

      You are, of course, welcome to use LinuxCNC and any of my work you find useful. Let me know if you need help trying anything out.

      Delete
  9. Charles, the BeBoPr++ is now available for sale (and shipping). I've started a new repository on github for the BeBoPr++: https://github.com/modmaker/BeBoPr-plus-plus . The only real thing there now is the downloadable manual.

    ReplyDelete
    Replies
    1. Great news Bas!
      Congratulations!!! ...and let us all know how we can buy one!

      Delete
  10. we just about to launch a new CNC controller board for the BeagleBone. Check out our project page on tbone.cc or our Indiegogo camapign at http://igg.me/at/t-bone/x/4731310

    ReplyDelete
  11. Are all 6 of the CRAMPS steppers driven from the PRUs? Wondering if it would be suited to drive all legs in parallel of a hexapod.

    ReplyDelete
    Replies
    1. Yes, all 6 steppers are driven by the PRU. The PRU code can be configured to drive an arbitrary number of step/dir channels, limited mostly by available I/O pins and somewhat by execution time (maximum desired step rate).

      Delete
  12. Hi Charles,

    There is available a PMDX cape:
    http://www.pmdx.com/PMDX-432

    Video: http://www.youtube.com/watch?v=VQDENqMeVjA

    Many thanks for you work!!

    Best regards:
    Janos

    ReplyDelete
  13. Im foto payudara Wondering if it would be suited to drive all legs in parallel of a hexapod.

    ReplyDelete
    Replies
    1. This comment has been removed by the author.

      Delete
    2. This comment has been removed by the author.

      Delete
  14. This comment has been removed by the author.

    ReplyDelete
  15. Hi Charles,

    I was thinking to develop 3 axes machine wood mill using CRAMPS available with PICO-Systems.
    My question is I alredy have stepper motors of 5 amps rated.How can I connect them to CRAMPS board .I do have stepper drivers but not POLOLU Style .

    ReplyDelete
    Replies
    1. Please see the "Support" link at the top of the page.

      The CRAMPS board is not really setup to drive off-board stepper drivers. The step and direction lines are directly driven by the BBB, which doesn't really have enough current capability to drive the opto-isolaters typically used for stand-alone stepper driver inputs.

      That said, you could fairly easily make a Pololu-sized board with some 'HCT buffers (or similar) that would drive the step/dir/enable lines (plus ground) to the 4-pin stepper motor connector. You could then wire your stand-alone drivers to the stepper headers.

      Or you could use one of the capes that has DB25 connectors and a standard parallel-port breakout board to connect to your stand-alone drivers.

      Delete
    2. Hello Charles. Could You tell me what exactly I needed to build my own 3d printer or cnc milling machine based on BeBoPr++. Where to buy BeBoPr++ ?
      Greetings.

      Delete
    3. In addition to the BeBoPr++, you will need stepper drivers (Pololu style or outboard) and the rest of the CNC Machine/3D-Printer.

      Sadly, I recently learned that Bas Laarhoven has passed away, and the only way I know of to get boards is directly from him. You may be able to find an original BeBoPr board built by Circuitco in stock somewhere, but I have no idea if or when new BeBoPr++ boards will be available. :(

      Delete
    4. Is it absolutely necessary to use the bridge BeBoPr, or I can simply connect BeBoPr circuit via wires to the BeableBone Black?
      Greetings for all NewYear:)

      Delete
    5. You can manually rewire the signals, but it's easier if you use the bridge board with the (original) BeBoPr. Alternately, if you don't need to use the eMMC and/or HDMI, you can rewire a limited number of signals (or use the BeBoPr as-is if you can forgo both the eMMC and HDMI interfaces on the BBB).

      Delete
  16. There is an other one available at http://halaser.eu/e1701p.php

    Not only a cape but a full BBB-based controller for CNC axes plus laser control.

    ReplyDelete
  17. I am happy to announce Furaday Cape v1.2 is available now!
    Now all 8 Digital Inputs are ready to use.
    Please update the number of DI and add 4 separate optocoupler outputs. Thanks!

    ReplyDelete
    Replies
    1. Great news! I updated the entry, please review and let me know if you need any changes.

      Delete
  18. hello everyone! we are looking for a few good beta testers for our new beagle bone based CNC control breakout board for mills,lathe, router and other specialty machines. requirements are that the beta tester has good computer,electrical and communication skills and machine ready to install the new control system onto and the time to devote to the project start to finish in a timely manner. we will supply breakout board, power supply, basic cables and unlimited tech support in return for product feedback, photos, videos of your machine. if you are interested send me details at cnckeith@gmail.com

    ReplyDelete
  19. Is anyone still updating this page? Nothing with a parallel port still exists and I need one for my g540

    ReplyDelete
    Replies
    1. I still do updates, but there hasn't been any news for a while. The DB25 capes never really took off in production, so tend to be hard to find. You can wire something up pretty easily with a BBB prototype cape, all you really need is a couple TTL style buffer chips to get a bit more drive and protect the BBB I/O pins.

      Delete
    2. This comment has been removed by the author.

      Delete
    3. what about the BareBonesCNC cape? http://xylotex.netfirms.com/OSCommerce/catalog/product_info.php?products_id=146

      Delete
  20. I'm having the same problem. Do you know of any multiple parallel port capes? Smorgasboard seemed to have 3, but never came into production.The bebopr++ and pmdx seem out of production. Would cramps or the probotix work with a g540? I'm looking to drive 8 axis and at least two heaters/spindle. Any suggestions?

    ReplyDelete
  21. It looks like another parallel port cape is now available.

    https://cnc4pc.com/c70-beaglebone-black-motherboard.html

    ReplyDelete
  22. Thank you guys so much for breathing new life into LinuxCNC and maintaining this list! Just popping in and subscribing to updates.

    ReplyDelete
  23. Hi everybody,

    I have built a 3D printer with two extruders myself and since I already have a Beagle Bone Black controller I used this controller (BBB with a BeBoPr ++ cape.
    My question is :
    Which firmware is best for my case (3D printer with 2 extruders using BBB controller? Has anyone tried with Marlin or RRF with BBB !?

    Thank you in advance

    ReplyDelete
  24. You can find images and info on the BareBonesCNC board by Xylotex here:

    http://xylotex.netfirms.com/OSCommerce/catalog/product_info.php?products_id=146

    ReplyDelete