Download as pdf or txt
Download as pdf or txt
You are on page 1of 20

4/1/23, 13:10 Panelizng non-square PCBs in Altium | Fiddlings

Fiddlings
Gareth's Random Blog of Fiddlings

Panelizng non-square PCBs in Altium


Posted on January 22, 2021

Note: this guide specifically shows how I panelized boards to manufacturer with JLCPCB, but the process can probably be applied/modified to
fit any PCB fab’s requirements. Also, this is what worked for me in ~March 2020, processes may change, always check for the latest
information from your PCB Manufacturer.

JLCPCB Panelizing notes: link (More under capabilities: link)


OSHPark Panelizing notes: link

A number of PCB manufacturers offer amazing introductory deals for PCB manufacturing. Often this will have a size restriction, in JLCPCB’s
case, less than 100x100mm. If you’re making something considerably smaller than this though, you might be able to get multiple boards within
that area. But the PCB fabs won’t do the hard work for you, without charging you extra. So why not do it yourself.

Open Source Data Grid


Save coding time, use the JavaScript
Enterprise Data Grid chosen by the
Fortune 500.
Privacy & Cookies: This site uses cookies. By continuing to use this website, you agree to their use.
AG-Grid Open Close and accept
To find out more, including how to control cookies, see here: Cookie Policy

https://blog.gcawood.com/2021/01/22/panelizng-non-square-pcbs-in-altium/ 1/20
4/1/23, 13:10 Panelizng non-square PCBs in Altium | Fiddlings

For boring rectangular boards, the standard way to do this is using v-grooves cut with a circular saw. Because a circular saw is used, it is only
compatible with rectangularly shaped boards. The alternative for irregularly shaped boards is to route the outline of the board, but leave tabs
supporting the PCB relative to a frame, or neighbouring PCBs.

One import thing to keep in mind when panelizing boards is how the board will broken apart, especially if your boards are going to be
assembled beforehand. It requires putting stress on the boards, which can damage traces and soldered components. For more info on the
practicalities of panelizing, read more here.

If you are using Altium Designer to design your board, below are the steps I followed to generate Gerber files that I submitted to JLCPCB. My
aim was to get multiple of my boards within the 100x100mm for JLCPCB. I used Altium Designer 19.

1. In a PCB file, layout your single board including the planned PCB outline.

— First step is to layout a single


board. The board I used here is
roughly 20mm long and 14mm
wide

2. Create a new PCB file that will contain your panelized design
3. Set the board shape to be the size of your final panelized design, in my case, 100mmx100mm.
Privacy & Cookies: This site uses cookies. By continuing to use this website, you agree to their use.
4. Insert your original PCB design.
To find out more, including how to control cookies, see here: Cookie Policy
A. Place > Embedded Board Array/Panelize

https://blog.gcawood.com/2021/01/22/panelizng-non-square-pcbs-in-altium/ 2/20
4/1/23, 13:10 Panelizng non-square PCBs in Altium | Fiddlings

5. Push Tab to access the settings


A. Select your original board under “PCB Document”
B. Adjust the Column Count, Row Count, and spacing and margin values to get as many of the boards to fit in your limited area. Take
into account minimum requirements from your manufacturer, as well as whether you want to have external and/or internal frames
around and in between your boards.

Privacy & Cookies: This site uses cookies. By continuing to use this website, you agree to their use.
To find out more, including how to control cookies, see here: Cookie Policy

https://blog.gcawood.com/2021/01/22/panelizng-non-square-pcbs-in-altium/ 3/20
4/1/23, 13:10 Panelizng non-square PCBs in Altium | Fiddlings

— As you update the count, spacing and margin values, Altium will update the layout on the board, so you can change these values interactively to find the
best fit. You can additionally do some maths with your fab’s recommended specifications to optimize the number of boards you can place.

If you really want to cram boards in, you can experiment with different rotation of boards so that you don’t waste space. This requires importing
the board more than once, with a different rotation specified. Additionally, joining boards to each other, instead of to a frame will also save
space. In my case, I didn’t need or want hundreds of copies of this board, I just wanted ten or twenty.
Privacy & Cookies: This site uses cookies. By continuing to use this website, you agree to their use.
To find out more, 6. You should
including how tonow seecookies,
control roughlysee
how your
here: boards
Cookie will be situated.
Policy

https://blog.gcawood.com/2021/01/22/panelizng-non-square-pcbs-in-altium/ 4/20
4/1/23, 13:10 Panelizng non-square PCBs in Altium | Fiddlings

7. To allow for better visualization within Altium’s PCB view, we create a “Route Tool Path” layer to place our routing. User a different Layer
Type will allow for correct Gerber generation, but not viewing with Altium’s PCB viewer.

8. Now we want to create the router patterns to separate our PCBs.


A. Design > Board Shape > Create Primitives From Board Shape
B. Select the layer that you want the routing to go on: “Route Tool Path”
C. For the width of the routing, reference the minimum width requirement specified by the PCB fab.
D. Select “Route Tool Outline”

Privacy & Cookies: This site uses cookies. By continuing to use this website, you agree to their use.
To find out more, including how to control cookies, see here: Cookie Policy

https://blog.gcawood.com/2021/01/22/panelizng-non-square-pcbs-in-altium/ 5/20
4/1/23, 13:10 Panelizng non-square PCBs in Altium | Fiddlings

— This step creates the routing paths around all the boards you’ve placed

9. You should now have a visible routing path around all your individual PCBs. When you switch to PCB view, you’ll see these as empty
spaces.

Privacy & Cookies: This site uses cookies. By continuing to use this website, you agree to their use.
To find out more, including how to control cookies, see here: Cookie Policy

https://blog.gcawood.com/2021/01/22/panelizng-non-square-pcbs-in-altium/ 6/20
4/1/23, 13:10 Panelizng non-square PCBs in Altium | Fiddlings

— Left shows your panelized PCBs with routed paths. Right shows the generated routing paths in green.

Notes:
In my example I am separating boards with a frame, if you’re not planning on having a frame, there should be no PCB between
each of your boards at this stage.
Because these edges are routed, internal angles can’t be perfectly machined, and will have a radius related to your router width

Privacy & Cookies: This site uses cookies. By continuing to use this website, you agree to their use.
To find out more, including how to control cookies, see here: Cookie Policy

https://blog.gcawood.com/2021/01/22/panelizng-non-square-pcbs-in-altium/ 7/20
4/1/23, 13:10 Panelizng non-square PCBs in Altium | Fiddlings

— In left image, you can see how your original board outline has a sharp angle, but the generated routing path has a radius. In the right image you can see
this curved routing path in the generated PCB view. If this will cause a fitment problem, you need to update your original standalone PCB layout to take
the routing into account

10. Now that we have the boards routed, we need to add in breakaway tabs, also known as mouse-bites. This is just a bit of bridging PCB,
that has an edge perforated with little holes to make it easier to break off.
11. To place these in your design, you need to either make a custom part, or create another PCB design that contains just the holes required
for your tab. A custom part is better, but both will work.
A. If you’re linking boards directly to other boards, you want two rows of holes, if you are linking boards to a frame, you only need one
row of boards, inline with the edge of the board.
B. In my example, I have two rows of holes, even though the boards are linked to a frame
C. The width of the part/board should be the width of your routed edge.
D. Hole size and spacing should be on your fab’s recommendations.

Privacy & Cookies: This site uses cookies. By continuing to use this website, you agree to their use.
To find out more, including how to control cookies, see here: Cookie Policy

https://blog.gcawood.com/2021/01/22/panelizng-non-square-pcbs-in-altium/ 8/20
4/1/23, 13:10 Panelizng non-square PCBs in Altium | Fiddlings

— This image shows our mouse-bites placed, but still shows


routing through the mouse-bite. We need to remove this
portion of routing to create the bridging tab.

12. Based on relative sizes and other factors, you must now decide how many tabs are required to join each of your of your boards, and
where they should be located. You must also reference your fab’s recommendations.
A. For my design I have just two tabs holding each board up.
13. Once placed, we now have to ‘add’ the material back to support the boards. You can do this by just selecting the relevant part of the
route ‘trace’, and either deleting or resizing it.

Privacy & Cookies: This site uses cookies. By continuing to use this website, you agree to their use.
To find out more, including how to control cookies, see here: Cookie Policy

https://blog.gcawood.com/2021/01/22/panelizng-non-square-pcbs-in-altium/ 9/20
4/1/23, 13:10 Panelizng non-square PCBs in Altium | Fiddlings

— Comparing this image to the previous one we can see how the routing through
the mouse-bite has been removed, creating a tab to support the individual PCB
in its panel.

14. Switch to PCB view and confirm the resultant tab looks correct.

Privacy & Cookies: This site uses cookies. By continuing to use this website, you agree to their use.
To find out more, including how to control cookies, see here: Cookie Policy

https://blog.gcawood.com/2021/01/22/panelizng-non-square-pcbs-in-altium/ 10/20
4/1/23, 13:10 Panelizng non-square PCBs in Altium | Fiddlings

— PCB view of our mouse-bitten tab

15. Now rinse and repeat for all tab locations.

Once you’ve got everything laid out, just make sure to add your entire board outline to your routing layer so they get exported on the same
layer. Most fabs expect this. Then all you have to do is export your Gerber files and upload them.

When I actually had the boards manufactured, I only put 5 boards horizontally to a panel of a single row. I also placed the tabs on the sides. As
such the below images won’t match what I demonstrated above.

Privacy & Cookies: This site uses cookies. By continuing to use this website, you agree to their use.
To find out more, including how to control cookies, see here: Cookie Policy

https://blog.gcawood.com/2021/01/22/panelizng-non-square-pcbs-in-altium/ 11/20
4/1/23, 13:10 Panelizng non-square PCBs in Altium | Fiddlings

— Altium generated view of my panelized PCB

For JLCPCB, this is what my exported board outline layer looked like, as well as how JLCPCB displayed the boards in their Gerber viewer, and
how they came out:

Privacy & Cookies: This site uses cookies. By continuing to use this website, you agree to their use.
To find out more, including how to control cookies, see here: Cookie Policy

https://blog.gcawood.com/2021/01/22/panelizng-non-square-pcbs-in-altium/ 12/20
4/1/23, 13:10 Panelizng non-square PCBs in Altium | Fiddlings

— What my board outline layer looked like for JLCPCB (Altium Gerber viewer)

— How JLCPCB showed my boards after importing

Privacy & Cookies: This site uses cookies. By continuing to use this website, you agree to their use.
To find out more, including how to control cookies, see here: Cookie Policy

https://blog.gcawood.com/2021/01/22/panelizng-non-square-pcbs-in-altium/ 13/20
4/1/23, 13:10 Panelizng non-square PCBs in Altium | Fiddlings

— And what the final product looked like

At the same time I had the same boards manufactured with OSH Park. They ask for a slightly different layout. They want the outline of the
milled area as opposed to a single trace for the mill. As such the board outline layer looked like this (along with how OSH Park displayed it and
how they came out).

Privacy & Cookies: This site uses cookies. By continuing to use this website, you agree to their use.
To find out more, including how to control cookies, see here: Cookie Policy

https://blog.gcawood.com/2021/01/22/panelizng-non-square-pcbs-in-altium/ 14/20
4/1/23, 13:10 Panelizng non-square PCBs in Altium | Fiddlings

— What my board outline layer looked like for OSH Park (Altium Gerber viewer)

Privacy & Cookies: This site uses cookies. By continuing to use this website, you agree to their use.
To find out more, including how to control cookies, see here: Cookie Policy

https://blog.gcawood.com/2021/01/22/panelizng-non-square-pcbs-in-altium/ 15/20
4/1/23, 13:10 Panelizng non-square PCBs in Altium | Fiddlings

— How OSH Park showed my boards after importing

Privacy & Cookies: This site uses cookies. By continuing to use this website, you agree to their use.
To find out more, including how to control cookies, see here: Cookie Policy

https://blog.gcawood.com/2021/01/22/panelizng-non-square-pcbs-in-altium/ 16/20
4/1/23, 13:10 Panelizng non-square PCBs in Altium | Fiddlings

— In the flesh?

OSH Park actually offer to do the tabs themselves. You just provide the milling outline around the entire board, and they’ll add the tabs. I don’t
recall this being an option when I had the boards made (~March 2020), but it is on their website (Jan 2021).

Below is another design I had manufactured this year for my Touch Lamp. Here I joined boards directly to each other. Below you can see
Altium’s PCB view as well as the final product. To achieve this, I had to import my nominal PCB twice, once for the upright orientation, and
once for the upside down orientation. In this case, when I exported the Gerber’s, I did not include the rectangle that went around the entire
board, as I didn’t want the little triangles included.
Privacy & Cookies: This site uses cookies. By continuing to use this website, you agree to their use.
To find out more, including how to control cookies, see here: Cookie Policy

https://blog.gcawood.com/2021/01/22/panelizng-non-square-pcbs-in-altium/ 17/20
4/1/23, 13:10 Panelizng non-square PCBs in Altium | Fiddlings

Privacy & Cookies: This site uses cookies. By continuing to use this website, you agree to their use.
To find out more, including how to control cookies, see here: Cookie Policy

https://blog.gcawood.com/2021/01/22/panelizng-non-square-pcbs-in-altium/ 18/20
4/1/23, 13:10 Panelizng non-square PCBs in Altium | Fiddlings

— Altium representation of Touch Lamp PCBs

— What the PCBs looked like after I had them made (two variants)

If you have any questions, or additional information you think others will find useful, please leave a comment below.

This entry was posted in electronics and tagged Altium, JLCPCB, OSH Park, panelizing, PCBs by Gareth. Bookmark the permalink
[https://blog.gcawood.com/2021/01/22/panelizng-non-square-pcbs-in-altium/] .

2 THOUGHTS ON “PANELIZNG NON-SQUARE PCBS IN ALTIUM”

Paul
on January 27, 2022 at 21:51 said:

Cool design for a lamp shade. Do you have a picture of the final lamp?
Privacy & Cookies: This site uses cookies. By continuing to use this website, you agree to their use.
To find out more, including how to control cookies, see here: Cookie Policy

https://blog.gcawood.com/2021/01/22/panelizng-non-square-pcbs-in-altium/ 19/20
4/1/23, 13:10 Panelizng non-square PCBs in Altium | Fiddlings

garethc
on February 1, 2022 at 21:44 said:

Hey Paul, you can see my post here with more on the lamp: https://blog.gcawood.com/2020/10/20/circuit-sculpture-touch-lamp-
with-pcb-shade/

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Privacy & Cookies: This site uses cookies. By continuing to use this website, you agree to their use.
To find out more, including how to control cookies, see here: Cookie Policy

https://blog.gcawood.com/2021/01/22/panelizng-non-square-pcbs-in-altium/ 20/20

You might also like