Picture of Panelizing PCBs for Seeed Using Eagle Free / Light
Some PCB fab houses (like SeeedStudio, with their Fusion PCB service) will allow you to panelize smaller PCBs.  For example, if you have a 2.5cm x 5cm board, you could panelize two of them on to a single 5mm x 5mm PCB.  Or, put a 7cm x 7cm board and a bunch of 3cm x 3cm boards onto a 10cm x 10cm panel.  Seeed will allow up to 5 sub-boards on a panel.

The freeware and light versions of Cadsoft Eagle limit the design area of the PCB to 10cm x 8cm.  This is enough to do many projects, but when you want to try and panelize to fill a 10cm x 10 cm board, it won't work.  Plus, maintaining separate projects and updating them on the panel, and maintaining consistency of labels and reference designators can be a pain.

In this Instructable, I will show you an easy way to merge Gerber files generated from Eagle (or any other EDA tool) in a way that Seeed Studio will accept them for panelizing with their Fusion PCB service.  I will be using the SARduino644 v1.0 board shown below as an example.
Remove these adsRemove these ads by Signing Up

Step 1: Design Board and Render Gerbers

Picture of Design Board and Render Gerbers
This has been covered elsewhere.  Sparkfun has a set of particularly good tutorials.  Note that Seeed requests that you put your order number on the silkscreen layer somewhere, so you might want to consider placing your order before going through the render/check cycle.

When you're happy with your board, and it passes Seeed's design rules, use the Seeed CAM processor to generate the Gerbers for your PCB.  

When you're done, you should end up with the following files:
<board>.GTO - top silkscreen
<board>.GTS - top soldermask
<board>.GTL - top copper
<board>.GBO - bottom silkscreen
<board>.GBS - bottom soldermask
<board>.GBL - bottom copper
<board>.TXT - Excellon drill file.

Before you proceed, you should check the Gerbers carefully to make sure everything looks right *before* combining them into a panel, this will save time later if you find a problem.  I like to use the online gerber viewer provided by CircuitPeople.  You can make a zip of all the files and upload them in one go, and they will all be rendered to image files.

ianlee742 months ago

I worked through this and everything has worked great except my drill file. It seems there's a multiplier that's causing the drill holes to be spread out too far and not align with where they're supposed to be or even stay within the bounds of the panel. Has anyone else encountered this?

matsk8 months ago

Is gerbmerge dead?

404 Not Found

The server can not find the requested page: (port 80)

Please forward this error screen to's


danb352 years ago
Gerbmerge is complaining at this step about the lack of a .BOR file. The config file does specify this, but the Seeed CAM job doesn't seem to create it in the output. How should I go about creating this file, or editing the config file to not require it?
spaceagerobotics (author)  danb352 years ago
Yes, thanks, I forgot this step. You have to add a new layer to the Seeed CAM job consisting of the "Dimension" layer, and emitting a .BOR file.
danb352 years ago
Hmmm, couldn't paste in the section of the .CAM file I needed to add. If you download the DorkBoxPDX .CAM file, the last section of that file covers creation of the .BOR file.
indomaq2 years ago
Hi i've tried this tutorial but it doesn't seem to work for me....
how can i check if there is 2 board outline instead of 1?
When I had to do this, I just moved the .brd EAGLE file to a new folder, turned on all the layers, selected everything into a group, and copied everything. Then I enlarged the dimension layer to the new size, and generated the gerber files as I normally would.

The bad thing about my method is that the component names will auto-increment during the copy operation, however I didn't care, or even had any silkscreen when I did it with the above method. Your Instructable solves this problem.

By the way, I never put my order number on... It must annoy them, but I was also a customer before they added that "requirement" so I know it's not really "required", it just makes their job slightly easier.
hmm... it might be worth the time to write a EAGLE script that translates the >NAME silkscreen objects into unassociated text objects first so the auto-increment has no effect.
spaceagerobotics (author)  frank260801152 years ago
Yes, I have read about that approach, and I am sure it would work. However, will it allow you to panelize beyond the 10cm x 8cm limitations of Eagle Free / Light?

I chose the gerbmerge approach because I deemed it likely faster than writing or adapting an Eagle script (which I could learn, but would be starting from scratch). I think it is also more generally useable, especially if you already have gerbers available for the designs you want to panelize.