G-Code for RepRap by Chris MeighanG-Code for RepRap by Chris Meighan
Left arrow Right arrow Fullscreen

The RepRap project is a very exciting development in open-source hardware. It’s a machine for which the eventual aim is to have it make copies of itself, which is of course quite a tall order. It is a sort of computer-controlled robot which squirts out hot plastic in a controlled way, building it up in layers to make a solid object. When I read about this project I became very interested in its possibilities, particularly for artistic purposes. In theory it should be able to make almost any shape which can be imagined. The possibilities are endless!

As a stepping stone to building a full version of the RepStrap (the name given for a machine not built from self-generated parts, but designed to make the first generation of parts), I have built a 3-axis Cartesian robot from typewriter and inkjet printer parts, with the idea that I could attach a small drill to it in the meantime and use it to mill shapes from wood, plastic, maybe even aluminium. Building the thermoplastic extruder needed to start building things using additive manufacture looks like being a lot of work (and more importantly time), and so the subtractive (milling) option seemed a bit less daunting. More about my machine here.

The RepRap firmware has the ability to read G-code files, the standard format for controlling CNC machine tools. What my program does is provide a graphical user interface for this, allow the user to load a G-code program and run, stop, and pause this, as well as manually enter G-code. Additionally, there are jog buttons to allow manual positioning of the tool head before starting a program.
Suggested CAD software for producing .DXF files;

  • Solid Edge 2D – this is a free version of a commercial 3D cad system. It seems very much like AutoCAD in how it works, and for me at least took quite a bit of getting used to. I have also used it to produce the drawings for my pedal steel guitar. Of course it is only 2D and so it would be necessary to produce a layer for each height in the cut profile, and assign a Z-dimension to each when converting to G-code. This is possible using Ace Converter (below).
  • QCad – Open source, quite mature and powerful. Also only 2D. Works well.

I will try to add some more here when I get a chance to investigate some more. Suggestions most welcome!

Some utilities to convert .DXF to .NC (G-code) files, as needed by G-code for RepRap;

  • CamBam – Windows-only program (no luck with Wine so far) which is extremely powerful and almost a CAD program in itself. I have had good results with DXF files produced in QCad. Highly recommended.
  • Ace Converter – open source and seems to work pretty well, except that it does not insert feed speed commands; these need to be inserted manually. Windows only (works with Wine under Linux). Note that it seems to crash when reading large files.
  • CAD2CNC – an ancient DOS program which I came across on the internet (Google it). Seems to be quite powerful. It doesn’t work in Windows, but it may be possible to get it to work using VMware or something similar.

Another use for this machine may be milling PCB”s. I have found at least one piece of software which is free and can produce G-code from Eagle files as well as Gerber files. I have not yet tried it out with G-code for RepRap.

This software is GPL licensed (which means it’s free in all senses of the word).

A video of it in action can be seen at my three-axis CNC robot page.

Download G-code for RepRap from Sourceforge