Resolved - Breaking Design into Multiple PCBs

I drew the schematics and followed the process up to PCBnew to learn 10lbs don’t fit in a 5lb bag. I was not surprised by this. This is my first schematics to PCB layout in a very long time.

What I would like to do is place footprints of the PCB to get a general idea what will reasonably fit. Then go back and redo the schematics into multiple pcbs.

It looks like I would drop the parts on a schematic sheet and associate footprints and not concern myself with net list connections and then do PCBnew. Is this correct?

“Officially” KiCad supports 1schematic for 1 PCB.

There are a bunch of workarounds though.

It’s possible to draw multiple oultines on the Edge.cuts layer, which effectively results in 2 PCB’s. You will have to be careful if this can be manufactured though. There are some external tools for panelisation, and just drawing multiple oulines in a project probably works.

I loose you here. Does not compute. You can put all resistors of a design on a PCB, all capacitors on a 2nd PCB and the IC’s on a 3rd PCB, but that won’t work, especially when you get into higher speed stuff, and it’s a nightmare for PCB layout.

I think the simplest approach for you is to:

  1. first draw the (almost) complete schematic (Which you need anyway), do the full footprint assignment and port everything to Pcbnew with [F8].

  2. In the next step it’s handy to have a dual monitor setup. (or a very big monitor) so you can keep both Eeschema and Pcbnew next to each other and open at the same time.

  3. Sort your components into logical blocks that go together, and possibly do (a part of) the routing of the components in each group, so you know you have not hugged the components too close together and have enough room for the copper tracks. The sum of these blocks will be a good representation of the total board area you need. Do not do complete routing of these blocks, because component orientation within a block is likely to change in the later stages. It’s just to get an idea of the PCB area needed for the routing.

  4. Draw a few rectangles of the board sizes you want to use. Not as a final boardsize, but just for reference to get an idea of everything will fit. Then decide which logical group of components go on which PCB, and roughly place them on those PCB’s.

  5. Now it’s time to go back to your schematic. You now have a bunch of ratsnest lines between your PCB’s. These electrical connections need to go through connectors. So you have to split your schematic and add the (Male & Female) connectors.

  6. Assign footprints to the connectors, and put them in Pcbnew and update the netlist again with [F8]. Now put the connectors on the right PCB’s. At this point you should not have any ratsnest wires crossing the PCB’s anymore. If there are still ratsnest lines across different PCB’s, then you have to go back to the previous step and reconfigure your connectors.

  7. Once you know which components go on which board, and also have the connectors you can define the final board sizes and finish the routing. Before making the final board sizes you have to start thinking about production. I see roughly 3 options:

  • Same size PCB’s next to each other can be made with V-scoring.
  • Different size PCB’s can be put in a panel, which you have to draw yourself. In a panel there should be approx 2 to 5mm clearing between PCB’s for the router bits. (For more detailed info you should contact your PCB manufacturer at this stage).
  • Loose PCB’s, and let the manufacturer figure it out. In this last case you can design the PCB’s next to each other, save the work when finished. Then delete all boards except one from the design, generate the Gerber files for that board, and exit Pcbnew, and start Pcbnew again, which will load the design from disk again with all the PCB’s. Then repeat for the other PCB’s. (Make notes, name your PCB’s, put dates on them etc.)

If you want multiple boards with connectors at the same locations, so they’re stack-able, then look into templates and “standalone” mode of Pcbnew.

Thanks for your help

It’s not clear on just how you’d connect the PCB’s but, I’d assume it with Wires or Connectors (as opposed to Pins and Sockets in a Stacking sort of way - like devices and their shields.

However, Multiple PCB’s from a Single Schematic is very easy.

I make my PCB’s and often I don’t know how I’ll lay it out until I start and, once I get #1 laid out, I don’t want to mess it up so, this is How I do it…

  1. Make the Schematic (with the Idea of possibly needing connectors or wires).

  2. Annotate and make the Net.

  3. Start a PCB, load the Net and do preliminary layout.

  4. In your system’s Finder/Explorer, locate the project and simply Copy the PCB file. Paste it into the same project. Rename it.

  5. Repeat for as many PCB’s as you want.

  6. Open one of the PCB’s (click ‘Yes’ when prompted that PCB new is already running).

7 Load the Net and re-arrange the footprints is desired, can reshape the PCB/Edge-Cuts

… you can Repeat until the Cow’s come home…

Example shows the above results.

Of course, you’ll then need to add connector’s and/wires…

Pretty simple - I do it all the time. One schematic and several PCB layouts…

[EDIT] May need to Click the Refresh Icon for the copies to list in the Tree…

1 Like

To ease the setup “one schematic multiple PCB” you can use KiKit to extract the boards into separate board files once you are finished: KiKit: Panelization and Automation for KiCAD

1 Like

Hey BlackCoffee,

Thanks for your contributions. This is an interesting way to design a complete, multi-PCB system, and/or be able to manufacture things in modules. But i have a few questions:

  1. Since the schematic and the PCB no do not match (schematic is a superset) how do you implement things like rules checks (whcih have to fail, right?)

  2. If i am making a copy of the PCB file (with the complete net-list imported) isn’t it a ton of work to figure out which parts in the dog-pile are used and which left? Or am I missing something?



I generally find ways to do ‘whatever it is’ that I want/need to do. Often, that means, it only addresses ‘me’. I’m not much of a ‘One Button Does It All’ kind of guy.

Thus,I don’t use Rule Checks (DRC)… I mill my PCB’s and have particular needs for spacing to accommodate mill bit diameters and cutting paths. Therefore, I turned Off the DRC and rely on myself to check.

Generally, my projects use ‘one’ schematic and, if using multiple PCB’s using that same circuit (thus, same Netlist). I don’t bother updating from Schematic - usually it’s nailed down before I prototype it.

I hand tweak the parts on the PCB’s. Since they’re my circuits, I know what parts are used in which PCB and, usually about 95% are the same. Thus, easy to determine what to delete and what additional Parts to add. Thus, the parts in the ‘Dog-Pile’ most often need only repositioning, not replacing…

This approach for multiple PCB’s works well for me…

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