Aligni Connector for Altium Designer

Aligni Connector is an native plugin for the Altium Designer CAD package. With Aligni Connector, engineers can place parts directly from their Aligni database onto schematic sheets and easily export BOMs directly from Altium to Aligni.

Aligni Connector is Obsolete

Unfortunately, development on Aligni Connector has been terminated. The state and level of support for the Altium API does not allow us to deliver the user experience expected by our customers. Instead, we suggest using Altium Replicator and the workflow outlined there.

We continue to investigate ways to improve the connection between Aligni and Altium Designer.

Aligni Connector for Altium Designer is a plugin for the electrical CAD package Altium Designer. Aligni Connector serves two primary roles in the typical CAD workflow. First, it allows schematic placement of components directly from the Aligni PLM database. This workflow is often preferred because it requires that all parts be created in the PLM database before they can be applied to a schematic. This discipline helps maintain consistency between schematics and the PLM data. Second, it provides a seamless way to push BOM revisions to the Aligni assembly. Combined, these two roles create a closed loop between your PLM database and CAD activities.

Installation

Aligni Connector for Altium Designer is installed directly into Windows like many other applications. It will detect your Altium Designer installation location and automatically make itself available to Altium Designer. For best results, exit Altium Designer before installing Aligni Connector.

Aligni Connector for Altium Designer is a plugin for the electrical CAD package Altium Designer. Aligni Connector serves two primary roles in the typical CAD workflow. First, it allows schematic placement of components directly from the Aligni PLM database. This workflow is often preferred because it requires that all parts be created in the PLM database before they can be applied to a schematic. This discipline helps maintain consistency between schematics and the PLM data. Second, it provides a seamless way to push BOM revisions to the Aligni assembly. Combined, these two roles create a closed loop between your PLM database and CAD activities.

Once the plugin is installed, an Aligni panel will become available when you have a schematic open. At the bottom right (AD18) is the Panels menu. Enable the Aligni panel to view and use the plugin.

Setup

Setting up Aligni Connector is easy. But integrating it into your workflow and processes may require a bit of effort. The overall process is:

  1. Prepare your Altium design workflow.
  2. Prepare your Aligni database to work with CAD.
  3. Create an API token in Aligni.
  4. Setup Aligni Connector to work with your Aligni account.
  5. Configure your parameter mappings.

Prepare Your Altium Designer Worflow

The Aligni-based database workflow is very similar to Altium’s Database Libraries workflow. In summary, you will maintain your symbol and footprint libraries such that each symbol (footprint) is in a single SchLib (PcbLib). This is the preferred arrangement when working with version control systems such as SVN or GIT and it works very well with a database-driven design process. If you currently have monolithic schematic or footprint libraries, you will need to use Altium’s Library Splitter Wizard to split these libraries into separate files.

Preparing Your Aligni Database

For any component that you will be placing onto a schematic and (optionally) into a PCB layout, you will need to have some custom parameters associated with those parts. These will be used to tell Aligni Connector how to handle these parts within your Altium design. In particular, they will tell Altium Designer which library file contains the symbol for the part and which file contains the footprint for the part. This is why it is important to configure your Altium libraries so that only one symbol is in each symbol library and only one footprint is in each footprint library.

The use of additional PCB footprints for each component is optional, but can be helpful. For example, your design standards may specify multiple capacitor footprints that vary by density (spacing). Passing multiple footprints to CAD for the same database part, you give the PCB designer the option of selecting the appropriate density footprint for each placement.

The XML name is up to you. The table below just provides our recommendations to be consistent with the remainder of this guide.

PARAMETER NAMETYPEXML NAME
Schematic SymbolStringschematic_symbol
PCB Footprint #1Stringpcb_footprint_1
PCB Footprint #2Stringpcb_footprint_2
PCB Footprint #3Stringpcb_footprint_3

After you have configured Aligni with the custom parameters, you can associate those parameters with any part types that will be placed on schematic. Finally, you can assign the schematic symbols and footprints to the parts in your database.

Aligni Connector Settings

Now that your Altium workflow is established to use individual symbol and footprint libraries and your Aligni parts include the symbol and footprint names associated with them, it’s time to configure Aligni Connector.

Visit the settings dialog by clicking on the Aligni logo on the Library tab of the Aligni Connector plugin. Enter your site name and API token. The site name is the subdomain name. For example, if your full Aligni site URL is https://microsoft.aligni.com then the site name is microsoft.

Next, add the locations of your Altium library. This is usually two filesystem folders where you keep the symbol and footprints, respectively.

Design Parameter Mapping

When you place a part from the Aligni database, Aligni Connector will pull certain information about that part into the Altium design database as design parameters.

In setting up the Parameter Mapping behavior, you tell Connector the specific behavior you want applied for each database column. For example, you can specify which part parameters you want added to your schematic database. You also specify which design parameters should be visible on the schematic sheet when added to your design.

The mapping behavior is defined for each Aligni part parameter as follows:

  • Database Field Name – This is the name of the Aligni database field that is passed to Aligni Connector via the Aligni API. This list is derived from the data received from Aligni when you refresh your local data.
  • Design Parameter – This is the name of the Altium design parameter that will receive the value specified in Aligni when you place a new component on your schematic.
  • Add to Design – This defines the behavior when you place a new component.
    • Do Not Add – The parameter is ignored.
    • Add to Design – The parameter is added as a design parameter to the Altium schematic instance.
    • Add to design if not empty – The parameter is added, but only if the value in Aligni is not empty.
  • Visible on Add – When checked, the parameter will be visible on your design schematic. When unchecked, the parameter is not visible. This can be changed manually after placement.

Altium Design Database

When you place a library part into your schematic, the part is recorded into the Altium database with the parameters as shown in the example below:

Required Mappings

The following are the mappings (design parameters) required to assure proper functionality in the schematic, the layout, and the translation back to Aligni as a completed BOM.

  • AligniPartNumber – To correctly map each part in your Altium design schematic to an item in your Aligni database, the Aligni database column “partnumber” must be present. You can name this design parameter anything you like, but we recommend “AligniPartNumber”.
  • [Library_Ref] – This is a native Altium parameter name used to specify the name of the symbol placed on the schematic. It is customary to specify this in your Aligni part database as a custom parameter so that it can be passed to the design schematic by Aligni Connector.
  • [Footprint_Ref] – At least one footprint reference should also be specified in your Aligni part database as a custom parameter. This will tell Altium which footprint to use. Multiple footprints may be specified using multiple custom parameters. See our recommended mappings below for an example.

Recommended Mappings

We suggest the mapping below for best results.

ALIGNI DATABASE COLUMNALTIUM DESIGN PARAMETERDESCRIPTION
partnumberAligniPartNumber
Add to Design
Adding the Aligni P/N is required to later match the part to an Aligni item record when you export the BOM from Altium.
manufacturerManufacturer
Add to Design
Adding the manufacturer name as a design parameter does nothing functional, but it adds a nice reference.
manufacturer_pnManufacturer_PN
Add to Design
Adding the manufacturer P/N as a design parameter does nothing functional, but it adds a nice reference.
value_textValue
Add if not empty
This is a basic Aligni parameter for the value of parts such as resistors and capacitors. We’ve instructed Altium to add to the design and also make visible. A Deesign Parameter will be added and that parameter will be displayed on the schematic sheet.
x_schematic_symbol[Library Ref]
Do not add
A custom parameter to define the schematic symbol for a part. Altium will use this to select the schematic symbol from your library.
x_pcb_footprint_1[Footprint Ref]
Do not add
A custom parameter to define footprint #1 used for a part. Altium will use this to provide this footprint as an option for the part.
x_pcb_footprint_2[Footprint Ref 2]
Do not add
A custom parameter to define footprint #2 used for a part. Altium will use this to provide this footprint as an option for the part. Any number can be specified, but you’ll want to map your custom parameters to the Altium footprint references in the same order.

Using Aligni Connector

Once the Aligni Connector setup is complete, you can go back to the Library panel and perform a refresh. This will retrieve the entire part database from Aligni and display all items in the library table in the top section of the panel. This panel is the primary interface for Aligni Connector and where you’ll spend the most time.

Part Library Browser

The top section of this panel contains the Aligni item master or part index. Right click on the table header to configure which columns are visible. The search at the top will operate on all visible columns.

If you click on an item in the list, symbol and footprint previews will be shown below. Obviously, these will only populate if you have specified a symbol and footprint in Aligni, if those mappings are made correctly in your Parameter Mapping, and if the appropriate libraries are found in the search paths you provided in the Aligni Connector settings.

Double-click on an item to enable placement of that item in the schematic.

Associate Design Variants to Aligni Parts

To close the loop and upload your BOM to Aligni, you will need to tell Connector which part (or parts) in Aligni correspond to your project. If you are using Altium Variants, you can map one Aligni part to each variant of your design. If you are not using Altium Variants, you will just map one Aligni part to your design. Connector will then be able to upload each variant’s BOM to the corresponding Aligni parts.

Setup the variant-to-part mapping on the BOM Upload tab.

Export BOM to Aligni

To upload your BOM to Aligni, visit the BOM Upload tab and perform the following steps:

  1. Create a new revision (for each variant) in Aligni, but do not release it.
  2. For each variant, select the draft revision you created in step 1.
  3. Click Upload to transfer the BOM(s) to Aligni.
  4. Review the data in Aligni.
  5. Release the revision(s).

About Fitted / Not Fitted Handling

Within the Altium Variants system, you can specify that selected components be “not fitted”. This means that, while these components are still present in your design, they are not to be inserted during assembly. These are also called “no-inserts”, “no-pops”, or “no-loads”.

Connector offers two options for handling “not fitted” components. The default (and recommended) handling is to keep the quantity correct on the BOM, but flag them as “No Load” in Aligni. Since Aligni handles this information natively, it means that the BOM can indicate the design quantity, but still provide a BOM to manufacturing that does not include these items.

The other option is to set the quantity for these “not fitted” to zero.

Items Without BOM Representation

There are many situations where you may want to include an item on your schematic but not include that item on your BOM. For example, mounting holes, silkscreen logos, fiducials, and other items have representation on the schematic (and PCB in some cases) but will not have any representation on the BOM.

For these cases, it can be helpful to define separate symbol and footprint libraries that contain these items. Instead of placing these items from the Aligni Connector library, you would place them from the native Altium library.

Variants Example

Not every design has a need for variants. Those that do can take comfort in knowing that Aligni Connector for Altium Designer supports them.

In this brief example, a small schematic with two variants is entered into Altium. Please refer to the Altium documentation for information about configuring and using variants.

Variant 1

Below are the schematic and BOM for the first variant in this example. Note that C2 is configured as “not fitted” in Altium which translates to a “No Insert” tag in Aligni.

Note also that the quantity for item 2 (000020) is 1 each. This is the default and recommended handling for not-fitted parts. If the other option were chosen, the line item would still be present, but the quantity would be 0 each.

Variant 2

Below is the schematic for the second variant in the example. Note that C2 is configured as fitted, but U1 and C3 are both configured as different parts. This is indicated in the Altium schematic by the bold and italicized manufacturer part number for U1 and value text for C3.

Variant Mapping

Variant mapping is done on the BOM tab. Aligni Connector lists each of the variants you have configured in Altium. Here, you can specify which Aligni Partnumber each one maps to. For this example, we have mapped the variants to two assemblies in the Aligni sandbox:

Exporting BOMs to Aligni

With the variants properly mapped to parts in your Aligni database, you can export the BOMs by clicking Export BOM(s) to Aligni…

Select the draft revisions to load with your updated BOM as shown below. When you click Export…, the BOM will be exported to Aligni.