In this blog post, I will present you my latest project: The first open source hardware (OSH) parallel port cape for the BeagleBone.
The goal of this project is to make Machinekit easier to use for a broader audience and to provide a turnkey control solution for CNC machines.
The Operator GUI will run on Windows, Linux, Mac, and Android.
New office and equipment
Recently, I re-discovered my interest in creating electronics. Since I studied electronic engineering I have the background to design and develop electronics, but in the recent years, I have been more involved in writing software.
A major factor in my rediscovery of electronics engineering is definitely my recent move into a new co-working space, the Factory Hub in Vienna. The hub is primarily targeting startups and entrepreneurs working with hardware.
Equipment to get started with electronics engineering is usually expensive when you are starting out, especially if that's not your main profession. However, the Factory Hub provides shared access to all the equipment to prototype and build electronics.
Moreover, I share space and equipment with the Apertus AXIOM team which further fostered my interest in open source hardware.
Uniting Machinekit and Hardware
In the last years, multiple people created BeagleBone capes for Machinekit. Some to be used with 3D printers and others to be used to build CNC machines.
However, what's in my opinion missing is a good turkey or semi-turnkey solution. Pretty much all capes for Machinekti that I have seen so far are either targeted for a specific application (e.g. inside a product) or lack software support at all.
Therefore, I have the idea of bringing it all together. I have been working on the software side of Machinekit for several years now and I also, have a background in electronics engineering - so why not create something that brings software and hardware together?
I decided to start by creating something that is generally useful when it comes to Machinekit. A cape that works as an interface for parallel port (DB25) and IDC/HDR26 connectors.
This cape should also serve as my personal prototyping platform my project of bringing electronics, software, and mechanics together in one easy-to-use package.
A first Prototype
In the last few weeks, I have been working on the first prototype for this new cape. Including schematic design, sourcing of parts and layouting the PCB.
Last week I finally received 3 purple PCBs from OSH park.
And on Friday I assembled them for testing.
As you can see, I decided to use IDC26 connectors on the cape itself, with the option to use IDC26 to DB25 adapters. The idea behind this design is to make panel mounting of the DB25 connectors possible.
As probably every prototype, the design is not perfect at the moment. Especially the placement of some components is suboptimal when it comes to including the PCB inside a housing.
However, I tested the design and it works driving a small CNC mill.
Becoming a Semi-Turnkey Solution
The idea of this project is to build a semi-turnkey solution based on Machinekit. The device will ship preinstalled with Machinekit and some example configurations.
The GUI will be based on QtQuickVcp and run on Windows, Linux, Mac, and Android. The great thing about the BeagleBone
is that it works plug and play, no need to install anything (except a driver on Windows).
This device should give users a far lower entry barrier for using Machinekit and most importantly it will be ready to be used in other products.
Before I can start producing an selling the cape, as well as the turkey solution (any ideas for a name?) following things, need to be completed:
- Another iteration of the layout and component placement.
- Finding a suitable housing.
- Creating panels.
- Releasing the design on GitHub.
And of course, I also need to release my new webstore.
In this blog post, I outlined my recent work on a new OSH cape for the BeagleBone.
Moreover, I explained my intentions behind the project and what further steps need to be completed before I can start selling the new hardware.
I hope you have enjoyed this blog post and please stay tuned to hear more.
Great job !! How about opt isolation since some older machines use 5 or more volts
Good point. I'll consider opto isolation for a potential breakout or adapter board. 5V volts should be fine for the level shifters.
I have a Xylotex BBB_DB25/26 cape. I've had to wire up an adaptor board that intercepts one of the pins from the DB_25 and connects to two other pins on the 26 bin ribbon connector in order to provide a quadrature encoder for Machinekit BBB operation of a lathe. The problem with your adaptor is it still requires some sort of Break out Board (BoB) that will interface to your adaptor cape. Which BoB? How many different BoBs will your board interface to?
I think you'd better off designing a cape with sockets for the BeagleBone Black and terminal strips and relays like a PMDX-125 which is what I use to connect a PC with MACH3 to my CNC Router.
The PMDX-125 is designed for directly plug-in of a USB SmoothStepper. set up jumpers so you have either the A axis stepper for a mill or quadrature encoder for lathe operation. A few relays for control of pumps. Spindle velocity control. Etc.
The board is compatible with the I/O daughter boards from MESA electronics. I also plan to create matching break-out boards with IDC26 connectors and optocouplers for different applications.
I also will consider additional break-out boards as needed, but I don't want to combine the cape and the break-out boards in one package.
Thank you, Jon, and repetitive point deleted.
Hi MK ... For years I have been using a CNC setup which I made - a sort of ornamental lathe as it were to create decorative wood and other products. There is a rise and fall dividing headstock, X&Y - like lathe slides and any other slide one might affix on the cross slide. It evolved from a system called Compucut made here in UK back in 1991. The ethos was to make available to 'men in sheds' (women too) cheap CAD CAM. It was designed to use old laptops by creating a partition, installing full DOS and running in that in real time. The system used HPGL based files for machine driving via printer port DB_25. Needs 5V signals to stepper drivers. It works well. However old computers tend to die and so I am contemplating buying a BBB and suitable cape with 5V outputs to retain the stepper drivers. My present system in fact has two ports and so could potentially run six steppers. What interests me is getting the necessary bits to run without a huge learning curve and hours of frustrating impenetrable glitches. (when I first started with the HPGL the end command was always SP0; that is select pen zero as I now know. Took me ages to work out why SPO was flagged up as a code fault) Bracing m'i self for updating setup without too much trauma to m'i aged brain. (i.e. semi turn-key)
The aims you state for your cape seem just what's needed. Any idea when these will be available?
How about calling it Eschercape ... does amazing things in complex dimensions...
Thank you for your comment. Eschercape is indeed a good idea for the name. I currently have another test board in production, if everything goes as intended the board should be available in approximately 1-2 months. If you need something earlier just let me know. I can send you one of the pre-production boards.
Super excited for this! Just bought the digital files package for the now defunct Xylotex BBB_DB25/26 cape cape (my soldering experience is limited and cant wit for an off the shelf solution!
Hi Mk ... Not in a rush as have recently moved house and still sorting self,possessions and widgets. But thanks. Shall keep an eye on progress. As I envisage the possibility - as I may relate to its use, having just bought a BBB industrial board on e-bay,
I connect the 'eschercape' to BBB - attach bob, mouse+keyboard as necessary even an LCD cape, plug printer cables in and attempt to grapple with outcome ... Machinekit can address XYZ, ABC - how many of these axes will be available on your cape?
Also I think I will probably create g-code files in the warmer part of new abode and transfer these to the BBB+Cape setup on mill in workshop using a memory stick - edit as necessary the inevitable glitches etc .... Is that a mode your cape will support?
The QtQuickvcp you mention I may embrace but not as yet familiar with it.
I have a little 3axis desktop mill I can experiment with in the warm. Workshop presently in chaos. It was a 19thC Carpentry business and local coffin makers... but m'i project is very much alive!
Hope all goes well with 2nd iteration...
Absolutely need this type of Cape. Have a gecko g540, would like to add another. This seems like a much better solution than any other option.
I've worked at many board fab companies, would like to help in any way I can. Adding a third parallel would be nice and completely mess the form factor, but people that require that might opt for ess or uss.
I'd definitely like to know how far you are from production and where I could get one.
The cape itself is completed. However, I haven't found time to work on a turnkey solution. If you want a sample board, please contact me via the feedback form.
It looks really great. I have been looking for something like this for a while. Most cnc capes for the BBB are not available any more.
I considered trying to make one, however it looks to be quite a daunting task.
Making one isn't as hard as it looks like. You only need a decent solder iron and a steady hand. I also recommend a hot plate as in the title picture, as it makes working with the SMD parts easier.
Do you have the board drawings and parts list available?
I will give it a go.
I just found you repository on Git.
I will try to make one.
Please sell these completed 😀
I will consider it. In the meantime, you can use build one yourself or if you contact me I can send you one assembled.
Where are at in the process
I have a BBB and I am interested in building a 3D printer