I found a couple of old Datasouth printer chassis at a computer surplus place and the printhead mechanism supplied the linear bearings and 1/2″ hardened rods for the axes. I used the rods as is for the X and Y axes so they are quite long - about 18″. I discovered after building the machine that the rods will bend under load and the accuracy of the machine suffers as a result. OK for plotting but machining requires very stiff axes.
The rest of the machine is made from 3/8″ and 3/4″ MDF - its easy to work with, quite stiff and very stable. I have a few rough sketches of this machine but its very specific to the Datasouth parts so there’s not much point in reproducing them here.
Here is the X axis taking shape. The black parts are linear bearings (bushings, actually) that were cut off the printhead assemblies.

One of the side supports being drilled. I made a drilling template which helped keep the axis rods parallel. Its extremely important that the axes be accurately positioned and exactly 90 degrees from each other.

The X and Y axes are in place below. Here you can see the 1/4-20 threaded rod I used as leadscrew. Not nearly as smooth or accurate as a machined leadscrew but WAY cheaper. I dispensed with the “floating nut” as used on some other designs and simply embedded a T nut in the carriage of each axis. To keep the less than straight threaded rod from binding the free end rides in a fairly loose bushing. The threaded rod is joined to the stepper motor with a short piece of plastic tubing which serves as a flexible coupler. Small hose clamps keep the plastic tubing from slipping on the motor shaft.

Below - the completed machine doing some test plots on a piece of copper clad board. The brass tube is a crude pen holder. I’ve since made a better one shown below. I use Staedtler super fine tip permanant markers for PCB plotting - the ink is supposed to resist etching solution but I haven’t actually etched a board as yet. With these pens the machine will lay down a trace of about 30 mils on 50 mil centers - its good enough to do 50 mil lead pitch SMT packages. I estimate the accuracy of the machine to be about .005 inches while plotting.

Below is the new penholder. The pen is a friction fit in the white UHMW plastic block. The cast aluminum parts and X shaped springs originally held a SCSI tape drive’s read/write head. This assembly holds the pen vertical and the springs push it lightly against the plotting surface. Non-permanent ink is good for doing test PCB plots since it washes off.

A sample of a PCB plot. This example has pads for an 18 pin SMT package with .050″ lead spacing. Quality is pretty good but as you can see some traces are touching. This can be fixed by adjusting the autorouter to leave more space between tracks.

UHMW plastic was used to make a mount for a Dremel tool. Unfortunately the machine is not rigid enough for machining metal or hard wood - side loads on the X and Y axes cause the metal rods to flex and accuracy goes out the window. I haven’t tried PCB drilling yet but I’m pretty sure it will handle it since the load is mostly vertical.

The stepper controller board I designed. It uses programmable logic devices to implement 3 or 4 phases with half and full stepping. The chips on the left are ULN2003 peripheral drivers which are used in pairs to drive up to 1 amp per phase. The board will drive four stepper motors and interfaces to a PC’s parallel port. I originally designed this board for my CNC foam cutting machine which has four motors.

Sample engraving in aluminum. Most attempts were not this good. The letters are about 3/16″ high

Sample engraving in plastic. More consistent results than metal. These letters are about 3/8″ high.

I tried a bunch of different CNC software packages and while none of them had everything I was looking for the clear winner in bang for the buck was Dak Engineering’s Turbo CNC. Its a DOS program and the interface is pretty crude but it turned out to be the fastest and most accurate for my uses and its only $20 US. It doesn’t have the file import features I wanted so I ended up writing some simple file conversion utilities to so I can plot Gerber files etc. More info on my software page.
I use the freeware version of Cadsoft’s Eagle schematic/layout editor for creating PCB’s. This is a very good software package which includes excellent part libraries and an autorouter. The freeware version will do boards up to about 4″ x 3″ which will handle most small projects. Eagle produces a gerber file which can be converted to GCODE (the “language” of CNC) using my converter. You load the GCODE file into TurboCNC and plot.
I wrote another utility that reads a GCODE file and will do translation and scaling on the coordinates. I found this to be very useful for scaling parts up and down and in particular for setting the Z (up and down) axis coordinates. When plotting for example and the pen is not drawing you want it just off the plotting surface - there’s no point in having it move up any more than necessary. Try plotting a board with Z moves of 1″ and you’ll see what I mean - the plot will take at least 10X longer to complete than it will with minimum Z moves.