Designing a Rigid-Flex PCB
Parent page: Laying out Your PCB
What is Rigid-Flex?
As the name suggests, a flexible printed circuit is a pattern of conductors printed onto a flexible insulating film. Rigid-flex is the name given to a printed circuit that is a combination of both flexible circuit(s) and rigid circuit(s), as shown in the image.
Flexible circuit technology was initially developed for the space program to save space and weight. It is popular today as it not only saves space and weight - making it ideal for portable devices such as mobile phones and tablets - it can also reduce packaging complexity, improve product reliability, and reduce cost.
Flexible circuits are normally divided into two usage classes: static flexible circuits, and dynamic flexible circuits. Static flexible circuits (also referred to as use A), are those that undergo minimal flexing during assembly and service. Dynamic flexible circuits (also referred to as use B), are those that are designed for frequent flexing, such as a disk drive head, a printer head, or as part of the hinge in a laptop screen. This distinction is important as it affects both the material selection and the construction methodology. There are a number of layer stackup configurations that can be fabricated as rigid-flex, each with its own electrical, physical, and cost advantages.
Mechanical Rigid-Flex Design
Designing a flex or rigid-flex circuit is very much an electromechanical process. Designing any PCB is a three-dimensional design process, but for a flex or rigid-flex design, the three-dimensional requirements are much more important. Why? Because the rigid-flex board may attach to multiple surfaces within the product enclosure, with the attaching and folding process often happening during product assembly. Delivering a working electromechanical design requires close and constant collaboration between the mechanical and electrical engineering teams. The traditional approach to confirm that the folded board fits within its enclosure has been to create a mechanical mockup - known as a paper doll cut out. By its very nature, it's difficult to achieve the accuracy and realism required with this approach.
Altium is helping to solve this challenge with CoDesigner, a sophisticated mechanical-to-electronic design interface technology. CoDesigner allows the engineers to pass the board shape and component changes back and forth between the ECAD and MCAD design domains directly from within the ECAD and MCAD design software.
- Overview of Altium's MCAD CoDesigner technology
- Technical reference, learn more about ECAD-MCAD CoDesign
- Learn more about transferring a rigid-flex design to MCAD
Designing a Rigid-Flex PCB
A printed circuit board is designed as a series of layers stacked on top of one another. For a traditional rigid printed circuit board, the board shape defines the board in the X-Y plane, and the stack of layers defines the board in the Z plane. The X-Y board shape is defined in the main PCB editing window, and the layers are configured in the Layer Stack Manager. In a rigid-flex PCB, there is more than one zone or Region in the finished printed circuit board, and each of those Regions can use a different set of layers.
To design a rigid-flex board, you need to:
- Enable the required Rigid-Flex mode (Layer Stack Manager, Tools » Features » Rigid-Flex, or Tools » Features » Rigid-Flex (Advanced) command)
- Define the Substack needed for each Region of the board, and configure how those Substacks align with each other in the Z plane.
- Define the shape of each rigid and flex Region in the X-Y plane, and assign the correct Substack to each Region.
Enabling Rigid-Flex Design
To support the complex structures present in a modern rigid-flex printed circuit board, the Z plane editor - the Layer Stack Manager, provides different display modes for editing the structure of your board. Select the Design » Layer Stack Manager command to open the Layer Stack Manager, where you can enable the required rigid-flex mode, and create and align the Substacks needed in your rigid-flex design.
When the Layer Stack Manager opens, it will show the current board layer Stackup. For a new PCB, this will be a simple two-layer board. To enable the features needed to design a rigid-flex board, open the Tools » Features sub-menu or click the Features button ( ) to select either the Rigid-Flex command, or the Rigid-Flex (Advanced) command.
Rigid-Flex Design - Standard Mode
Defining the Board Shape and Regions
The Board Shape defines the boundary, or extents, of the board in the PCB Editor. The Board Shape is a PCB object (also referred to as the Board Outline) which is essentially a closed polygon. When you create a new PCB document, it is the black area displayed in the PCB editor workspace.
There are a number of ways the board shape can be defined. The video below demonstrates using an outline created from lines and arcs on a mechanical layer. Once the overall outline has been defined, it is split into the different rigid and flex regions.
Defining the Board Shape and Regions:
- The board shape can be defined interactively in Board Planning Mode (View » Board Planning Mode), or it can be defined based on an existing outline in 2D layout mode (View » 2D Layout Mode), as demonstrated in the video above.
- To define the board shape from an existing outline, select the outline in 2D layout mode and run the Design » Board Shape » Define Board Shape from Selected Objects command. The software will trace along the centerline of the selected track/arc objects to define the outer edge of the board shape. Note that the ends of the outline tracks/arcs must be coincident for the tracing algorithm to be able to follow the centerline. If it fails, the tracing algorithm will offer to attempt to trace along the outer edge of the selected objects.
- To define the board shape interactively, switch to Board Planning Mode (1 shortcut) and select the Design » Redefine Board Shape command. The standard region object placement behaviors apply during board shape definition, use the Snap Grid and workspace Guides to help with this process. Enable the Board Shape option in the Snap Options palette to give the best level of control during board shape editing. Learn more about Understanding the Snap Behavior.
- To define the Name and assign a Layer stack for each region, double-click on the region. Alternatively, set the PCB panel to Layer Stack Regions mode, where you can examine and edit the regions and bending lines.
- To split a Board Region into two smaller regions, use the Design » Define Split Line command. The command places a straight line between two click locations, when you click within the board shape the first location will be on the board edge closest to where you clicked. Move the cursor to locate the second location, then click a second time. Click and hold on the vertex of a Split Line to move it to a new location.
- The location and shape of an existing Board Region can be edited. Run the Design Design » Edit Board Shape command, then use the standard polygonal object editing techniques to adjust the shape.
► Learn more about Rigid & Flex Regions Planning in Standard Rigid-Flex Mode
Defining Bends in the Flex Region
Once a flex Region has been created, Bending Lines can be defined in that region. A bending Line is a linear object that is placed across a region.
Defining a Bending Line:
- Bending Lines are placed in Board Planning Mode (1 shortcut).
- To place a Bending Line, run the Design » Define Bending Line command.
- Place the Bending Line across the flexible board Region. It is not necessary to precisely touch each edge of the region with the start and end of the Bending Line, the software will automatically extend it (if too short) or reduce it (if too long). At least one end of the Bending Line must touch or pass over the edge of the Region.
- To edit the properties of a Bending Line, click anywhere within the region to display the verticies for all Bending Lines within that region, then:
- Double-click on the vertex of a Bending Line to open the Bending Line dialog, or
- Display the PCB panel and set it to Layer Stack Regions mode, where you can examine and edit the Regions and Bending Lines.
- Set the Bending Angle and the bend Radius and as required.
- Bends are folded in the order of their Fold Index, use this feature when the folding order is important to check.
- To move a Bending Line, click and drag on each vertex.
- A Bending Line can be removed by clicking and holding on one of the vertices, then pressing Delete on the keyboard.
- Bending Lines cannot be applied to the edge of a board cutout. If your board requires this, switch to Rigid-Flex Advanced mode.
► Learn more about Bending Zone Definition in Standard Rigid-Flex Mode
Rigid-Flex Design - Advanced Mode
Defining the Board Shape and Regions
The layer stack defines the board in the vertical direction, or Z plane. In the PCB editor, the area that the board occupies in the X and Y planes is defined by the Board Shape. The board shape can be a polygonal region of any shape, with straight or curved edges that lie at any angle, that can also include cutouts (internal holes) of any shape.
There are two techniques that can be used to defining the overall board shape and the various rigid and flex regions:
- Define the overall board shape, and then slice it into regions. Learn more about defining the Board Shape.
- Place each rigid and flex Board Region in the workspace to build up the final board shape. Learn more about placing Board Regions.
The final shape can be created using a mixture of the two techniques.
Defining the Board Shape and Regions:
- The board shape can be defined interactively in Board Planning Mode (View » Board Planning Mode), or it can be defined based on an existing outline in 2D layout mode (View » 2D Layout Mode).
- To define the board shape from an existing outline, select the outline in 2D layout mode and run the Design » Board Shape » Define from selected objects command (or the Tools » Convert » Create Board Region from selected primitives command). The software will trace along the centerline of the selected track/arc objects to define the outer edge of the board shape.
- To define the board shape interactively, switch to Board Planning Mode and select the Place » Board Region command (or click the button on the Active Bar). The standard region object placement behaviors apply, use the Snap Grid and workspace Guides to help with this process. Enable the Board Shape option in the Snap Options palette to give the best level of control during Board Region editing. Learn more about Understanding the Snap Behavior.
- Place the required number of Regions. Regions can be drawn so they are overlapped, note that this does not define the extent that a flex region overlaps into a rigid region, that is defined by the Intrusion values in the Stackup definition.
- To define the Name and assign a Layer stack for each region, select the region and edit the properties in the Board Region mode of the Properties panel.
- To slice a Board Region into two smaller regions, use the Design » Slice Board Region command (or click the button on the Active Bar). The Slicing tool uses the standard line placement cornering modes, including 45°, 90°, 45° arc, 90° arc and any angle, press Shift+Spacebar to change the mode during slicing.
- The location and shape of an existing Board Region can be edited, using the standard polygonal object editing techniques.
► Learn more about Rigid & Flex Regions Planning in Advanced Rigid-Flex Mode
Defining Bends in the Flex Region (Advanced mode)
A bend in a flexible section of a rigid-flex board is defined by placing a Bending Line. A bending Line is a linear object, whose properties are edited in the Bend mode of the Properties panel.
Placing Bending Lines
- Bending Lines are placed in Board Planning Mode (1 shortcut).
- To place a Bending Line run the Place » Define Bending Line command (or click the button on the Active Bar). Place the Bending Line across the flexible Board Region. It is not necessary to precisely touch each edge of the region with the start and end of the Bending Line, the software will automatically extend it (if too short) or reduce it (if too long). At least one end of the Bending Line must touch or pass over the edge of the Region.
- To edit the properties of a Bend, select it and edit the settings in the Bend mode of the Properties panel:
- The Bend zone is displayed in a green-orange color, click anywhere within the zone to select that Bend.
- Each Bend can be named so it can be easily identified.
- Confirm that the Bend is being applied to the correct Substack Region, available regions are listed in the Stack Regions section.
- Set the Bend Zone Radius and Bend Angle as required.
- Bends are folded in the order of their Fold Index, use this feature when the folding order is important to check.
- To move a Bending Line, click and drag on each end handle.
- Bending Lines can be applied to board cutouts edges.
- A selected Bend can be removed by clicking and holding on one of the vertices, then pressing Delete on the keyboard.
► Learn more about Bending Zone Definition in Advanced Rigid-Flex Mode
Including Coverlay on a Flex Region
A common feature on rigid-flex boards is the selective use of coverlay material. This insulation layer is cut and laminated onto specific areas of the board, and because of this selective use, coverlay is also referred to as bikini coverlay. Coverlay layers are added in the Layer Stack Manager and the shape of coverlay objects can be manipulated in Board Planning Mode, once coverlays have been enabled for that region of the board.
Adding and Configuring a Coverlay
Coverlay layers are added in the Layer Stack Manager. To add coverlay layers:
- Enable the Is Flex option for the flex substack.
- Right-click on the appropriate layer(s) and select the Insert layer above (below) » Coverlay command to add coverlays.
- Define the properties of the coverlay, including the Coverlay expansion property. If the Coverlay expansion column is not visible, right-click on an existing column heading to open the Select Columns dialog, where it can be enabled.
- Save the layer stack to reflect the changes on the board.
- In Board Planning mode there will now be additional tabs for each coverlay layer added in the stack. Note that the color of the coverlay is defined by the layer color (View Configuration panel), not the color assigned in the Layer Stack Manager.
Enabling and Viewing the Coverlay
If coverlay layers are added to the substack before that substack is assigned to a Board Region, the coverlay objects will be present when the substack is assigned to a Board Region.
If coverlay layers are added to the substack after that substack has already been assigned to a Board Region, then coverlays must be added to that region. Coverlays can be added in Board Planning mode by selecting the Board Region and then either:
- In Standard Rigid-Flex mode:
- Double-click on the flex region to open the Board Region dialog, and enable the Custom Coverlays option.
- In Advanced RIgid-Flex mode:
- Right-clicking on the region and selecting the Coverlay Actions » Add Coverlay command, or
- Clicking the Add Coverlay button in the Board Region mode of the Properties panel.
Editing or Placing Additional Coverlay
Coverlay is automatically added to cover the entire area of the Board Region it was added to, as shown in the image below (in accordance with the Coverlay expansion value defined in the Layer Stack Manager). Behaving like an additional solder mask layer, openings are automatically created for component pads in accordance with the applicable Solder Mask Expansion design rule, or else the settings defined for the Pad if the Solder Mask Expansions setting has been configured to override the design rule.
To edit the coverlay:
- Switch to Board Planning mode.
- Click the appropriate layer tab to make the Coverlay layer the active layer (the Coverlay layers may need to be made visible in the View Configuration panel).
- The automatic coverlay is formed as a polygonal object, it can be selected and reshaped (or deleted) as required.
- User-defined coverlay shapes can also be placed if required, using the Design » Place Coverlay Polygon and Design » Place Coverlay Cutout commands.
Coverlay Polygon
Coverlay Polygons can be placed when a PCB editor is in Board Planning Mode. Select the Design » Place Coverlay Polygon command from the main menus.
Coverlay Polygon Placement Modes
- While placing a polygon there are five available corner modes, four of which also have corner direction sub-modes. During placement:
- Press Shift+Spacebar to cycle through the five available corner modes.
- Press Spacebar to toggle between the two corner direction sub-modes.
- When in either of the arc corner modes, hold the arrow keys to shrink or grow the arc. Hold the Shift key as you press to accelerate arc resizing.
- Press the 1 shortcut key to toggle between placing two edges per click or one edge per click. In the second mode, the dashed edge is referred to as the look-ahead segment (as shown in the last image in the set below).
- Press the Backspace key to remove the last vertex.
Graphical Editing of a Coverlay Polygon
This method of editing allows you to select a placed coverlay polygon object directly in the design space and graphically change its size, shape or location.
Click once on a coverlay polygon object to select it, which puts it into edit mode. The outer shape of the coverlay polygon object is defined by a series of edges, where each edge is represented by an end vertex at each end, shown as a solid white square, and a center vertex in the middle is shown as a hollow white square. Each end vertex represents the location where two edges meet.
- Click and drag A to move the applicable end vertex.
- Click and drag B to move the applicable center vertex, effectively creating a new end vertex and splitting the original edge into two.
- Click anywhere along an edge away from editing handles then drag to slide that edge.
- Ctrl+click anywhere along an edge away from editing handles to insert a new end vertex.
- Click and hold on an end vertex then press Delete to remove that vertex.
- Click anywhere on the coverlay polygon away from editing handles then drag to reposition it. While dragging, the coverlay polygon can be rotated or mirrored:
- Press the Spacebar to rotate the coverlay polygon counterclockwise or Shift+Spacebar for clockwise rotation. The Rotation Step size is defined on the PCB Editor – General page of the Preferences dialog.
- Press the X or Y keys to mirror the coverlay polygon along the X-axis or Y-axis.
How Output is Generated for Coverlay Layers
When the output is generated, each layer is output as separate data. For example, when Gerber is generated, the top solder mask is written to one Gerber file, the top coverlay is written to another Gerber file.
The output for a coverlay can be divided into 2 categories:
- Pad/via openings - the output for pad/via openings is generated in the same way as regular top/bottom solder mask output: an object of the correct size/shape is flashed, in accordance with the applicable solder mask expansion design rule, or the object settings if the local override is enabled.
- Polygonal areas of coverlay (both automatic and manually placed) - a closed polyline outline is generated, defining the outer edge of each region of coverlay. The outline can be used to define a cutting path for the coverlay. Cutouts (user-defined irregular-shaped holes) defined in the coverlay are also output as a closed polyline for cutting path generation.
Supported Coverlay Output Formats
Coverlay output is supported by all of the appropriate output formats available in Altium NEXUS.
Coverlay film outputs
- Gerber RS-274X, X2 - Openings defined over objects, such as pads and vias, are flashed. The outer edge of the coverlay, as well as user-defined cutouts, are rendered as outlines - these outlines can be used by the fab house to generate a cutting path.
- ODB++ - Specific layer stack material regions are output (polygons and polygon cutouts) in ODB++ v7.0 and later, which properly supports multiple layer stacks and rigid-flex definitions.
- IPC2581B - as with ODB++, supporting multiple layer stack definitions and polygons of layer stack regions.
Layer Stack Outputs
- ODB++
- IPC2581B
- Layer Stack Report
Tool Outputs
- NC / Excellon Route Tool Path - generated from outline for polyline objects.
Prints
- Prints can be configured as required.
Designing a Flex-only PCB (Advanced mode)
The Layer Stack Manager requires at least one rigid substack to be defined. To design a flex-only PCB, first define the rigid substack then add a flex substack, as shown in the image below.
In Board Planning Mode, define the shape of the flex-only PCB and assign the flex substack in the Board Region mode of the Properties panel.
Designing a Board with a Flex Region Inside a Cutout (Advanced mode)
It is possible to design a rigid-flex board that has a flexible region within a cutout in the main PCB.
Notes about creating this type of board:
- The video below demonstrates the process.
- The board cutout must trace the outline of the flex region(s) within the cutout.
- Place the cutout before placing the flex region(s) inside the cutout zone.
- Any region within the cutout that does not use the same substack as the outer rigid region must have its priority set to a higher value than the value assigned to the outer rigid region.
- Configure the Used Stack Regions options for Bending lines placed on internal flex regions so that they only apply to that flex region.
- It can be easier and more accurate to define the shapes required for the cutout and the flex region(s) as outlines on a mechanical layer, using tracks and arcs. Then use the tools available to convert a selected outline to a board cutout, or a board region. Note that the conversion tool follows the centerline of the selected tracks and arcs, and requires the end points of adjacent tracks/arcs to exactly meet.
- Design » Board Shape » Create Board Region from Selected Objects (in 2D Mode)
- Tools » Convert » Create Board Cutout From Selected Primitives (in 2D Mode)
- Tools » Convert » Convert Selected Line to Bend Line (in 2D Mode)
Download the PcbDoc file used in the video
Displaying and Folding a Rigid-Flex Design in 3D
The PCB editor includes a powerful 3D rendering engine, which allows the presentation of a highly realistic three-dimensional representation of the loaded circuit board. This engine also supports rigid-flex circuits, and when used in combination with the Fold State slider in the PCB panel, it allows the designer to examine their rigid-flex design in the flat state, the fully folded state, and anywhere in between.
To switch to the 3D display mode, press the 3 shortcut key (press 2 to return to 2D or 1 to return to Board Planning Mode). The board will be displayed in 3D. If the component footprints include 3D body objects that define the mounted component, these will also be displayed. In the image below, you can see that the board includes a battery and a battery clip.
To apply all of the Bending Lines, slide the Fold State slider in the PCB panel when set to Layer Stack Regions mode as highlighted in the image below. Note that the bends are applied in the order defined by their sequence number. Bending Lines can share the same sequence number; it simply means that those bends will be folded at the same time when the Fold State slider is used. The board can also be folded/unfolded by running the View » Fold/Unfold command (or by pressing the 5 shortcut).
3D Movie Maker Support for Rigid-Flex Designs
The ability to fold a rigid-flex design can also be captured as a 3D movie. It is very simple to do and does not require the use of movie key frames during the folding sequence.
Refer to the PCB 3D Video page for a detailed description of how to make a 3D movie. As a basic guide:
- Switch the PCB editor to 3D mode.
- Open the PCB 3D Movie Editor panel and create a new video by clicking the New button. Click the newly-created video in the Movie Title region then give it a suitable name.
- Create an initial Key Frame showing the board in its unfolded state.
- Slide the Fold State slider to show the rigid-flex design in its folded state, then position the folded board as required.
- Now create a second Key Frame for this view and set the time. Consider how long you want it to take to fold the rigid-flex design (the Duration setting); typically this would be a few seconds.
- To check that the video captures the folding process correctly, click the play button (located in the player controls at the bottom of the panel.
- To generate a movie file, add a PCB 3D Video Documentation Output in an Output Job file. Remember to configure the video format options in the Video settings dialog.
- Click the Generate Content link in the Output Job file to create the movie file.
The video below was created using this process. It has the two key frames described above, plus one additional key frame that was added at the end to hold the final position for a second.
► Learn more about 3D PCB Video
Design Considerations
Below is a summary of key design areas that must be considered when designing a rigid-flex PCB:
- Conductor routing - choice of corner style for routes traveling over a flex region is important; avoid sharp corners; use a curve for least stress.
- Pad shape and area - use fillets (teardrops) with rabbit ears (anchoring spurs) for single-sided flex. The objective is to capture some of the pad shape with the coverlayer.
- Through holes - try to avoid through holes in the bend area, particularly in a dynamic application.
- Coverlayer - avoid stress risers (exposing the incoming track); reduce opening in coverlayer to 250um.
- Planes - crosshatched, if possible.
- Staggered lengths - to avoid layer buckling when flexed (bookbinding), stagger the layer lengths by approx 1.5 times the layer's thickness.
- Service loop - make the flex region slightly longer to help with assembly/disassembly and to allow for product dimensional variations (the extra length is referred to as the service loop).
- Conserve copper - consider how the flex circuit will be panelized; it might be better to adjust the design to ensure best material usage.
- Panelization - orient the flex regions to suit the grain of material (bend along the grain).
- Tear resistance - curved corners; drilled hole at corner; hole in slit; leave metal in corners.
- Routing - stagger the routes on two layer boards to avoid I beaming, and widen the routes through the bending zone (this is especially important for permanent bends).
- Static Bend Ratio - setting the ratio of the bend radius to the circuit thickness. Ideally, multi-layer circuits should have a bend ratio of at least 15:1. For double-sided circuits, the minimum ratio should be at least 10:1. For single-layer circuits, the minimum ratio should also be at least 5:1. For a dynamic application, aim for a bend ratio of 20-40:1.
- Rolled annealed copper is more ductile; plated copper is not the best choice for flexible regions.
Documentation and Drawing Requirements
Typical suggested documentation requirements include:
- The Flex PCB shall be fabricated to IPC-6013, class (your requirement here) standards.
- The Flex PCB shall be constructed to meet a minimum flammability rating of V-0 (if required).
- The Flex PCB shall be RoHS compliant (if required).
- The rigid material shall be GFN per IPC-4101/24 (if using epoxy material).
- The rigid material shall be GIN per IPC-4101/40 (if using polyimide material).
- The flexible copper clad material shall be IPC 4204/11 (flexible adhesive-less copper clad dielectric material).
- The covercoat material shall be per IPC 4203/1.
- The maximum board thickness shall not exceed (your requirement here) and applies after all lamination and plating processes. This is measured over finished plated surfaces.
- The thickness of acrylic adhesive through the rigid portion of the panel shall not exceed 10% of the overall construction. See comments on this above.
- Pouch material can be used for ease of manufacturing and must be removed from the flexible portion of the board prior to shipping.
- The flexible section thickness shall be (your requirement here). Do not add this note if this thickness is not critical.
- Minimum copper wall thickness of plated through holes to be (your requirement here; .001” average is recommended) with a minimum annular ring of (your requirement here; 002 is recommended).
- Apply green LPI soldermask (if required) over bare copper on both sides in the rigid sections only of the board. All exposed metal will be (specify your surface finish requirement here).
- Silkscreen both sides of the board (if required) using white or yellow (most common) non-conductive epoxy ink.
- Marking and identification requirements.
- Electrical test requirements.
- Packaging and shipping requirements.
- Impedance requirements.
Additional Drawing Detail
- A drill table detailing finished hole size, associated tolerances and plated/not plated.
- A dimensional drawing, including reference datum(s), critical dimensions, rigid to flex interfaces, bend location and direction markers.
- Panelization detail, if required.
- Construction and Layer detail, detailing material used for each layer, thicknesses and copper weights.
References
Flex and Rigid-Flex Circuits Technical Engineering Guide - Epec Engineering Technologies
Flexible Circuit Technology - Joe Fjelstad
Flex Circuits Design Guide - Minco Products Inc
Machine Design website:
- Basics of Flex Circuit Design - Robert Repas
- Staying Flexible - Mark Finstad, Applications Engineer