KiCad Edge Cuts rejected by JLCPCB

I just had all my KiCad 5.1.6 designs rejected by jlpcb for “incorrect outline”. They keep saying that they can’t accept an ‘Edge Cuts’ file that shows a filled polygon; they seem to want an outline ONLY. I can toggle between fille/nonfilled in GerbView; but I can see no way to modify the Gerber file so that it it outline ONLY. What can I do???

How did you design your “Edge cuts” layer? It should consist of connected lines, and the resulting gerber is outline only.

Yes, I drew one continuous line around the perimeter after selecting “Place Zone”. I made sure that there were no intersecting lines, and that it was a perfect rectangle.

You shouldn’t use “Add filled zone”, you should use “Add graphics lines” or “Add polygon” on Edge.cuts layer

So, do you mean I should select “Line” under the “Place” menu rather than “Zone”?

Place > Line or Place > Polygon

I am using 5.1.6. This gives many choices under the ‘Place’ menu, including Zone, Line, Polygon, Circle, etc. I will try using ‘Line’ only; perhaps that’s what they want. Thanks you very much for yor help!

I wonder why KiCad accepts a zone without complaining in the DRC.


I just resent the files to jlpcb, with the Edge Cuts drawn with ‘Line’ instead of ‘Zone’. THEY ARE GOOD NOW!! Thanks for the help–you saved me!!
Yes, DRC should catch this!


You may not have had any edge cuts and the error message was unclear .

Use the 3D viewer as it is very good about annunciating edge problems .

1 Like

What is wrong with a zone?

Well it’s basically not what fabricators are expecting.

This is typically because the edge.cut is used by a CNC machine and thus this is the route it will take


Well, JLCPCB clearly does not expect this. However, I wonder whether this is a JLCPCB thing or whether this is general. (JLCBPCB seems to have a problem with many things!)
True, the profile will typically be routed on a CNC machine, but never directly from the edge.cuts file. The edge.cuts file is read in the CAM software, and the CAM software outputs the CNC files according to the fabricator’s equipment and preferences. The question is whether the fabricator’s CAM system likes the file.

I mean kicad should just deactivate all the tools except line drawing tools if the edge cuts layer is selected there, nothing but lines and maybe arcs if those get supported should ever be there. If you can’t make the mistake, there’s no need to check for it in DRC and slow DRC down for no reason.
I suppose you could copy into the edge cuts layer so maybe only check for weirdness in an extended check.

It’s not really a JLCPCB thing, the edge cut layer is supposed be be only the outline, not filled. This is true even in KiCad itself. Not sure what the 3D viewer and DRC make out of a filled edge cut, but they probably should show an error. (Or you should simply be prevented from adding filled things to the edge cut layer)

1 Like

Using ‘Place Zone’ instead of ‘Place Line’ whilst in "Edge Cut’ layer generates a filled polygon instead of a simple line. Actually this can be toggled back and forth in GerbView, but ‘Line’ is definitely what jlcpcb wants. It DOES make a difference in the 3D view; I was naive and thought the view with ‘Zone’ was normal; only when I changed it to ‘Line’ did I see the difference. Another anomaly I discovered was that GerbView doesn’t show your pours (earth or ground) but gerblook does.

Of course arcs are supported. That’s how you do rounded corners.

You write this ‘is supposed to be’. Could be. My question is actually what the basis for that supposition is. I could argue it is supposed to be filled, as the PCB is a solid object, not some thin outline. What width the outline?

As far as the Gerbers are concerned, the width of the lines on the edge cut layer doesn’t matter. Manufacturers will cut the boards so the edge of the board is along the centerline of the edge-cut lines. Their automated software is set up to find a continuous external outline and derive a tool-path that puts their routing/milling bit outside the board area with the edge of the bit on the centerline of this outline. If their software isn’t looking for a zone then their software doesn’t know what to do. Additionally, they also look for internal closed outlines for cutouts and derive a tool-path that puts the bit on the inside the cutout with the edge of the bit along the centerline of the cutout’s outline.

Now, for KiCad, the width of the outline does make a difference. At least for all versions that I’ve used up to 5.1.x. KiCad uses the edge cut lines in DRC to enforce spacing of traces and pads. You will get a DRC violation if the clearance of the trace/pad overlaps the edge cut line, just like it does if that same clearance overlaps copper belonging to a different net. Often the copper-to-edge clearance specified from manufacturers (to allow for milling tolerances) is larger than their minimum copper-to-copper clearance. This allows us as designers using KiCad to specify an edge cut line width that is twice the difference between our used copper-to-copper clearances and the manufacturer’s published copper-to-edge clearance.