Problem with GERBER file

I have a GERBER file downloaded from a MAKE magazine. It loads, but with errors. Can anyone help me to correct them please.

Have you tried to load them into online viewers? GerbView may, or may not, be at fault here.

This works very well for me: https://gerber-viewer.ucamco.com/

What are the errors?

This message repeats 4 times

RS274X: Invalid GERBER format command ā€˜D’ at line 2: ā€œ%FSDAX23Y23*%ā€

GERBER file ā€œ/Users/kltm/Downloads/$tempfile.tmpā€ may not display as intended.

Then

Error reading EXCELLION drill file

Tool definition shape not found

Tool definition shape not found

Then

Messages

Skipped file ā€˜__MACOSX/._Archive’ (unknown type).

Skipped file ā€˜Archive/R-Tronic 8-Bit.inf’ (unknown type).

Skipped file ā€˜__MACOSX/Archive/._R-Tronic 8-Bit.inf’ (unknown type).

There are a few non gerber related files there causing some errors:

.tmp
._Archive
.inf

I’ve tried deleting the .inf file, but I can’t identify ._Archive or .tmp

As a new user I am unable to upload the original file unfortunately. I’m not sure I’m allowed to refer to the original url to the download

What do you want to do with these gerber files? Gerber has a long history, and in the beginning there were many incompatible dialects. I do not know how long makezine (I guess you referred to that) exists, or how old that project is. Gerber files are human readable and often contain the name of the software (and version?) that the file is made with. Using an online gerber viewer (as already mentioned by RaptorUK) is indeed also an option. If you just want to manufacture the same PCB, most PCB fabs also have online viewers so you can see whether your file works with their software.

If you want to turn this into a KiCad project, then it does not matter much if some aspects of the file are broken. The most important parts are the tracks and the PCB outline. Quite a while ago I made a tutorial for:

RS274X: Invalid GERBER format command 'D' at line 6: "%FSDAX35Y35*%" (#13766) Ā· Issues Ā· KiCad / KiCad Source Code / kicad Ā· GitLab.

2 Likes

I loaded the gerber file linked to in the above gitlab issue (Closed, from 2023) into the Ucamco viewer, and it appears to be a valid Gerber X1 file. But I’m not sure what the meaning of that is. I’m also not sure about the intended goal of KiCad’s own gerber viewer. Is it only for viewing KiCad’s own gerbers for inspection, or is it intended to be a more generic Gerber viewer?

http://cdn.makezine.com/makezine/Archive.zip

Hi this is the Gerber file that I cannot seem to correct. I loaded it up to JLCPCB and it seemed to load ok eventually, but they have now come back and said ā€˜there are no top and bottom solder masks. I’ve tried recreating the schematic in kicad, but even that doesn’t help. I changed the filenames as advised by JLCPCB (gb0 to GKO) etc.

I’ve no idea what else to try. Can anyone else help please.

On itself, this question is a bit out of scope for KiCad, as it’s not a KiCad project…

Opening the gerber files in KiCad:

Looks like the R-Tronic 8-Bit.gb2 file is the top solder mask, and I do not see a bottom solder mask layer, but it is also a single layer PCB, and you could argue about what is the top or the bottom.

You can create a KiCad project from this with: Gerber Viewer / File / Export to PCB Editor. You wrote you already entered the schematic in KiCad. You can combine these to make it a complete KiCad project, and then create a new set of gerber files. I already posted a link to a tutorial on how to do this a few posts back. This is a fairly simple project, and it’s all quite doable, but it will take some time, especially if you also have to learn how to use KiCad along the way.

Pretty important argument to have and get right . . . not nice, or even possible sometimes, to solder through hole components from the component side. The OP Needs to figure this out . . .

I’m going against my (2025-09-12 05:36 UTC)’s resolution :zany_face: to conserve my time by leaving the small proportion of questions that I can answer to the capable 23/7 Answer Squad (I assume they need an hour per day for coffee and recharging batteries :wink: ). In this case they have not done due diligence. Nobody thought to read the .inf file. It contains this:

Circuit Wizard Gerber Export

Created : 25/09/2007 1:48:35 PM
Source  : Circuit Wizard 1.15 (20 Oct 2006)
Design  : I:\Projects\R-Tronic 8-Bit\Circuit and schematic\R-Tronic 8-Bit.cwz
Title   : 
Author  : 
Company : 

RS-274X (extended) Gerber export.
2.3 format, inches, absolute.
No zero supression.
Aperture table defined in Gerber file.

-----------------------------------------------------------------------------

File: "I:\Projects\R-Tronic 8-Bit\Circuit and schematic\R-Tronic 8-Bit.gb0"

  Board outline layer

  D-Code   Type
  D10      Circle .005
  D11      Circle .020

-----------------------------------------------------------------------------

File: "I:\Projects\R-Tronic 8-Bit\Circuit and schematic\R-Tronic 8-Bit.gb1"

  Bottom copper (solder side) layer

  D-Code   Type
  D10      Circle .005
  D11      Oval .120 .050
  D12      Circle .080
  D13      Circle .125
  D14      Oval .050 .120
  D15      Circle .020
  D16      Circle .010

-----------------------------------------------------------------------------

File: "I:\Projects\R-Tronic 8-Bit\Circuit and schematic\R-Tronic 8-Bit.gb2"

  Top copper (component side) layer

  D-Code   Type
  D10      Circle .005
  D11      Oval .120 .050
  D12      Circle .080
  D13      Circle .125
  D14      Oval .050 .120

-----------------------------------------------------------------------------

File: "I:\Projects\R-Tronic 8-Bit\Circuit and schematic\R-Tronic 8-Bit.gb3"

  Silk screen (component outline) layer

  D-Code   Type
  D10      Circle .005
  D11      Circle .002

-----------------------------------------------------------------------------

File: "I:\Projects\R-Tronic 8-Bit\Circuit and schematic\R-Tronic 8-Bit.drl"

  Drill hole layer

  T-Code   Size
  T01      .032
  T02      .050

-----------------------------------------------------------------------------

End of report.

So, armed with the mapping of the suffixes to layer names, I did these renames based on the Protel naming convention, Note, no solder mask layers.


gb0 → gm1
gb1 → gbl
gb2 → gtl
gb2 → gto

Then I zipped up the 5 files and fed it to gerbview:

I also fed the files to gEDA’s gerbv:

The error messages from gerbview you already know. Gerbv complained that there were no definitions for the drill hole sizes. (I think the .inf file has the diameters.)

Now I’m not going to even think about how to massage the files to be acceptable to a fabricator. This is a 18-year old project made with 19-year old software, so it is probably a time sink without guarantee of success. Do you really want to go down that rabbit hole?

You could start from the schematic, but the circuit design is equally old. Do you actually have a source for the MCU and the Picaxe dongle to flash it, and the toolchain, or is it expensive or even unobtainium? Fortunately the woodworking part of the project is still viable.

If you are really keen to make this project, do a respin using modern MCUs. I’m sure an Arduino board can handle this no sweat and you don’t have make a PCB. Certainly it will be more educational than making a blinky. For this you can get more ideas from Arduino forums.

And as mentioned, this is not a KiCad question, so I think this topic should end here.

1 Like

In addition to the detective work done by retiredfeline, it probably works if you create a KiCad project from those Gerber files, and then directly create gerber files from the KiCad project again (without any intermediate editing). But I also agree that it’s dubious whether it’s worth it.

The main goal of the KiCad Gerber viewer is to be very strict in ensuring that the KiCad output is properly Gerber standard compliant so that you can expect to get boards back like you want.

A reader for third party Gerber may want to be more lenient in dealing with old Gerber dialects. This makes it complicated to do both tasks.

2 Likes