Copper zone distance to Edge.Cuts
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
KiCad |
Fix Committed
|
Medium
|
Jeff Young |
Bug Description
Hello,
In most PCB fabrication houses, the interpretation of the lines on the mechanical layer Edge.cuts is that the _middle_ of the lines indicates the exact position of the mechanical cut. In other words, the width of the line has _no significance_.
However, when filling a copper zone, KiCAD uses the clearance value with respect to the edge of the line instead of the middle of the line. I think this is bad practice because the width of the line should have no significance.
Moreover, the designer may need to specify more margin with respect to the mechanical edge than with respect to the copper patterns, because they are technologically two different things. Therefore, it is reasonable to distinguish the margin with the PCB edge and the clearance with the copper patterns.
Request: In the property dialog of the copper zone filling, I suggest to add a supplementary property named "Margin to Edge.Cuts". This margin would be interpreted with respect to the middle of the line (not the edge of the line).
Olivier
---
Note: In bug 1516244, Nicholas said he changes the line-width of Edge.Cuts in order to force zones from edges to the distance he wants. It may work fine, but it looks more like a software trick than really taking into account the technological difference between copper patterns and board edges. Also, some fabrication houses sometimes advise for a preferred line width for the Edge.Cuts layer, and
Reference example:
https:/
"Outlines are best shown using a small line – e.g. 0.50mm (20mil) wide – where the center of the line represents the exact board outline."
---
Application: kicad
Version: 5.0.0+dfsg1-2, release build
Libraries:
wxWidgets 3.0.4
libcurl/7.60.0 OpenSSL/1.1.0e zlib/1.2.11 libidn2/2.0.4 libpsl/0.19.1 (+libidn2/2.0.4) libssh2/1.7.0 nghttp2/1.27.0 librtmp/2.3
Platform: Linux 4.14.0-3-amd64 x86_64, 64 bit, Little endian, wxGTK
Build Info:
wxWidgets: 3.0.4 (wchar_t,wx containers,
Boost: 1.62.0
OpenCASCADE Community Edition: 6.9.1
Curl: 7.61.0
Compiler: GCC 8.2.0 with C++ ABI 1013
Build settings:
USE_
USE_
KICAD_
KICAD_
KICAD_
KICAD_
BUILD_
KICAD_
KICAD_
KICAD_SPICE=OFF
Changed in kicad: | |
status: | New → Triaged |
importance: | Undecided → Medium |
milestone: | none → 5.1.0 |
Changed in kicad: | |
assignee: | nobody → Jeff Young (jeyjey) |
status: | Triaged → In Progress |
Changed in kicad: | |
status: | Fix Committed → Triaged |
assignee: | Jeff Young (jeyjey) → nobody |
milestone: | 5.1.0 → 6.0.0-rc1 |
Changed in kicad: | |
assignee: | nobody → Jeff Young (jeyjey) |
A lot of board vendors have a different required margin from the board edge for internal and external layers (see e.g item 6 in the [copper layer design rules of Eurocircuit](https:/ /www.eurocircui ts.com/ pcb-design- guidelines/ #copperlayers))
I think it would be very handy to have design rules to specify this and have DRC check whether tracks and zones keep enough distance. Zones could use this information to have a different size per layer.
And yes, the margin for copper zones should apply to the center of edge cuts, not the side.
Note also that currently tracks currently act in a similar way. When using the interactive router, tracks keep their clearance + the edge cut thickness distance from the center of the edge cut. However, when increasing the thickness of the edge cut, DRC does not show any form of error.
Since this type design rule error is only spotted by the pre-production analysis on Eurocircuits, not the automated PCB checker, it can cost a lot of time.