PCB Eagle plugin pcb-gcode-

(Claude Pignol) #1

For those who are doing PCB (Eagle plugin pcb-gcode- is it possible to get G81 G82 working for drilling holes.

(Jonathan K) #2

Is there a reason you can’t bring your geometry into MeshCam from a DXF? It can recognize round pocket features as holes and drill them accordingly, and you can do similar in other CAM packages.

I’m not terribly familiar with Eagle’s output options, but you could draw the circle of the hole and have it treat it as a pocket/field to clear, and just set the depth through your material instead of just taking the top layer off the PCB.

If the Gcode is putting tool-paths on contours that you’ve drawn, rather than filling areas, then you’ll just need to account for your cutter diameter when making your circle for your hole.

What you may end up doing is several passes of features, each exported/extruded to different depths to achieve your PCB-engraving goals… one for regular trace-cutting, one for thru-holes.

(Rob Grzesek) #3

@cpignol - I’ll ask @Jorge to post the PCB-Gcode settings he used a long time ago. I believe you can have it generate G0/G1 moves instead of drilling ops. We can add G81 and 82 but I’m reluctant to add anything “optional” right now until we get the rest of it dialed in perfectly. Otherwise, there’s more code to wade through for bug fixes (which will be common for a while).

@UnionNine - If PCB-GCode will generate the gcode directly, there’s no need to involve MeshCAM. It actually does a really good job of doing isolation paths that do account for the tool diameter. MeshCAM could do it, but I think you’d have less control for an application-specific toolpath like that.


(Jorge Sanchez) #4

Now that I have a little more time it’s probably worth it to revisit our earlier PCB projects, but in the meantime here are the settings we used (a while ago) to mill PCBs using pcbgcode for Eagle.

If memory serves me right I had to manually add a M3S10000 command to the gcode to turn on the spindle, and M5 at the end of the file to turn the spindle off.

(Claude Pignol) #5

Thanks Rob,

I understand your position that you don’t want to inflate the code with optional feature. However for PCB, holes are not optional but mandatory. I have to found a way to do it. Making PCB is not a fancy project but a perfect application for desktop CNC machine. Tools are very small 1/64" or 1/100" doesn’t require power, but extreme precision. My objective is to do PCB for SOIC 16 components. It was the precision and the way the machine is design that make me choose the Nomad 883 despite its price.

What are my options:
Find a way for PCB-Gcode to generate a gcode for the drilling file that don’t use G82.as suggested by Jorge.
if doesn’t work
Write a program that post process the drilling file and replace the G82 line by appropriate G0/G1 commands.

(Rob Grzesek) #6

@cpignol- I don’t want to inflate the code with optional feature yet. The yet part is significant. Once we have a stable code base that has been thoroughly tested in the field, we can add everything we need to make it compatible with any gcode. That’s something we’re looking forward to.

That said, if we can’t find the pcbgcode settings to use g1’s instead of g81’s then it’ll be mandatory and we’ll add them now. I’ll look at it with Jorge today and get back to you.


(Claude Pignol) #7


Got the message. Thanks

(Jonathan K) #8

Rob, as usual, you impress me by your hard work to accommodate the variety of needs put forward. Much gratitude to you!


(David Perdue) #9

I’ve been able to mill a couple of the Eagle example PCBs. Here are some pictures. The first is the tutorial3 board. I’ve only milling the top side etch and the drill holes.

The second is the ATMEGA example. This picture also shows a ruler for size.

The last picture has the holes drilled and I sanded the board to remove the small copper burrs from the milling.

The Eagle ATMEGA shows the narrowest trace width as .008". I’m a newbie to Eagle, so I may have that wrong. I will post the settings I used.


PCB-Gcode style recommendation
(David Perdue) #10

I am using Eagle version 7.2.0 and pcb-gcode version Here are my settings. Your mileage may vary.

I think the “Use Simple Drill Code” eliminated my G82 problem.

The PCB milling bit I used was a EM2E8-0945-30VC from:

Flipping the board to mill the other side would be a lot easier if I knew how to drill a registration hole at 0,0. Maybe I can just measure the offset from 0,0 of a drilled hole near 0,0, flip the board, and use that as a way to locate 0,0 on the bottom of the board?


Nomad: Great results milling PCBs from Eagle
(Claude Pignol) #11

Thanks for the info, Very nice work!
I will try on my machine,

(Jonathan K) #12

For registration I would recommend cutting a pocket to fit your PCB in a piece of sacrificial material that you can affix down to the regular spoil-board. That way you can clamp your board into the pocket, and flip it easily and keep it registered well. Just make sure you plan for the location of your clamps—I’d recommend using short pan-head screws or SHCS (socket head cap screws) with some substantial washers to hold the material down. Just put the screws straight into the sacrificial material adjacent your pocket on the clamping sides.

(Claude Pignol) #13

Here are the results of the tutorial3. The circuit on the left was done with 1/64 inch tool. The circuit is not correct.
The circuit on the right was done with 1/100 inch tool. The difference of colors is due to the layer that tool has reached. The board is not probably perfectly square. I tested the isolation and the board seems OK. The copper has been removed everywhere it needed to be.
Lesson learn:
-I try first with engraving tools from inventables https://www.inventables.com/categories/bits-tools/milling-bits?utf8=✓&selected_filters[Type][]=PCB+Milling+Bits
It’s cheap but they don’t do the job: air cut after 1 cm.
-The quality of the cutting tool is essential and the smaller the better. I use a 0.010 2 FL SQ Micro EM from Kodiak
-The tape is very difficult to remove from the PCB. Need to find another way to secure the PCB on the wasteboard.
-Need to buy some EM2E8-0945-30VC used by David @perduedt

Thanks David for your post, I used the same parameters.

Milling small parts out of 1/8" cast acrylic
(Claude Pignol) #14

Just finish a prototype for a vacuum table for the Nomad. I use a waste-board and a small 12V vacuum pump. The first tests are good. I can install the board with precision and start the pump. The board, when the vacuum pump starts, goes down around 0.05 mm.
The drawback: can not drill the holes with a vacuum table :slight_smile:

Anybody with experience with holding down stock with a vacuum?
(Jonathan K) #15

Can you show the underside of your waste-board so we can see how you’ve routed the holes and fittings and such underneath? That’s rather clever!

(Claude Pignol) #16

Well you can do the design you want. I choose a simple design easy to mill. Of course you have to add a cover to seal it. I didn’t glue it so far to be able to clean it. I don’t have any filter in the vacuum line. I did some test with PCB and it works well. Start the pump and if the board doesn’t stick immediately on the waste board, gently push it down. Stop the pump and you get the board,

(Mark Bellon) #17

This is really nice work!


(Eawan razali) #18

nice job.
i have a problem with M06, tool change. i dont want to use it and not use it but i don’t know how to disable it. can you help me?


If it is drilling, you can turn drilling off (in the version I use) or remove it from the G-code. If it is the extra tool changes that PCBgcode puts in at the start, I cut them out by hand.

(Chris) #20

I have a mask/screen (bitmap) image of a board layout which I’d like to use to cut copper-board…


I was thinking of using meshcam to do a relief projection for a cutting path (black/white +/-Z), but curious if eagle or other tools can work with this? Main concern is in ensuring the final scale is correct or things like hole spacing will be off for socket pins.