Interfacing Between ECAD and MCAD
Collaborating between the electronic and mechanical design domains has always been a challenge. ECAD and MCAD tools have different design objectives and have evolved down different paths, and so has the way they store and manage their data.
But today's designs demand that this challenge be solved - small and complex product enclosures that house multiple, irregular shaped printed circuit boards - to successfully design these products the designers must be able to fluidly pass design changes back and forth between the ECAD and MCAD domains.
Passing complex and detailed design changes between different design software is much more than just being able to save data in another format. The electronic and mechanical design teams work independently, and need to be able to transfer changes at any point in their design process. The issue is, how do you manage the flow of changes back and forth between the teams, without impacting on either team's day-to-day design work? The last thing the design teams need is for one team to have to stop work until the other team has accepted their latest change, before both teams can proceed.
This challenge is solved by Altium 365, creating a bridge between the ECAD and MCAD domains. Both design domains connect transparently to Altium 365. Whenever they choose, either designer can Push their design changes across to the other. When the receiving designer next opens that design in their ECAD/MCAD software they are immediately notified that there are changes pending, and can review the individual changes and choose to accept them or not.
By working through Altium 365 the update process becomes stateless . That means each side can continue to work independently, there is no need to worry about what the other team is doing.
So when the MCAD designer Pushes a board shape change and then realizes she has forgotten that a mounting hole also needs to move, there's no need to worry. The ECAD design is always compared to the current state of the design in Altium 365, so when the ECAD designer come back from lunch, their list of changes includes a board shape change and a mounting hole move. Accept the changes and click to Apply, and the ECAD design is in sync with the MCAD design.
What is Altium 365?
Altium 365 is a cloud-based infrastructure platform, designed and developed by Altium. As well as connecting the ECAD and MCAD domains for CoDesign, Altium 365 delivers a host of other component and design data management features.
► Learn more about Altium 365
Configuring project permissions in Altium 365 Expand Collapse
When a new project is created in Altium 365, only the creator and Administrators will have write permissions. The image below shows how to enable write permissions for the team (hover the cursor over the image for more details).
The Collaborative Design Interface
Both Altium Designer and your MCAD software interface to each other through a panel (tab) in the software. In Altium Designer it's the MCAD CoDesigner panel, in your MCAD software it's called the Altium CoDesigner panel, or tab.
Design changes are Pushed and Pulled between the ECAD and MCAD domains through the CoDesigner panel.
In Altium Designer, the CoDesigner panel is used to Push and Pull design changes back and forth, and display messages.
In the MCAD software, the CoDesigner panel is used to:
Create new collaboration projects
Open an existing collaboration project
Configure collaboration options
Push and Pull design changes back and forth
Display messages
The CoDesigner panel is always available in Altium Designer's PCB editor, for the MCAD software it requires the installation of an Add-In. Details about configuring each of the supported MCAD applications is outlined below.
Configuring SOLIDWORKS for Collaboration Expand Collapse
Installing the CoDesigner Add-In for SOLIDWORKS
To interface from SOLIDWORKS to Altium Designer you need to install the Altium CoDesigner for SOLIDWORKS Add-In.
To install the Add-In:
Download and install the Add-In (AltiumCoDesignerSolidWorks_Installer.exe
) using the link below. Close SOLIDWORKS before installing.
Launch SOLIDWORKS and enable the Add-In via the Add-Ins dialog, as shown above.
Once the Add-In has been enabled, the Altium CoDesigner Tab can be added to the Taskpane Tabs in the usual way. All collaboration activities are performed through this Tab.
► Download the Altium-SOLIDWORKS CoDesigner Add-In.
Supports SOLIDWORKS 2018 and 2019.
To use the ECAD-MCAD capabilities with SOLIDWORKS, you will need to obtain the relevant licensing through your SOLIDWORKS Channel. Note that this is a matter of compliance - reflected through Altium Concord Pro's EULA. It is your responsibility to obtain the relevant licensing from SOLIDWORKS, in order to satisfy this compliance.
Displaying the CoDesigner Taskpane Tab
In SOLIDWORKS, Taskpane Tabs can be enabled / disabled in the Customize Taskpane Tabs dialog.
If the Altium CoDesigner Taskpane Tab ( ) does not appear in SOLIDWORKS:
Click the Setup cog at the top of the Taskpane, as shown above. The Customize Taskpane Tabs dialog will open.
In the dialog, enable the Altium CoDesigner Tab.
Connecting to Altium 365 in SOLIDWORKS
SOLIDWORKS collaborates with Altium Designer through Altium 365, which you must sign in to the first time you use it.
Connecting to Altium 365:
Click the Pull Board from Server button in the Altium CoDesigner Taskpane Tab, the Sign in dialog will be displayed.
Enter your Altium Live User Name and Password .
Enable the Sign in automatically option to retain the details (including the password) and automatically connect to Altium 365 each time SOLIDWORKS is started.
Click OK to sign in.
The Select Project dialog will appear, click Cancel to close the dialog.
Multiple Workspaces are supported - when there is more than one workspace available the required workspace is selected in the Select Project dialog.
Configuring the Collaboration Settings
Once you have signed in, collaboration settings can be configured via the settings button ( ) at the top of the Altium CoDesigner Taskpane Tab.
Exported Component Library Folder - the folder where SOLIDWORKS stores parts.
Fix Components on Board - if enabled, the components are fixed in SOLIDWORKS.
Create component holes - create a hole for each component through-hole pad.
Move holes with through-hole component - available when you choose to Create component holes, enable to move the holes with the component in SOLIDWORKS.
Mate Electrical Components to Board
All Off - no mate created when a component is moved in SOLIDWORKS.
Dynamic - automatic mate created after a component is moved in SOLIDWORKS.
All On - mates created for all components, after components are Pulled from Altium 365.
Modelled Copper Collaboration
Off - copper geometry not synced.
On - copper geometry synced on the MCAD side.
Configuring AutoDesk Inventor for Collaboration Expand Collapse
Installing the CoDesigner Add-In for AutoDesk Inventor
To interface from Autodesk Inventor to Altium Designer you need to install the Altium CoDesigner for Autodesk Inventor Add-In.
To install the Add-In:
Download and install the Add-In (AltiumCoDesignerInventor_Installer.exe
) using the link below. Close Autodesk Inventor before installing.
Launch Autodesk Inventor and confirm that the Add-In is installed and enabled in the Add-In Manager dialog, as shown above.
Once the Add-In has been enabled, the Altium CoDesigner panel can be added to the Autodesk Inventor Panel in the usual way. All collaboration activities are performed through this panel.
► Download the Altium-Autodesk Inventor CoDesigner Add-In.
Supports Autodesk Inventor Professional 2018 and 2019.
Displaying the CoDesigner Panel
In Autodesk Inventor, panels can be enabled by clicking the + button at the top of the panel.
If the Altium CoDesigner Panel does not appear in Autodesk Inventor:
Click the + button at the top of the panel, as shown above.
A menu listing all available panels will display, select Altium CoDesigner from the list.
Connecting to Altium 365 in AutoDesk Inventor
Autodesk Inventor collaborates with Altium Designer through Altium 365, which you must sign in to the first time you use it.
Connecting to Altium 365:
Click the Pull Board from Server button in the Altium CoDesigner Panel, the Sign in dialog will be displayed.
Enter your Altium Live User Name and Password .
Enable the Sign in automatically option to retain the details (including the password) and automatically connect to Altium 365 each time Autodesk Inventor is started.
Click OK to sign in.
The Select Project dialog will appear, click Cancel to close the dialog.
Multiple Workspaces are supported - when there is more than one workspace available the required workspace is selected in the Select Project dialog.
Configuring the Collaboration Settings
Once you have signed in, collaboration settings can be configured via the settings button ( ) at the top of the Altium CoDesigner panel.
Modelled Copper Collaboration - enable to sync copper geometry on the MCAD side.
Export/Import components in project folder - if this option is enabled CoDesigner caches the intermediate Parasolid component models in the sub-folder \Exported Components
. The sub-folder is automatically created in the folder that holds the <McadFilename>.iam
file.
Select export/import paths for components - enable this to specify the folder where the intermediate Parasolid model files are located.
Intermediate Parasolid files - location of the intermediate Parasolid model files.
Configuring PTC Creo for Collaboration Expand Collapse
Installing the CoDesigner Add-In for PTC Creo
To interface from PTC Creo to Altium Designer you need to install the Altium CoDesigner for PTC CREO Add-In.
To install the Add-In:
Download and install the Add-In (AltiumCoDesignerPtcCreo_Installer.exe
) using the link below. Close PTC Creo before installing.
Launch PTC Creo, the application Ribbon will include an Altium section with a CoDesigner button, click this to show / hide the Altium Collaboration panel. All collaboration activities are performed through this panel.
► Download the Altium-PTC Creo CoDesigner Add-In.
Supports PTC Creo Parametric 3.0 (M170 or higher), 4.0 (M050 or higher), 5.0
Displaying the Collaboration Panel
If the Altium Collaboration panel does not appear in PTC Creo:
Click the CoDesigner button in the Altium section of the Ribbon, as shown above.
The Altium Collaboration panel will display, click the button a second time to hide the panel.
Connecting to Altium 365 in PTC Creo
PTC Creo collaborates with Altium Designer through Altium 365, which you must sign in to the first time you use it.
Connecting to Altium 365:
Click the Pull Board from Server button in the Altium Collaboration panel, the Sign in dialog will be displayed.
Enter your Altium Live User Name and Password .
Enable the Sign in automatically option to retain the details (including the password) and automatically connect to Altium 365 each time PTC Creo is started.
Click OK to sign in.
The Select Project dialog will appear, click Cancel to close the dialog.
Multiple Workspaces are supported - when there is more than one workspace available the required workspace is selected in the Select Project dialog.
Configuring the Collaboration Settings
Once you have signed in, collaboration settings can be configured via the settings button ( ) at the top of the Altium Collaboration panel.
Exported Component Library Folder - the folder where Creo stores component models
Modelled Copper Collaboration - enable to sync copper geometry on the MCAD side.
The Collaborative Design Process
The new CoDesign project can be started in either the ECAD or the MCAD design domain.
Starting the new Design in Altium Designer
In Altium Designer, the CoDesign project must be a managed project. It is not necessary to start with a managed project though, if the project has been created as a local project it is automatically converted when you first attempt to Push.
Create the Project
Create a new managed project in Altium Designer.
Create a managed project Expand Collapse
Select File » New » Project to open the Create Project dialog.
In the Locations column, select your Altium 365 server - it will be identified by its name.
Set the Project Type to PCB <Default>
Set the remaining dialog options to:
Project Name - the name of the Altium Designer project
Description - optional description of the project
Advanced - these options are used to define the Folder where the project is stored in Altium 365, and the Local Storage folder on your hard disk, below which the working copy of the project will be stored (a project folder, named the same as your project, is automatically created)
Add a PCB to the Project
Regardless of where the project is first created, a PCB must be added to the project in Altium Designer.
Add a new PCB Expand Collapse
Select File » New » PCB , a new blank PCB will be added to the project and opened in the workspace.
Save the PCB with a suitable name (File » Save ).
Define the PCB Layer Stack
The Layer Stack, or Z-plane properties of the CoDesign board, are defined in Altium Designer's Layer Stack Manager .
Define the Layer Stack Expand Collapse
Select Design » Layer Stack Manager , the Layer Stack Manager editor will open on a separate document tab, as shown above.
Use the right-click menu to add the required new layers to the layer stack.
For each layer, click the ellipsis button ( ) in the Material column to select the correct layer material from the Material Library.
Save the Layer Stack to update the PCB with these changes.
Save the PCB file.
► Learn more about defining the layer stack
Push the Board to the MCAD Designer
Assuming that the X-Y shape of the board is being defined in the MCAD software, the board can now be Pushed.
Pushing the board to the MCAD software Expand Collapse
If the MCAD CoDesigner panel is not open, click the button (lower right of the software) and select it from the menu.
Click the Push button in the panel.
A message window will appear, enter a message for the MCAD designer that describes what you are pushing to them.
Click Post to complete the Push process. A message dialog will appear, reporting the status of the process.
When the Push is complete, the panel will display the Activity thread, as shown above.
The MCAD designer can now Pull the design into their MCAD software.
Starting the new Design in your MCAD Software
You can also start the design process in your MCAD software, via the Altium CoDesigner panel. The process is the same in all of the supported MCAD environments.
Click the New Board button in the Altium CoDesigner panel (also referred to as a tab in some MCAD tools). If you are not currently signed in to Altium 365 the Sign in dialog will appear, sign in and click OK to continue.
The Create New Server Project dialog will open, as shown above. In the dialog, enter a suitable Name and optional Description for the project, and click OK . The Windows Save As dialog will open.
A default board assembly is now being created in the MCAD software, which you need to save in a suitable location. Enter a name, select a location to store the assembly, and click Save in the Windows Save As dialog. The MCAD workspace will display the new, default board shape. As part of this step an Altium Designer project is also created in Altium 365.
The new board shape information does not exist in Altium 365 yet, to add it, click the Push button in the Altium CoDesigner panel. A message window will appear in the Altium CoDesigner panel, this message will be displayed in the ECAD software.
Enter a brief description in the message window and click the Post button. A message dialog will appear while the changes made to the board shape are being saved to Altium 365, when that process is complete your Push message will appear in the Altium CoDesigner panel.
When you click the Push button you are saving a list of push-able changes into Altium 365, not the complete board file. A board file must also be created in Altium Designer, any pending MCAD changes can then be Pulled into Altium Designer and applied to it. Refer to the Add a PCB to the Project section to learn how to create the board file in Altium Designer.
You can continue to edit the board shape in your MCAD software but it can not be considered functional until the board thickness has been defined in Altium Designer. The board thickness is determined by the defining the Layer Stack in Altium Designer. This should be done before placing 3D Models and mounting holes in the MCAD software, because a change to the board thickness can affect clearances between 3D Models and the board assembly.
The working copy of the MCAD design is a standard mechanical design file, stored in the default format of your MCAD software. The MCAD software remains aware that the assembly is part of a CoDesign, and will automatically check the synchronization status whenever the assembly is opened, and update the Altium CoDesign panel to display the message history and details of any pending changes.
Opening an Existing Project
When the design file already exists in your design space (either ECAD or MCAD), to continue working on an existing board design simply re-open your working copy of the project and board file (Altium Designer), or Assembly (MCAD). If there are any updates pending the CoDesigner panel will display a warning that New changes have been detected!
If the mechanical assembly already exists, reopen it to continue working on the design.
Opening an Existing Project for the First Time
If the project and the board have already been created in Altium Designer but not yet opened in your MCAD software, the project is Pulled from Altium 365. To do this:
Open your MCAD software.
Display the Altium CoDesigner panel. Because there is no assembly currently open, the panel will display the New Board Assembly and Pull Board from Server buttons.
Click the Pull Board From Server button. If you are not currently signed in to Altium 365 the Sign In dialog will appear, sign in to continue.
The Select Project dialog will open, select the required project and click OK .
An MCAD assembly file is created from the change data present in Altium 365, choose a suitable location and enter a filename in the Windows Save As dialog.
The board assembly will display in the MCAD workspace, ready to be worked on. Save the MCAD design changes in the MCAD assembly file.
Whenever required, design changes can be passed to the ECAD environment by clicking the Push button in the Altium CoDesigner panel.
Both the ECAD and MCAD design tools save more data than is shared through the CoDesign interface, which is why both environments save their own design file.
Passing Design Changes Between ECAD and MCAD
At any point in the design process, changes can be transferred between the ECAD and MCAD tools by clicking the Push button in the panel.
Changes are pushed and pulled between the ECAD and MCAD tools.
When the Push button is clicked, an editing window appears at the top of the source editor's CoDesigner panel. Enter a message about the design change then click Post .
When Post is clicked:
The working copy of the modified PCB file is automatically saved, if it is currently unsaved.
The changes are written to a tool-neutral snapshot file, stored on the managed content server.
The Posted message is automatically displayed in the message thread of the source editor's CoDesigner panel, as shown in the image above on the left.
The target editor's CoDesigner panel will display a message that there is a change pending the next time they open their working copy of the design file, as shown in the image above on the right.
Working with the Change List
When the View Changes button is clicked, each change that needs to be made to the working file to sychronize it with the tool-neutral snapshot on Altium 365, is listed, as shown below.
Each difference detected between the current design and the snapshot stored on the managed content server is detailed as a Change in the Change List.
A Change does not have to be accepted. If a change is ignored it will appear in the Change List again, the next time an update is performed in that direction. Be aware that if you choose to ignore a change, for example moving a mounting hole, and you then perform a Push of your design changes, the ignored change may be overwritten since in your version the mounting hole still has the old location. The MCAD designer can avoid loosing their change by not accepting your mounting hole move.
A single design change, such as changing the location of a component, can become multiple changes in the Change List. When a PCB component is moved there are MCAD changes to the location of: the component, the shapes that component makes on the Component Overlay, and the shapes that component makes in the top and bottom copper layers. Related changes should all be applied together.
The list may include changes that cannot be applied in the target environment. In this situation the change will be displayed but the checkbox will be unavailable, indicating that this difference cannot be resolved.
Where possible, the selected change is highlighted in the workspace when you click on it in the Change List. The animation below shows examples of this.
The Change List can include changes that cannot be performed in the target environment. In this situation the change will be displayed but the checkbox will be unavailable, indicating that this difference cannot be resolved.
Highlighting A Change
In Altium Designer and some of the MCAD environments, certain types of changes can be highlighted in the workspace. For example, when you select a change to a component in the Change List in Altium Designer or SOLIDWORKS, the component is highlighted in purple and displayed in the current state, then moved to the changed state.
Click on a change to highlight the before and after states of that change.
Object and Shape Support
When the design data is transferred between the ECAD and MCAD environments the design objects must be translated from an object-kind supported in the source editor to an object-kind supported in the target editor.
The table below summarizes the current level of ECAD-MCAD CoDesign support for each of the available MCAD tools. These capabilities continue to be developed, additional feature support will be added over time, where possible.
Current ECAD-MCAD feature support:
Feature
SOLIDWORKS
Inventor
PTC Creo
Select Project
yes
yes
yes
Show Project details
yes
yes
yes
Search for Project
yes
yes
yes
Pull existing project
yes
yes
yes
Create new project
yes
yes
yes
Synchronize board outline
yes
yes
yes
Synchronize cutouts
yes
yes
yes
Synchronize electrical components
yes
yes
yes
Decal support
yes
yes
yes
True copper
yes
yes
yes (limited)
Holes support (holes in board, not assembly)
yes
yes
yes
Move holes with components
optional
yes
no
Hole patterns
feature level
no
feature level
Flip component
yes
no
no
Sync Locked components
optional
no
no
Search component in MCAD
yes
yes
yes
Synchronize mechanical parts
yes
yes
yes
Spline for cutouts and board shape
yes
no
yes
Multiple sketch extrude cutouts in one feature
yes
no
no
Cutouts in the Board sketch
yes
yes
no
Cutouts patterns
Board sketch level
no
yes (feature level)
Variants
no
no
no
Synchronize mechanical parts from root assembly
no
no
no
Windchill integration
no
no
no
Support of assemblies as Mechanical parts
yes
no
yes
Rigid-flex support
no
no
no