Altium Designer Documentation

Supporting Design Variants in Altium Designer

Created: March 24, 2022 | Updated: July 12, 2022
All Contents

Concept image of three variants of a Smart Watch

When a product needs to be designed and produced as a number of variations of that product, where each has different options or capabilities, the ability to implement Design Variants avoids the need to create a unique version of the design for each variation.

In practice, a Design Variant uses the same base design, but the PCB assembly is loaded with the set of components specified by the variation. A variation may then be nominated when generating the design’s manufacturing output (BOM, P&P, Assembly drawings, etc), which will, in turn, determine how the product is assembled.

The ability to create variations of the same base design adds significant flexibility to how PCB projects are created in Altium Designer. Using Variants, you can define any number of variations of the board design, where each component may be configured as:

  • Fitted to the board.
  • Not fitted to the board.
  • Fitted to the board, but with modified component parameters, such as its value.
  • A completely different component, as an alternative replacement part.

Design Variants that use any of these types of variations are all referred to as Assembly Variants, as they only impact the assembly process – in this case, all variants share the same fabricated bare board.

Altium Designer also supports variations to component overlay information on the PCB, such as changing a component’s Comment, for example. Such a variation requires the production of two overlay screens, which results in the manufacture of two different bare boards. This type of variant is referred to as a Fabrication Variant.

Design Variants are managed, created and edited in Altium Designer's Variant Management dialog, which is accessed from the Projects » Variants option on the main menu. To learn more, refer to the Working with the Variant Management Dialog page.

Logical and Physical Components

It is helpful to understand that there are essentially two types of components in Altium Designer; logical components and physical components. The distinction is that components placed on the schematic sheet are logical components, where each is a conceptual entity that represents the physical component that is ultimately mounted on the assembled PCB.

While this one-to-one, logical-to-physical model works well for a simple design, it cannot support some of Altium Designer's more powerful features. Examples of this are multi-channel designs, where a section of circuitry is 'stamped out' as many times as required, and variants, where a single design can be implemented with different components fitted to each variation of the board design. Such features require the ability for one logical component to represent multiple physical components.

Altium Designer delivers this one-to-many capability through its compiler technology. When the logical design is compiled (an automated process), each physical component is instantiated in memory, ready for transfer to the board design space.

To cater for situations where access to the physical components is required at a schematic level, such as when defining design variations, the physical design is also made available in the schematic editor through tabs located at the bottom of the schematic sheet. Here, the left-most Editor tab selects the (normal) captured logical design, and the other 'compiled' tabs represent the equivalent physical design as it will be transferred to the PCB design space – note that the schematic under a compiled tab is read-only.

To learn more about working with design variants in the design, refer to the Working with Variants in the Design page.

Working in the physical design view of the Schematic editor, with a specific variant The schematic editor's physical schematic design view. Select the desired project variation by double-clicking on a Variant entry in the Projects panel.

To examine design variations, double click on the required variant in the Projects panel and switch to a compiled (physical design) tab of the schematic. The compiled tab displays a different Active Bar at the top of the design space, which includes variant-specific buttons. These buttons are only available when a variant is selected in the Projects panel.

Note that when you switch to a compiled tab the available menu entries will change, reflecting the commands that can be run when you are viewing the physical design. Click on the logical design tab (Editor) at the bottom of the schematic sheet to return to the standard editing menus.

Types of Variations

The Variants feature, as the name implies, creates variations of the original, or ‘base’, PCB design. Once this base design has been established, Variants are established in the variant manager by configuring the board components to be Fitted, Fitted with varied parameters, Not Fitted, or to use an Alternate Part.

Fitted

'Fitted' is the default state of a component before any variations are applied – if it is Fitted, then it is not varied. All components default to Fitted when a new variation is created in the Variant Management dialog (see below), which represents a Fitted component state as an empty cell.

Fitted with Varied Parameter(s)

The variant definition process allows a component to have any of its parameters varied. Modifying the value of a parameter is a local variation and will only affect the output documentation – the original schematic, and the component whose parameter is being varied, are not modified in any way. In the image below, C8 has the Value parameter varied, and this variation is indicated by the italic font used to display its value string.

Not Fitted

When a component is set to Not Fitted it still exists on the schematic and will be transferred to the PCB (so the footprint can be placed), but it is removed from the appropriate output documentation, such as the BOM. The way in which Not Fitted components are presented in the documentation can be configured, for example, set as marked with a cross on the schematic and in PCB drawing outputs – see the Variant Options dialog, accessed from the Drawing Style button in the Variant Management dialog.

Variants, example of when parts are not fitted, or have a varied parameter
With the selected variation (BGA); C6 is fitted, C5 and C7 are not fitted, and C8 is fitted, but with a varied parameter value.

Alternate Part

A variation can also be set to an entirely different component, as an Alternate Part. When the compiled tab is selected in the schematic editor, the alternate part will be shown when changing between Variants. For this type of variation, the alternate part must share the same set of schematic pins, placed in the same locations, as the base part. This is an essential requirement to ensure that the connectivity remains valid when the design is compiled. Hover the cursor over the image below to show the alternate parts for R3 and Q1 in the TSOP variant.

Variants, example of an alternate part
Q1 is an NPN transistor in the BGA variant, and a JFET in the TSOP variant (hover the mouse over the image to show the TSOP) – note that the same pins are used in each case.

There are two ways an Alternate Part is handled on the PCB:

  • If the footprint is the same – if the chosen Alternate Part has the same footprint name as the base part, then only one instance of that footprint will be transferred to the PCB. As multiple footprints can be assigned to a component, you should ensure that the correct footprint is selected in the Variant Management dialog for each variant.
  • If the footprint changes – if the chosen Alternate Part has a different footprint name from the base part, then both footprints are transferred to the PCB. You must then decide how to position the two footprints on the PCB. Note that both footprints will have the same designator, as only one or the other component is ever fitted. The animation below shows how this situation could be handled when one variant has BGA SRAM, and the other variant has TSOP SRAM.

Changing the Type of Component

The ability to select an alternate part is not restricted to choosing the same type of component, so you can, for example, have a base component that is a resistor, then define an alternate part that is a capacitor. It is important to be aware of the consequences of this type of alternate part:

  • Designator – there is only one designator for each logical, base component, and it is this designator that is used for all variants. If a resistor is swapped for a capacitor, for example, you might want to consider using a special designator prefix to indicate this, such as R_C or R-C.
  • Pins – the alternate component must have the same number of pins as the base component, and these pins must be in the same location and of the same electrical type. A warning will appear if these conditions are not met.

Multi-Channel Designs

Main article: Multi-Sheet and Multi-Channel Design

Multi-channel design allows the designer to nominate a single schematic sheet, or a tree of sheets, to be repeated – effectively stamping out this section of the design multiple times. Manual copying and pasting are not required since the software manages the stamping-out process, while the designer simply defines the annotation method used to identify the repeated components.

In Altium Designer, multi-channel designs, the ability to replace a base component with a completely different component is supported for a selected variant.

Demonstration video, two assembly variations of the same board In the animation, the BGA variant has two SRAM fitted, while the TSOP variant has four SRAM fitted. This is achieved by Not Fitting one of the two memory channels in the BGA variant.

In terms of channels, a variant can have components varied across all channels or within a specific channel, which includes the variations of components Fitted/Not Fitted, specific component parameters varied, or Alternate Parts.

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: