More PCBs - another gerber to g-code converter

I have been trying out the free online tool, Carbide Copper, for gerber to g-code conversion, the app is pretty basic and has a limited tool selection but it is a lot easier to use than Flatcam and it seems to be quite good for quick PCBs.

It produces a combined g-code file for the sections you select and to use in Easel this has to be edited into separate files for tracks, holes and outline etc. It is pretty obvious where to break up the file as there are headers like “( Contour )” at the top of each section.

The preamble is not suitable as it is intended for the Carbide mill and I replaced everything before the first G0 with a known good bit from Flatcam:
G0 Z3.0000
G4 P1

And at the end make sure it goes to a safe z height and remove the M30:
G0 Z3.000

The only other thing to watch with g-code from this app is that some instances of multiple commands on a line are ignored by Easel. Not really knowing anything about g-code I found a work around by trial and error and some google fu.

I found that Easel skips a line like this:
G01F200X23.957 Y23.957

But if spit it onto 2 lines it works, so this is OK:
X23.957 Y23.957

So make sure you use the simulation in Easel to check the file first.

Now I just need a software guru to come up with a Post Processor so I can do away with the manual editing.



Upload the Post Processor you are using here. I’ll take a look at it.

Some are easy to change, and some are not.

I am currently editing the file produced by Carbide Copper by hand so there is no Post Processor to upload.


Does the program you are using support post processors, or are you asking someone to write a program to process your output file so you don’t have to do it by hand?

@gaz99 Try changing the G01s to G1s and G00s to G0s. You can just do a “replace all”.

Grbl accepts either format.

As far as I can tell the program does not support the adding of a post processor so it would have to a stand alone program to do what I am doing manually.

Writing something like this is beyond my capabilities, I’m a hardware guy, software is a type of magic that other other people do !!

Also, it’s not like I am making dozens of boards a week so the manual method is not a big deal.


I did some testing (playing) and found this:

This is the line that doesn’t work correctly:
G01F200X23.957 Y23.957

This also doesn’t work correctly:
F200X23.957 Y23.957

If the G0F200 commands are on a separate line it works fine:
X23.957 Y23.957

If the (extra unnecessary)F200 command is removed it works fine:
G01X23.957 Y23.957

So I all I have confirmed is that I don’t know enough about g-code to know what is causing the issue.

Grbl also accepts words and values without spaces and in that order. The UIs to send the gCode are not always as accepting. The issue is not a GRBL one or a gCode one.

What version of grbl are you running?

I’m running version 1.0c and that command works fine on my machine using UGCS 1.0.9

Easel…G01F200X23.957 Y23.957 should be accepted. Looks like Easel wants the F word at the end of the line, but it shouldn’t matter.

I using Easel on a Carvey, not sure what version of GRBL but I assume the latest available as the machine auto updated the firmware a couple of months ago.

@gaz99 The problem is with Easel. You’ll just have to fix the file by hand with that workflow. Shouldn’t be too much though…a start block, and end block, and a find and replace all of the G01F200 to with just G01, or, looking at the output, you could remove the entire G01F200. And don’t forget to remove or comment the tool change commands. the Carvey uses gCarvin 2.0.0 which is a fork of grbl…I think it’s current up to 1.1, but I’m not 100% on that.