Archive for October, 2008

CNC Router Software

I’ve already written about building my CNC router and making a sound proof box for it.  The last step I needed to do in order to make pretty pictures is the software. This post will walk you through the software I used to draw an image and then engrave that image into a piece of wood.

First I needed to draw a picture.  I didn’t want to use something like Photoshop or Microsoft Paint because I these are raster based programs and I wanted my image to be stored as vector graphics so that I could tell my CNC machine exactly what vectors to draw.  There are ways to transfer raster graphics to a CNC machine, but for more things using vector graphics works better.  Corel Draw is probably the most popular software for drawing vector graphics, but it was pretty expensive.  I found the free open source inkscape worked very well.  I drew a picture in inkscape called and saved it as HelloWorld.svg (I will be giving links to all the files I created).

After this I had to change all the text and other complicated objects into paths.  The reason for this step is because these objects are stored as complex mathematical models that later software would not be able to properly understand.  Converting objects to paths is just a single mouse click in inkscape, but if you forget to do this you’ll be scratching your head trying to figure out why some parts of your drawing are missing.  After this I saved the image in inkscape again as HelloWorld.dxf.  The reason I used the DXF format is because it’s a wildly used vector format that other software can understand.

At this point I’m done with inkscape and I start using Mach3’s LazCam.  Mach3 is the software that I use to control my CNC machine through my computer’s parallel port.  Setting this up takes some time and I’m not going to discuss this here, but Mach3’s website has some excellent video tutorials.

LazCam comes with Mach3 and it converts DXF files into Gcode that can drive my CNC machine.  If you’re looking for a free alternative to LazCam there is a free version of CamBam, but I haven’t used it much.  In LazCam I imported the DXF file.  This takes a long time (5 minutes on my mid-ranged PC) so after this I save it as HelloWorld.LCam so I can open it quickly later if I want to tweak something.  Then I adjusted the scale of my image and saved it out as Gcode (HelloWorld.tap).

In Mach3 I opened up the HelloWorld.tap file and my CNC engraver engraved the image into some wood.

There are a lot of steps there, but once you’ve done it a few times it’s not so bad.  It would be nice if it was easier, but I couldn’t find an easier way.  Maybe I’ll write some software myself someday to help speed this up a bit, but until I do I’ll just follow these steps.

Here’s a link to a video of my CNC Machine in action or you can watch the youtube embedded video below.  The linked video is better quality, but might take some time to download.

Comments (6)