Tool for creating panels in pcbnew

I’ve just completed a tool that create the tabs with mouse-bites between pcbs in pcbnew, it’s on gitlab here:

The workflow is quite simple:

  1. Start pcbnew outside of a project
  2. Append and place completed boards with at least 3 mm of spacing.
  3. Draw lines between the boards in the Eco1.User layer where you want tabs to connect the boards.
  4. Run my kicad util with the panel option.
  5. Open the newly created output pcb file and re-fill zones or run DRC or whatever else you need to do.

The tool also creates lines 3 and 6 mm away from the holes to indicate the distance that should be respected for tracks and smd caps respectively.


You should share the pictures you posted on eevblog :slight_smile:

I don’t know how hard it would be to do that but a frame around the pcbs with some holes to help align a stencil would be awesome:


I haven’t played with this useful looking tool yet, but I wonder if drawing two rectangles in EdgeCuts around all the boards (ID and OD of a frame) and then using the ECO1 layer to connect them to the inner boards would generate the frame that you want.

Turns out it’s pretty easy to add the panel frames, excuse the crudity of the model, I did not have time to paint it or add fiducials:

Whipping up this example also made me think of two missing features:

  • There should be a way to avoid the drill line on one side of the tab, so the tab will stay on the frame.
  • There should be a way to manually create a drill-line across the frame, so the frame can be broken in line with the payload pcbs without joining multiple frame parts with tabs.

Here’s what the panel looks like in pcbnew:

This looks like a good start to something usefull :slight_smile:

The Mousebites seem to be in the clearance area of the filled zones, which might expose copper at the sides of the PCB’s.
Why is the clearance not maintained there?
Forgot to manually re-generate the zonde boundaries? or the Mouse bites do not get registered by Kicad ?

Is there a way to adjust the Mouse bite properties (hole size, distance number of holes?)

My current KiCad version does not have scripting enabled. I’ll come back to try this later.

I did not refill the zones, so that would not be a problem.

I have not tried the kicad scripting, this utility is a stand-alone program that reads and writes kicad_pcb files, there’s a demo video here:

Yes there are options to specify hole size and spacing:

Usage: java -jar ku.jar pcb panel [–fillet=<filletRadius>]
                                 [–hole=<holeDiameter>] [–inset=<holeInset>]
                                 [–pitch=<holePitch>] [–width=<width>]
Creates mouse-bites out of Eco1.User lines where they cross Edge.Cuts
                           The radius of the routing bit, a larger fillet will
                             cause a thinner tab for the same width,
                           Default is 1.3 mm to accommodate the typical 2.5 mm
                             router bit without hitting both PCBs
     --hole=<holeDiameter> The diameter of the mouse-bite holes,
                           Default is 0.8 mm
     --inset=<holeInset>   The distance from the edge of the board to the center of
                             the mouse-bite holes,
                           Default is 0.25 mm
     --pitch=<holePitch>   The center distance between mouse-bite holes to attempt
                           Default is 1.3 mm
     --width=<width>       The distance from the middle of the tab to the place
                             where the routing fillet starts,
                           Default is 2.5 mm, if the fillet radius is 1 mm, then
                             you’ll end up with a 3 mm wide tab and
                           5 mm from flat edge to flat edge at the root of the

Here’s how the bites look after refilling the zones:

Ok, I have just implemented the two missing features I came up with, the setup is simple enough, though slightly anti-intuitive:

Here’s the output panel, notice the tabs that are solidly attached to the frame and the break-lines in the frame itself that are aligned with the mouse-bites that attach the payload pcbs to the tabs:

Before someone notices it, I know I again failed to re-fill the zones after generating the tabs:)

1 Like

This topic was automatically closed 90 days after the last reply. New replies are no longer allowed.