Some PCB production houses – Seeed Studio and itead studio, especially – allow you to upload a gerber file and receive a printed circuit board very inexpensively. The pricing structure for these board houses is based on predesignated board sizes – 5cm square or 5×10 cm – and sometimes a project is just too small to justify buying a full 25 square centimeters of board. This is where panelizing comes in: by putting multiple copies of a circuit board on one of the available sizes you can get more boards for the same amount of money. But how to panelize your boards without the (sometimes) hassle of cutting and pasting?
[Martin] came up with a way of panelizing PCBs with just a Python script. By creating one copy of a circuit board in KiCAD, he can fire up his script and tell the computer exactly how to duplicate his circuit to fit any size board.
By his own admission, [Martin]’s script is still a little clunky, but it does allow him to edit the panelized board in KiCAD and also copies the nets so the ratsnest doesn’t go between boards.