Objective: To learn more about Duro's Altium integration.
Difficulty: Expert
In this article:
- Overview
- Setting up the connection between Altium & Duro
- Project initialization
- Project releaser
- Publishing releases
- Migrating and cloning existing projects to Duro
- Component Sync
With the Duro - Altium integration, you can quickly transfer project information, manage component versioning, and update revisions. This will enable you to automatically sync and generate BOMs, part choices, component data, and documents in Duro. Our partnership with Altium eliminates time spent laboriously entering part data manually. Sharing documents, designs, and data with team members is simplified, empowering your company to get work done faster and more efficiently.
Overview
Duro's integration with Altium lets users seamlessly synchronize and release PCBA projects between Altium A365 and Duro PLM. This integration is powered through outjob files and the Project Releaser in Altium. Components, products, and assemblies that have been published into Duro are entirely synced during the Component Sync process.
Some of the advantages of the Altium - Duro integration include providing our users with the ability to create a project in Altium, generate a release in Altium, and then publish the release into Duro. This process includes the following capabilities:
- Syncing projects and components from Altium into Duro with custom specifications
- Linking the revision value to Altium or independently
- Populating BOMs
- Publishing documents directly from Altium into Duro
- This includes the following: schematic prints, Gerber Files, ODB Files, Drill Files, Step/3D PDF
- Syncing Altium part choices into Duro sourcing
- Sent during the Library Sync, pulls from Octopart
- Creating both Change Orders and releases in Duro
- Providing support for Altium variants, creating variants within Duro
Setting up the connection between Altium & Duro
For a demonstration of the Altium - Duro integration, we will walk you through how to publish a release, both a new project and an existing project.
Duro: set your plugin password
Log into Duro and ensure that you have your plugin password configured. To set your plugin password, follow the below instructions:
- Click on your avatar.
- Click on Account Settings.
- Click on Your Profile.
- Click plugin password, located above your profile picture.
- Enter the plugin password that you want to set.
- Click save to set the password.
Now we have successfully set the plugin password in Duro.
Desktop: download XML files
To prepare for the setup of the connection, download two of the following XML configuration files: (1) Publish Template as well as (2) the Duro Revision OR the Altium Revision. Choose the file that you prefer, depending on how you want component revisions to connect between Duro and Altium.
Publish Template
The publish template applies to publishing releases and maps the documents in the releases to components in Duro.
https://altium.thestateofplm.com/prod/publish.xml
Duro Revision
This XML file copies the revision value from Altium to Duro, linking the revisions on both platforms.
https://altium.thestateofplm.com/prod/config_duro_revision.xml
Altium Revision
This XML file keeps the Duro revision independent of the Altium Revision value, allowing the revision to be managed from Duro.
https://altium.thestateofplm.com/prod/config_altium_revision.xml
Altium: setup the connection to PLM
Now switch to the Altium A365 web client to continue setting up the connection. First, we’ll create a new instance and customize it.
- Navigate to the Admin tab and click on the PLM Integration.
- Click on Add Instance, located in the upper right-hand corner of the screen.
- Enter a name for the connection, such as “Duro.”
- Enter a description for the connection, such as “Duro Connection.”
- Upload one of the linked XML files (see the section titled Download XML Files above) by clicking Upload, located to the right of the Configuration File text box.
- Select the XML file that matches revision scheme: Duro Revision, Altium Revision, or Published Template.
- Click Open to upload the file.
Altium: configuring the publish profile
- Click on the Publish Template
- Click on Add Template.
- Enter a name for the template, such as “Duro Publish Template.”
- Enter a description for the template, such as “Duro Publish Template.”
- Click Upload, located to the right of the Template File text box.
- Click OK in the Publish Template module.
Altium: set PLM credentials
- Click on Set Credentials to set the credentials for this connection to use when testing.
- Enter your Duro email address.
- Enter the plugin password (created earlier in this tutorial).
- Click OK.
If the credentials were set successfully, “Set credentials successfully” will appear next to the Test Connection button. If you entered an incorrect password, red text will be shown in its place, conveying that setting the credentials was not successful. In the case of an error, it would read “Set credentials failed (Unable to connect to PLM).” If this happens, please double check the password that you provided is identical to what you set within Duro. If the error persists, please reach out to our support team at info@durolabs.co for assistance. Both system responses are depicted below:
Set credentials success
Set credentials failure
Altium: test the Connection
To verify that the connection was setup correctly, click on Test to populate the test module. If the connection was setup correctly, the subheading underneath Status will show “WARNING.” However, if the Status shows “ERROR,” please reach out to our support team at info@durolabs.co for assistance. Both statuses are depicted below:
Correct connection setup
Incorrect connection setup
Altium: edit the publish to PLM process
- Navigate back to the admin tab and click on the Processes.
- Click on Project Activities.
- Find the Publish to PLM process, which Altium provides within the platform. Select the row, which is titled Publish to PLM (User selects).
- Click on the pencil icon to edit.
- Click on the process designer workspace to activate the name text box.
- Rename to “Publish to Duro.”
- Click on Save and Deploy to save the new process.
- Ensure that the active circle under the Active column is filled in and green, signaling that the process is active.
Altium: edit the project releaser process
- Also under Project Activities, find the Project Releaser with Publish process, which Altium provides within the platform. Select the row, which is titled Project Releaser with Publish.
- Click on the pencil icon to edit.
- Click on the process designer workspace to activate the name text box.
- Rename to “Release and Publish to Duro.”
- Click Save and Deploy to save the new process.
- Ensure that the active circle under the Active column is filled in and green, signaling that the process is active.
Altium: enable the project initialization process
- Click on Project Creations.
- Select the Project with initialize process, which Altium provides within the platform. Select the row, which is titled Project with initialize in PLM.
- Click the pencil icon to edit.
- Click on the process designer workspace to activate the name text box.
- Rename to “Initialize in Duro.”
- Click on Save and Deploy to save the new process.
- Ensure that the active circle under the Active column is filled in and green, signaling that the process is active.
Your environment is now configured to work with Duro. When you open the Altium desktop application and connect to your Altium workspace, you'll notice that there are new menu options corresponding to these processes that we just enabled. These will be covered in detail in the following sections.
Project initialization
In this section, we’ll cover how to initialize a project in Altium that's linked with Duro. You'll want to initialize a project in the following scenarios: starting a project for the first time or tracking any changes within Duro. Project Initialization is not an essential step but will be useful if you want to assign CPNs to the project from Duro or reserve the project name in Duro.
- Login to your Altium interface.
- Click on File.
- Click on New.
- Click on Project in Duro Labs.
- Click on Initialize in PLM (OOTB).
- In the “Initialize in PLM (OOTB)” module that populates, enter a name for the project into the Project Name field, such as “Demonstration.” Ensure that the project name is valid; if the text is shown in red, the name is already taken.
- Enter a description for the project in the Description field, such as “Demo.”
- Choose a project template.
- Click Start.
Altium: set Duro credentials
At this point, provide your Duro credentials and the plugin password you created during the initial setup. The following sets are to be completed within the Login Credentials module.
- Enter your Duro email into the username field.
- Enter your plugin password (set within Duro) into the password field.
- Click Submit.
Altium: checking the project values
As we can see now in this exercise, the project has been created.
- In the Projects Window, click on the project that was just created.
- At the bottom of the menu, select Project Options.
- In the Options for “PCB Project Demonstration” module that populates, click on the Parameters
- At the bottom of the module, click on the Refresh button, which will generate a few new line items corresponding to fields within Duro. These line items will be shown in blue.
For example, the PLM part number corresponds to the PCBA with Duro. Write down the project CPN (PCBA, CPN 913-00035, is used in the example) and switch over to the Duro web client.
Duro: viewing an assembly in your library
In this section, we’ll take a closer look at the project initialized in the previous section.
- Sign into your Duro account.
- Navigate to you Component Library by clicking on Components in the left navigation.
- Refresh the page to ensure all recent updates are loaded from Altium.
- Find the project in your library, which will be located at the top of the list. Conversely, you can also search for the CPN in the Search Bar.
- Click on the hyperlinked CPN to go to the component page.
- Click on Assembly to view the Assembly tab.
New items will have been added to the project. In this example, one of the items is the printed circuit board, which corresponds with the board itself and Altium and the other item is the Electrical Bill of Materials (EBOM), which corresponds to the Bill of Materials (BOM) of all the components added to the printed circuit board. The components will be added as children on the EBOM to keep the BOM on this item clean with only two items.
Now, you'll notice there are no documents that have been added at this point, and that's because the release has not yet been generated and published. At this point, you can begin working in Altium Designer, adding all your components, and building your board to publish that design into Duro. You can do so by generating a release which will be explained in the following sections.
Project releaser
In this section, we will demonstrate the Altium Project Releaser, which uses the out job files located within the settings folder of the default PCB project template. These out job files specify what outputs are generated to be packaged up into the release zip file. The “.outjob” file contains the outputs to be generated during the release. Several “.outjob” files may be used and each one may contain one or many outputs that are defined.
In the Projects window of Altium, you can view the assembly, documentation, and fabrication. Simply open the Settings folder, then subsequently open Output Job Files to view these files. A glance at the fabrication output job shows that it generates Gerber Files and C Drill Files, ODB Files, along with Fabrication Drawings. These are all the files that would be necessary to produce a Printed Circuit Board (PCB). Instead of generating these one at a time, an out job file can be used to generate them in a batch to save time.
A file path is inserted into the release which is specified for each of the above mentioned outputs. This file path is viewable in the Output Containers window; for the Fabrication Drawing, the file path is shown in the section under “Path in Server.” This data can be used to get an idea of the folder structure of the of the release that's generated, which can be edited and configured if needed through the Change button. The option to remove outputs is also available within the Output Containers window across from the Change button.
Altium: accessing the releaser menu
To access the Releaser menu, follow the below steps:
- Click on either the schematic or the board for the project.
- Click on the Project
- Click on Project Releaser.
- Click on Release and Publish to PLM (OOTB).
The Release Demonstration window contains the following settings:
- Configure Server Release
- Validate Project
- Generate Data
- Review Data
- Upload Data
- Execution Report
- Publish to PLM
Under Configure Server Release, you are granted options to Include Source Data, Include Fabrication Data, or Include Assembly Data for No Variant.
Altium: output job file selection
- Click on Options. This will populate the “Project Release Options” module.
- In the Source Data section, check the box for Documentation.
- In the Fabrication Data section, check the boxes for Assembly, Documentation, and Fabrication. The fabrication data is the object that the Duro integration uses to get the documents from Altium.
- In the Assembly Data section, check the box for Assembly.*
- Click OK.
- In the Release Demonstration Window, check the boxes for Include Fabrication Data and Include Assembly Data for No Variant.
- Click Prepare to start generating the release.
- In the “Item Creation” module that populates, click on Create Items.
- In the “Project Modified” module that populates, click on Save and Commit Changes.
- In the “Commit Version Control” module that populates, click on Commit and Publish. Altium has now begun generating the files specified in the output job files, a process that usually runs quickly.
- Click Release.
- Insert notes into the Release Notes field if needed.
- Click OK when complete.
*Note: These settings are not required but are rather the default settings used for this tutorial.
Now the release is uploaded and successfully generated so that our other team members can see it. This is where publishing the release into Duro is now possible. Since we've selected the option to release and publish in the PLM, the publish option is now immediately available in the bottom right hand corner of the window.
Publishing releases
In this section, we will detail how to publish a release from Altium in Duro. If you haven't already, please ensure that you have generated a release using the Altium Project Releaser, which was discussed in the previous section. Publishing a release allows you to sync your project and its components from Altium into Duro. Complete this process after generating a release using the Altium Project Releaser.
- Click on the Project
- Click on Project Activities.
- Click on Publish to Duro.
- In the “Publish to Duro” module that populates, ensure that the project you would like to release is selected.
- Click Start.
- In the “Select Data to Publish Module” that populates, select the release that you wish to publish.
- Click Submit.
The Duro integration will begin processing the release.
Altium: monitoring the status
You can monitor the status of this process from the task list panel through the following steps:
- Click Panels.
- Click Tasklist.
- To show current tasks, click the Refresh button in the Tasks section.
- To show current activities, click the Refresh button in the Activities section.
- The published task has shown up and is still processing as can be seen by the state. Under the State column, hover your cursor above the circle icon, which will show that it is “On Hold.”
- Once this process finishes, it will be shown under the show closed section. To view this, click on the settings icon within the module.
- Check box for Show closed which will show the process once it closes. And that looks like the process has completed and we can see the state now have closed and we can close the task list before.
If your process finishes with an error, view the log info within the Data tab.
Altium: checking revisions
Before switching platforms and opening Duro, it is advisable to check the revisions of the PCBA, PCB and EBOM in Altium. Utilizing the Altium-based revision copies the revision from Altium into Duro. If you do not want your revisions to be linked in this manner, ensure that you use the Duro based revision configuration file in your connection setup. For more information on this process, refer to the Connection Setup section.
- Inspect the project parameters by clicking right clicking on the project in the Projects Window.
- Select Project Options.
- In the module that populates, select
- Click the Refresh button to make sure you have the most up-to-date copies. The parameters of “ProjectRev” correspond to the PCBA revision in Duro. Similarly, the “SCH_REV” corresponds to the schematic revision in Duro. Finally, the “PCB_REV” corresponds to the PCB revision in Duro.
- Click OK.
Altium: checking CPN generation
We'll also check to see where the CPNs that are generated by Duro show up in Altium.
- Double click on a component in the process designer workspace. This activates the Properties tab.
- In the General section of the Properties tab, click the Refresh icon to generate the most up-to-date values from the server.
- In the Parameters section of the Properties tab, click on Show More. This shows that the selected part now has a property of “PlmPartNumber.” This corresponds to the CPN that is generated by Duro. If you type this CPN into the Search Bar in Duro, this component data will generate there as well.
Duro: checking component generation
By pulling up your project in Duro, we can verify the revision values that we just checked in Altium. Simply refresh the component page to ensure updated values are visible. As evidenced above, the Assembly tab accurately reflects the updated workflow state and revision number of the project and any BOMs that may be included. Likewise, opening the assembly tab reveals that all the components from the schematic have been added into any associated BOMs. The revision, state, quantities, and reference designators (REF DES) that were used in the schematic within Altium have been pulled into Duro.
Now we'll switch back to the project and we'll click over to the documents tab.
In this example, you can see that there's a PDF drawing of the schematic as well as a step file of the board assembly that have been added. This project has a set of assembly drawings, the Gerber files, the NC files, the ODB files, and a fabrication print, which comprise all the files required to produce this circuit board. This data is conveniently uploaded into Duro on the PCB object when the release is published. Your project has been successfully synced from Altium to Duro, and you can share the design in Duro with any of your teammates and track revisions and statuses. For future reference, repeat this process whenever Altium releases need to be pushed into Duro.
Migrating and cloning existing projects to Duro
In this section, we’ll demonstrate firstly how to migrate an existing Altium project into Duro without creating a clone and secondly how to migrate and clone an existing Altium project into Duro. The first method allows you to migrate existing data from Altium into Duro only, whereas the second does this in addition to creating a clone of the data. The first process is much simpler and takes less time to complete, whereas the second is more time-consuming. The second process should be utilized when you have an existing design and want to transfer all the details into Duro. You can do this for any project that you have that is not associated with Duro. This uses the clone with the Initialize in PLM option that is available from the Altium A365 web client. This method will create a duplicate project that has been initialized in Duro. Use this option if you want two copies of your project, one in Duro and one outside of Duro.
Altium: copying an existing project into Duro only (first method)
Duro also has another method that copies component data into Duro, which this section will demonstrate. This does not duplicate the project in Altium and create a clone.
- Open your project in Altium.
- Ensure that you have a release generated already and that you're ready to publish in Duro.
- Click on to the Project Sheet.
- Click on the Projects tab.
- Click on Project Activities.
- Click on Publish to PLM (OOTB) which populates the “Publish to PLM (OOTB)” module.
- Ensure that the correct project is selected and click on Start. This populates the Select date to publish module.
- Select the release that you wish to generate to publish in Duro.
- Click Submit. This populates the “Login Credentials” module.
- Enter your Duro email into the username field.
- Enter your plugin password into the password field.
- Click Submit.
The project will be initialized, and the release published into Duro. If you inspect the project parameters, it will showthat the PLM part number has been generated. From here, additional releases can be generated and published into Duro as outlined in the Publishing Releases section.
Altium: cloning and copying an existing project into Duro (second method)
In this section, we’ll cover the first migration method of cloning and initializing a project.
- Select the project that you wish to clone by clicking the three dots in the bottom right corner of the project tile.
- Select Clone – Initialize in PLM (OOTB). This will populate the Clone – Initialize in PLM (OOTB)
- Enter a name in the Project Name field of the module.
- Click Start. This will generate the Initialize in PLM – Login Credentials
- Enter your Duro email into the username
- Enter your plugin password into the password field.
- Click Submit.
Now the project has been cloned and copying in Duro. The data doesn’t move out of Altium, but the data is simply copied into Duro. From here, a release can be generated if not already on the clone project. Once the clone project has a release, it can be published Duro as outlined in the Publishing Releases section. At this point, feel free to close this project.
Altium: viewing project parameters
You can view the project parameters after utilizing either migration method. If we open the project in Altium Designer and look at the project parameters, we will see the PLM part number, as was demonstrated in the previous section on cloning and initializing a project in Altium.
- In the Projects window, click on Duro Labs.
- Click on Open Project.
- Ensure that the project you want to open is selected under in the Name pane.
- Click Open.
- Open the project parameters by clicking on the project in the Projects window again.
- Select Project Options.
- Click on the Parameters
- Click the Refresh button in the module that populates.
- The PLM part number that was generated by Duro is now viewable. The line item will show “PlmPartNumber” under the Name column, and the CPN will be shown under the Value column.
Component Sync
In this section, we will walk you through the Component Sync process between Altium and Duro. Altium has a long-running process called Component Sync that will synchronize the Altium component library into your Duro library. It is recommended to run this process overnight, and it can be scheduled to run periodically. Only components that have been published into Duro by the method outlined in Publishing Releases will be synced. When components are synced via Component Sync their part choices data will be pushed from Altium into Duro. Run this process to ensure that your component’s parameters and sourcing information in Duro is up to date. An easy way to check if a component will be synced during the Component Sync is to see if it has a populated CPN (also referred to as the PLMPartNumber). If it does, it will be synced.
Altium: starting the component sync
This process will sync the components from Altium into Duro.
- Navigate to the Admin tab in the Altium A365 web client.
- Under this tab, click on the PLM integration section.
- On the right hand side of the screen, you'll see the PLM connection that was set up in the connection setup section.*
- Click on the green pencil icon to edit the connection.
- Click the Component Synchronization tab in the edit window.
- Check the box for the Synchronize PLM components with server on schedule.
- Below the checkbox, the sync can be configured to run either on an hourly frequency or on a daily schedule. Edit the synchronization dropdown according to your preference. Select either Hourly or Daily in the right dropdown and select an hourly or daily numerical frequency in the left dropdown.
- Optional: click on the Sync on demand dropdown and select either Full or Incremental to further customize the sync options. Choosing Full will sync every component from Altium into Duro that have been published from Altium into Duro already. Choosing Incremental will only sync components that have been published from Altium into Duro that have had changes made since the last sync.
*Note: on this connection, there's a green play button. This button can be used to immediately start a component sync to schedule the library sync to run.
Every component that has been published into Duro from Altium will be synced when upon completion of this process. We recommend having this process run overnight when users aren't actively making changes to components. Once the Component Sync has run, components in Duro will have all changes to their specifications updated as well as their sourcing data.
Duro: sourcing tab check
Switch to your Duro account to view the sourcing information of a component or assembly migrated from your Altium account to your Duro account.
- Sign into your Duro account.
- Navigate to a component or assembly from your component library, your dashboard, or by utilizing the Search Bar.
- Click on the Sourcing tab.
The CPNs associated with this component in the Altium part choices have been copied into Duro and the relevant information pulled from Octopart. To make changes to this information, the part choices information in Altium will need to be updated to have another MPN associated or removed from this list.
Comments
0 comments
Please sign in to leave a comment.