Altium Designer Documentation

Synchronizing a Rigid-Flex Board with Altium MCAD CoDesigner

Created: August 4, 2021 | Updated: August 4, 2021

Parent page: ECAD-MCAD CoDesign

  • The features described on this page are not available with the Standard Subscription Plan.
  • CoDesigner does not support the Advanced Rigid-Flex mode (also known as Rigid-Flex 2.0). To be able to transfer to MCAD via Altium CoDesigner the board must be designed in the standard rigid-flex mode.

This CoDesigner rigid-flex synchronization functionality requires:

  • An Altium Pro Subscription Plan
  • Altium design software, either:
    • Altium Designer 20.2 or later, with the MCAD CoDesigner extension version 2.0.4 or later, or
    • Altium NEXUS 3.2 or later, with the MCAD CoDesigner extension version 2.0.4 or later
  • A supported MCAD platform, which currently includes:
    • Dassault Systemes SOLIDWORKS® (Standard, Pro & Premium) - version 2020, 2021, 2022, with CoDesigner Addin version 2.0.4 or later
    • PTC Creo Parametric® - 6.x, 7.x, 8.x, with CoDesigner Addin version 2.3.0 or later.

Support for Autodesk Inventor® and Autodesk Fusion 360® will be released in a future update.

Perhaps the most challenging printed circuit board design to bring to production is a 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 during the product assembly process, requiring careful design of how the loaded board must flex during assembly to interface to the enclosure.

To date, this tight electro-mechanical design challenge has been solved by making a mechanical mock-up, also known as a paper doll cut-out. This process must be as accurate and realistic as possible with all possible mechanical and hardware elements included so that both the assembly process and the finished assembly can be carefully analyzed.

Altium CoDesign helps solve this challenge, delivering the ability to transfer the rigid-flex design between the ECAD and MCAD domains. It does this by implementing each flex region of the board as an MCAD Sheet-Metal Feature.

Rigid-Flex Design in ECAD

In Altium's PCB editor, the rigid-flex board is designed in the X-Y plane as a collection of separate rigid and flexible board regions. The Z-plane is defined by configuring the set of copper, insulation, and surface finishing layers to be created during the board fabrication process.

For a rigid-flex design, the set of fabrication layers can be different for each region of the board. For example, one rigid region might be four copper layers, a flex region projecting from that rigid region might be one copper and one melamine layer, and the flex region might connect to another rigid region, made up of six copper layers. During ECAD PCB design, a separate layerstack is defined and assigned to each of these regions.

A board with two rigid regions connected by a flexible region in the ECAD PCB editor, and in MCAD. A board with two rigid regions connected by a flexible region in the ECAD PCB editor, and in MCAD.

In Altium's design software the rigid-flex board is designed flat. Bends defined in the flex regions can be applied when the board is displayed in the PCB editor's 3D Layout Mode, by sliding the Fold State slider in the Layer Stack Regions mode of the PCB panel. The bends are applied in the Sequence order configured in the panel.

The board is Pushed to MCAD in the folded state, the bends can then be suppressed in MCAD to display and work on the board.

Learn more about Defining the Layer Stack

Learn more about Defining Board Regions and Bending Lines

Learn more about Rigid-Flex Design

Requirements for the ECAD Board Definition

When the board is Pushed from ECAD, CoDesigner checks for potential issues with the board outline, and the location and size of bending areas. On Pull in to MCAD, CoDesigner also checks the radius of each bend and rejects any bend that cannot be rendered as an MCAD sheet metal bend.

The Board Shape

On Push from ECAD, the board contour (outline) is tested. If there are micro-segments or self-intersecting contours detected, they must be resolved. CoDesigner 2.4 introduced an automatic feature to detect and resolve micro-segments in the board outline.

CoDesigner tests the board outline for issues that cannot be supported in MCAD and will resolve them automatically.CoDesigner tests the board outline for issues that cannot be supported in MCAD and will resolve them automatically.

If you choose to not resolve the micro-segments automatically, or there are or self-intersecting contours in the outline, or micro-segments or self-intersecting contours in a board cutout, these must be resolved manually. Learn more about Resolving Issues with the Board Contour

Bending Lines

In ECAD, technically there is no limit to the properties that can be applied to a bend in a flexible PCB. In MCAD, sheet-metal capabilities are used to represent the flexible segments of the board. To ensure that the bends can be represented in MCAD, the following requirements must be met:

  • A bending area should not overlap or touch another bending area or rigid region. The bend radius must not extend beyond an adjacent split line, requiring at least 0.5 mil (0.0127 mm) distance between the edge of the bend area and a rigid region. This is tested when you Push in ECAD, any issues detected must be resolved to be able to successfully push.

In this design, the bend area is too close to the split line (less than 0.5mil).In this design, the bend area is too close to the split line (less than 0.5mil).

  • Suitable bending radii are defined. CoDesigner checks for: a bending radius that is too small; a bending angle that is too big; or bending segments that are too short. This is checked during Pull in to MCAD, taking the thickness of “metal” and the bend relief requirements into consideration.

Two bends have a radius that is too small to be formed in sheet metal so cannot be created.Two bends have a radius that is too small to be formed in sheet metal so cannot be created.

It is not possible in ECAD to accurately predict which bends can be built by the MCAD tools and which will fail. However, during Pull in to MCAD, CoDesigner will warn if a bend cannot be built. In this situation, it is recommended that the mechanical engineer contact the ECAD designer to work out how the properties of a specific bend can be changed.

On Pull in to MCAD, CoDesigner checks that the minimum bend radius is:

rmin > 1/2 * FlexSubstackThickness

The substack thickness is displayed in the Layer Stack Manager Properties panel.

Rigid-Flex in SOLIDWORKS

When the rigid-flex board is Pulled into SOLIDWORKS, the board structure is mapped in the following way:

  • A SOLIDWORKS part is created for the entire board, named <PcbProjectName>_BOARD.
    • Within this part, a SOLIDWORKS Extrude Feature is created for each rigid and each flex region, named <PcbRegionName>. The thickness of each extrude is defined in ECAD by the sum of the layer thicknesses included in the board layer stack in that region.
    • Each flex region of the board is represented by a SOLIDWORKS Sheet-Metal Feature.
    • For each bend in a flex region, a SOLIDWORKS Sketched Bend is created. Sketched Bends can be suppressed in SOLIDWORKS to flatten the board out.
    • A coordinate system is defined at one end of each of the rigid-flex split lines. Each of these coordinate systems is used for mating each rigid region component assembly (described below).
  • The board outline is defined by a Sketch. This Master Sketch includes all regions split by the split lines.
  • A SOLIDWORKS Assembly is created for the set of components mounted on each rigid region of the board, named <PcbRegionName>_COMPONENTS. The assembly includes a SOLIDWORKS Part for each component mounted on that region. This assembly is mated to the board part by a local coordinate system.
  • Note that components mounted on the flex region(s) are not transferred to MCAD.

Capabilities Currently Supported in SOLIDWORKS

Altium CoDesigner supports the transfer of rigid-flex boards from ECAD to MCAD and back.

The Mechanical Engineer, after pulling a rigid-flex board from ECAD, can:

  1. Preview the ECAD changes in MCAD.
  2. Create new rigid and flex board regions in MCAD.
  3. Create new bends in MCAD.
  4. Make changes to the geometry of the rigid and flex segments of the board. For example, adjust the board’s shape to suit the geometry of the product enclosure, create cutouts or mounting holes, or change the radius of a bend.
  5. Make changes to the placement of existing components, and place new components on the board.
  6. Push those changes to ECAD and pull new changes from ECAD.

Capabilities not yet Supported in SOLIDWORKS

  1. Create a rigid-flex board from scratch in MCAD.
  2. Transfer copper and silkscreen detail.
  3. Transfer boards that include flex regions that have different thicknesses (multiple flex regions are supported).
  4. Transfer components mounted on a flex region from ECAD to MCAD.
  5. Place components on a flex region in MCAD.
  6. Create new board regions on a flex-only board.
  7. New features introduced as part of the Rigid-flex 2.0 update.

Rigid-Flex in PTC Creo

When the rigid-flex board is Pulled into PTC Creo, the board structure is mapped in the following way:

  • A Creo assembly is created for the entire board, named <PcbProjectName>.
  • A Creo assembly is created for the flex part of the board, named BOARD_<PcbProjectName><CoD_UID>.
    • Within this assembly, a Creo Sheetmetal part is created.
    • For each bend in a flex region, a Creo Sketched Bend is created. Sketched Bends can be suppressed in Creo to flatten the board out.
    • A coordinate system is defined at one end of each of the rigid-flex split lines. Each of these coordinate systems is used for mating each rigid region component assembly (described below).
    • The board outline is defined by a Sketch. This Master Sketch includes all regions.
  • A Creo Assembly is created for each rigid region of the board, named <PcbRegionName>_<CoD_UID>. The assembly includes a Creo Part that represents the rigid region itself, and a Creo Part that represents each component mounted on that region. This assembly is mated to the board part by a local coordinate system.
  • Note that components mounted on the flex region(s) are not transferred to MCAD.

Capabilities Currently Supported in PTC Creo

Altium CoDesigner supports the transfer of rigid-flex boards from ECAD to MCAD and back.

The Mechanical Engineer, after pulling a rigid-flex board from ECAD, can:

  1. Preview the ECAD changes in MCAD.
  2. Make changes to the geometry of the rigid and flex segments of the board. For example, adjust the board’s shape to suit the geometry of the product enclosure, create cutouts or mounting holes, or change the radius of a bend.
  3. Make changes to the placement of existing components, and place new components on the board.
  4. Transfer copper and silkscreen detail on the rigid regions.
  5. Push those changes to ECAD and pull new changes from ECAD.

Capabilities not yet Supported in PTC Creo

  1. Create a rigid-flex board from scratch in MCAD.
  2. Create new rigid and flex board regions in MCAD.
  3. Create new bends in MCAD.
  4. Transfer boards that include flex regions that have different thicknesses (multiple flex regions are supported).
  5. Transfer components mounted on a flex region from ECAD to MCAD.
  6. Place components on a flex region in MCAD.
  7. Create new board regions on a flex-only board.
  8. New features introduced as part of the Rigid-flex 2.0 update.

Working with a Rigid-Flex Board in SOLIDWORKS

In SOLIDWORKS, a rigid-flex board is Pulled from your Server like a standard rigid board. If you are not currently signed in to your Server, refer to the topic Installing and Configuring CoDesigner in Your MCAD Software.

Changing the board shape in MCAD

  1. To change the shape of a board region
    1. Open (expand) the main board Part in the model tree.
    2. Open the first flex Region Feature and start editing its Sketch (this is the master Sketch for the entire board).
    3. Each edge will include an anchor, these are added by CoDesigner during initial creation for internal purposes, they can be deleted as required to modify the Sketch.
    4. The lines that split the board regions can be deleted and recreated if required.
    5. Modify the shape as required.

Edit the master Sketch to change the shape of the board.Edit the master Sketch to change the shape of the board.

If a rigid or flex segment, or a bending line, is accidentally broken or removed you will have to restore that definition manually. Alternatively, you can restore the previous heathy board state by pulling changes from the server.

  1. To create or redefine a flex region
    If a split line has been removed and redrawn, the flex region will need to be redefined.
    1. Edit the flex feature in the model tree.
    2. Check that the correct Contour in the Sketch is being used for the flex region. If it is not, delete the Selected Contour and select the correct one.
    3. Make sure that the extrude feature that represents the flex region has the correct thickness and correct offset from the bottom and/or top board face.
    4. Bends in this flex region may have also been broken, there are tips for fixing these below.
  2. To add new sketched bends, or change or remove existing ones
    1. Select a Sketched Bend and Edit it to change its location, angle or radius.
    2. At least one bend that came from ECAD should be kept alive – CoDesigner uses a bend as a reference when the board is pushed back from MCAD to ECAD.
    3. If you are modifying the shape of a board that has components placed, your MCAD software may re-assign the internal IDs to the faces/vertices, which can result in breaking the coordinate systems used for the attachment of the components to the board. For this reason, if you are going to make significant changes to the board shape in MCAD, it is better to do that without the components having been placed.
    4. If the components have been placed: create the bends in ECAD as close to their final position as possible, and then only adjust the bend(s) in MCAD. Alternatively, if your MCAD software breaks the coordinate system, you can restore the definition of the coordinate systems manually. Or you can simply ignore the changes made to the component placement when pulling the changed board back into ECAD.

The Coordinate System is used to secure the assembly of components placed on that rigid section of the board. If the Coordinate System becomes broken, it can be restored by synchronizing the board with ECAD.

  1. To create a cutout or a mounting hole
    1. Start editing the main board Part.
    2. To ensure the Cut Extrude or Hole is created before the board is flexed, move the “feature visibility” bar of the Cut Extrude or Hole upward in the model tree and place it above the first Bend feature.
    3. Create a Cut Extrude or Hole on the board part (with the sketch located on its top or bottom face).
    4. Move the “feature visibility” bar back to the bottom of the tree.

Making Changes to Component Placement in MCAD

  1. To define the precise location of a component (universal approach)
    1. Move your component upwards in the model tree to the board assembly level (if you want to locate that component relative to the board) or to the device level (if you want to locate that component relative to the enclosure).
    2. Define the precise location of that component using mates or dimensions. Then delete those mates/dimensions.
    3. Move your component back into the initial component subassembly (or to another subassembly if required) in the model tree.
  2. To make a simple movement/rotation of a component on the same board face within one rigid region
    1. Start editing the corresponding component subassembly.
    2. Move/rotate the component using the corresponding capabilities of your MCAD software.

Additional Recommendations for the Mechanical Engineer

  1. How to unfold a board (for example, to check for overlapping)
    1. Open (expand) the main board part in the model tree.
    2. Select the Sketched Bend features in the model tree (one or several according to the board structure and what is required) and Suppress them.

Note that in SOLIDWORKS 2018 and 2019, the components of an assembly related to a rigid region will not move with the region, on unfold.

  1. If you broke a model (and rebuild or undo does not help)
    1. If your latest changes were not saved, simply close your PCB assembly without saving, and open it again.
    2. If saved, pull changes from your managed content server and apply only those that are related to the broken entities.
    3. If pulling changes did not help, close your PCB assembly and do a fresh pull to overwrite the original PCB assembly (keep in mind that the changes you just made to the PCB will be lost).
  2. Other recommendations
    1. Do not change the set of existing coordinate systems and the set of mates between them. (there is a big chance that you will break the model)

Working with a Rigid-Flex Board in PTC Creo

Changing the board shape in MCAD

  1. To change the shape of a board region
    1. Start editing the Flex Part.
    2. Modify the shape of any segment of that part as required.
    3. Keep the integrity of the flex part: The segments should not overlap each other, and there should not be gaps between them.
    4. Stop editing the Flex Part.
    5. (Optional) Start editing the rigid parts that correspond to the segments you changed. Make the corresponding changes to them.

Notes:

  • The shape of rigid parts is not associated with the shape of the corresponding segments of the flex part.
  • CoDesigner will make changes to the shape of the board in ECAD according to the changes made to the flex part only. Nevertheless, it’s recommended to make changes to the rigid parts in MCAD as well, in order to get the board shape right. CoDesigner will adjust the shape of the rigid parts to the corresponding segments of the flex part on the next pull from ECAD.
  1. To create a cutout or a mounting hole
    1. Start editing the Flex Part.
    2. Unfold it by suppressing the bend features.
    3. Create a Hole or an Extruded Cut on the flex part (with the sketch located on its top or bottom face).
    4. Move it in the model tree so that it’s located before bends.
    5. (Optional) Start editing the rigid parts that correspond to the segments you changed. Make the corresponding changes to them.
    6. Go back to the flex part and unsuppress bends.

Notes:

  • The shape of rigid parts is not associated with the shape of the corresponding segments of the flex part.
  • CoDesigner will make changes to the shape of the board in ECAD according to the changes made to the flex part only. Nevertheless, it’s recommended to make changes to the rigid parts in MCAD as well, in order to get the board shape right. CoDesigner will adjust the shape of the rigid parts to the corresponding segments of the flex part on the next pull from ECAD.

Additional Recommendations for the Mechanical Engineer

  • If you broke a model (and rebuild or undo does not help)
    • If your latest changes were not saved, simply close your PCB assembly without saving, and open it again.
    • If saved, pull changes from your managed content server and apply only those that are related to the broken entities.

 

Found an issue with this document? Highlight the area, then use Ctrl+Enter to report it.

Contact Us

Contact our corporate or local offices directly.

We're sorry to hear the article wasn't helpful to you.
Could you take a moment to tell us why?
200 characters remaining
You are reporting an issue with the following selected text
and/or image within the active document: