I crave a CNC mill for trace-isolation milling prototype PC boards and I haven’t managed to get my CupCake filament deposition machine calibrated so I can use it. (Build platform leveling and filament feed are my current showstoppers. I’ll get back to it.)
I knew that someone had proposed mounting a Dremel in place of the CupCake’s extruder and that MaskedRetriever had modeled a mounting bracket; but curiously, I haven’t heard any more about using the CupCake for milling. Surely someone has done it; I just haven’t run across it.
Last night while I was asleep, the facts and the immediacy of the situation came together: EAGLE can output trace-isolation g-code and ReplicatorG reads g-code and drives the CupCake. Really??? PCB trace-isolation milling is that simple???
Yes. Yes it is.
I have plenty of sample PCB layouts I could use for testing and I knew exporting trace-isolation g-code from EAGLE required a User Language Program (ULP) but couldn’t remember the details. It turns out to be the marvelous PCB-GCode written by John Johnson, which is a free download from CadSoft’s user-contributed ULP page. Don’t be distracted by pcb-gcode-wizard; it’s a viewer you can use after running PCB-Gcode.
As noted in a forum post, if you have multiple directories in your ULP search path, PCB-Gcode only finds its supporting files in the first directory listed. Be sure to unzip it to the application ULP directory (not my first choice, as it’s overwritten every time a new EAGLE version is installed) or list your private ULP directory first (not my first choice, as that leads to a long directory-clicking experience every time you want to run an EAGLE-supplied ULP).
You begin by telling PCB-GCode a little about your milling machine, including positions and feed rates (and that ReplicatorG wants dimensions in mm). Once configured, running PCB-GCode is almost anticlimactic. It flashes some things on and off in your board layout while it figures toolpaths, then drops several
*.nc g-code files in your directory. ReplicatorG really likes g-code files to be named
*.gcode, so I copied the top-side file accordingly.
Testing with a Pen
To be sure PCB-GCode’s output was compatible with ReplicatorG, I first loaded the resulting g-code file and ran the CupCake with the extruder still mounted, far above the build platform. It appeared to be moving the platform appropriately.
Next I wanted to test that the orientation and scale were as I expected, and for that I needed a bit more permanent record of the movements of the machine. I used the extruder’s dino mounts to mark four hole positions on a stick, drilled another hole for a pen, mounted it on the Z stage, and had a $0 version of the $85 Unicorn pen plotter.
I attached a spare acrylic base plate from my heated build platform to the Y stage with double-stick foam, covered it with a cutout from a cereal box, and taped paper to that.
As shown above, EAGLE → CupCake pen plotter worked great! Orientation and scale were as expected on the first try; and I got to see the multi-pass isolation milling, which should ease some of my troubles with solder bridging over milled gaps.
For my milling attempt, I turned to the Handy Grinder (tastes like real octopus!) that I bought a loooong time ago with the intent of building a CNC drill/mill. The advantage it offers over a Dremel is that it’s nearly cylindrical — and almost exactly 1.75″ diameter — so instead of making a fancy mount, I used a hole saw to cut a recess in the side of another stick, lined the recess with a couple of strips of adhesive foam, and held the tool in place with zip ties.
Sure, it’s eccentric in the Z stage’s extruder hole; but with no homing system, I’m eyeballing the starting position anyway. Frankly, the tool doesn’t even need to be perfectly vertical — as long as the point of the milling bit is the first thing to contact the work surface, it’ll do the job.
Well, it would do the job if it were up to the job. Unfortunately, the Dremel bit isn’t the right shape for milling copper, as you can see by the ferocious blows (er, gentle scratches) it dealt the PCB; and the Handy Grinder collet’s runout is tremendous, as you can see by the mill marks that double back on themselves as the collet bent along with the PCB movement. Nope, this combination is not going to work.
That’s a whole lotta collet and not nearly enough bearing. That’s also a pseudo end mill that I tried after the V-grooving bit, with no better results.
And I was so close!
Looks like I need to go shopping for a new spindle and for a proper milling bit. Suggestions welcome, even if the right tool has a complex profile so I can’t simply use a hole saw to make a mounting system out of a stick.
I do think the method is viable. My Z stage is an early enough model that it can lift right off the nuts on the threaded rods; but I can add retaining plates if the right spindle and bit need more downward pressure than their own weight.