I’m using kicad 7.0.7. I have some experience with other ecad tools but I’m new to kicad.
I have a HDMI connector foodprint that requires a cut-out.
I placed the cut-out on layer Edge.Cuts. The cut-out looks correct in 3D preview of the footprint editor (1st Image)
When I create the 3D of a PCB with the connector, the cut-out outside of the recangle Edge.Vuts of the PCB is inverted (For the 2D, only layer Edge.Cuts is visible) (2nd and 3rd image)
Sometime the cut-out is rendered, sometimes not. It can be different when the same footprint is used on a PCB: (4th Image)
I uploaded this PCB to JLCPCB. Their gerber previewer doesn’t recognize the cut-out
I added a comment about the cut-out and they corrected it: (5th image)
For this PCB it is mandatory that the cut-out is also present outside of the PCB. Else it would look like this:
(6th Image)
It would not be possible to assembly this because the cut-out is not big enough.
I had to combin everythign into a single image because I’m a new user:
Can you please explain what is incorrect?
I know from other systems that there are different layers for board edge and cut-out.
So when it’s not Edge.Cuts, which is the correct layer to place the cut-out?
In KiCad, the PCB outline has to be a correct shape. All lines and arcs on Edge.Cuts must match endpoint to endpoint. So no overlapping or crossing line segments.
I think that officially (according to KLC) there should be nothing on Edge.Cuts in a footprint. The easiest way for you to fix it is to move the Edge.cuts lines in the footprint to a user layer, and then draw Edge.Cuts lines on the real PCB over them.
Edit:
KiCad only has the Edge.Cuts layer for both the PCB edge and other cutouts. You can make a cutout or a slot inside the PCB, but they all have to be individual contours.
Thank you for that hint. But when I do that, How can I ensure that the cut-out is also outside of the PCB?
The additional cut-out in the panel is required for assembly.
I am not entirely sure, but I think you want a panel with strips on the side, and V-grooving to break of those guide strips after soldering.
In that case, you draw the Edge.Cuts line around the outside perimeter of the PCB, and you draw the V-grooving lines over the PCB (Contact your PCB manufacturer for how they want the V-grooving to be specified).
@Black Coffee
Thank you for your link.
When I’ve understood your tutorial correct it’s mostly about how to avoid the limitation that a footprint can’t contain the Edge.Cuts layer. For me it looks like this limitation is gone with recent versions of Kicad.
@m852
Thank you for that link. Normally I don’t prepare the panels. My experience is to let the assembly company do that. They know their machines, where to place to mounting holes for assembly, how to place the v-cuts to prevent sagging, feducials at good positions etc.
So my solution now will be to ensure a closed board outline and use a user layer for cut-out.
Yes, it has gone. It’s not a silver bullet though, integrating an edge in a footprint with the board edge must be done carefully and may be a bit limiting.
As others already have written edge.cuts cutouts in the footprint definition itself are possible.
One should differentiate:
the cutout describes a complete cutout with completely closed outline.
Example: Allegro_CB_PSF (library sensor_current).
You can add such a cutout on the edge.cuts layer in the footprint definition and it will work without much problem. You only have to made sure that this footprint + cutout is completely located inside the normal pcb area (inside the edge.couts outline)
the cutout defines a part of the later board-outline (because the footprint requires a slot or in your case a rectangle for the connector)
Example: USB_Micro-AB_Molex_47590-0001 (library Connector_USB)
In this case the footprint only contains a part of the board-outline. If you later draw the final board outline you have to draw lines on the edge.cuts layer and these lines have to exactly snap to the existing lines from the connector-footprint.
The final result must be a completely closed edge.cuts outline, with no double-line segments.
I would recommend to look into both example footprints.
The additional cut-out in the panel is required for assembly.
This is a special usecase, as the pcb normally only covers the place from itself.
Using a user layer and specially communicating this need (cutout in the panel, outside from the normal pcb) to the pcb-manufacturer seems a valid solution. Especially as the manufacturer must also ensure that the next pcb (on the right/left side) is far away enough so that the cutout don’t conflicts with that nect pcb.
I made a mistake. Lines on Edge.Cuts work now, I won’t forget that anymore. But the other thing still remains…
I see an extra part (about 1cm wide) on two sides of the PCB, and I assume this is for the SMT solder strait. Therefore the logical thing would be to make Edge.Cuts wide enough to include these strips, and use V-grooving to break them off later. This way the PCB itself is a simple rectangle (with rounded corners) and a few internal cutouts and two V-groove lines. You may have to make the strips on the sides wider, so they do not interfere with the soldering machine. I don’t know the margins about that.