IDX Support in Altium Designer
This document is no longer available beyond version 21. Information can now be found here: IDX Files Import-Export Support for version 25
As more and more electronic products involve both electrical and mechanical components, and product release cycles get shorter, there's a real need for stronger collaboration between the ECAD and MCAD domains. But that collaboration isn't always smooth. The electrical designer and mechanical designer often send emails back and forth, or have to dabble in each other's respective design tools - something that leaves them treading a little water, and far removed from their established comfort zones. One solution is to use a method of collaboration that enables the two to graphically communicate ideas and proposals for change, without leaving their trusty working environments. Such a method is provided through an XML-based exchange file format - IDX (Incremental Design EXchange format).
With this intermediate exchange file (*.idx), an electrical designer can export only changes to the board design that are needed (and of value) by the mechanical designer. Conversely, the mechanical designer can float change proposals back to the electrical designer, who can then import those changes back into their design.
Support for this standard of collaboration between ECAD and MCAD domains is available in Altium Designer, courtesy of the MCAD IDX Exchange extension. This extension allows you to incrementally exchange data between Altium Designer and mechanical CAD applications (such as SOLIDWORKS), using the IDX exchange format. Functionality includes support for change requests, as well as the transfer of Cu geometry.
The MCAD IDX Exchange software extension can be found on the Purchased tab of the Extensions & Updates view (click the control at the top-right of the design space then choose Extensions and Updates from the menu).
Initiating the Baseline File for Collaboration
Collaboration can be kicked off from either direction - either the electrical designer creating the initial IDX file, or the mechanical designer doing the honors. If the electrical designer does so, the file created is called the ECAD Baseline file (ECAD Baseline.idx), which is subsequently made available to the mechanical designer. If the mechanical designer does so, it is called the MCAD Baseline file (MCAD Baseline.idx), which is subsequently made available to the electrical designer.
Exporting from Altium Designer (ECAD Creation of Baseline)
From within Altium Designer, the main interface for collaboration is the MCAD IDX Exchange panel, which is accessed by clicking the button at the bottom-right of Altium Designer when the PCB editor is active then selecting the MCAD IDX Exchange entry from the menu.
To initiate collaboration, click the Export Baseline button. You will be presented with the Export Baseline dialog, which offers options, including the export of copper objects.
Importing to Altium Designer (MCAD Creation of Baseline)
If the baseline file has been created on the MCAD side, it can be imported into Altium Designer using the File » Import » MCAD IDX Baseline command. The Import MCAD Baseline dialog will open. Use this to browse to and specify the MCAD Baseline file (MCAD Baseline.idx), and the PCB document into which proposed changes are to be synchronized.
Once the MCAD Baseline IDX file has been imported, collaboration proceeds through the MCAD IDX Exchange panel.
Collaboration Folder
When initiating collaboration from Altium Designer (creating the IDX Baseline file), a collaboration folder will be created under the original board design project. The folder is named using the PCB document name in the form <PCBDocumentName>.PcbDoc_EDMD. The folder will contain two files:
- AD_EDMD_State.xml
- ECAD Baseline.idx
Quickly access the generated folder from the MCAD IDX Exchange panel by clicking the Show In Explorer control (available only after initial export) or by clicking the button then choosing the Open Collaboration Folder entry from the associated menu.
Synchronizing Changes
The MCAD IDX Exchange panel provides controls for keeping changes synchronized between the ECAD and MCAD domains. Changes are proposed through IDX Changes files:
- If the mechanical designer has proposed changes and sent them across in a new IDX Changes file, the panel allows those changes to be received (imported) into the PCB design for consideration.
- If changes have been made to the board, the panel can detect these changes (except copper changes) and list them, ready for export to an IDX Changes file that is subsequently made available to the mechanical designer.
Detecting and Exporting Board Changes
If you make a change to the PCB document, such as removing a component, that change can be detected by clicking the button at the top of the MCAD IDX Exchange panel. The detectable changes will be listed in the Board Changes region of the panel, in terms of:
- Object - for example, the component designator.
- Change - for example, Removed for a component that has been removed from the design, or Added for one that has been added.
- Status - this will be Proposed since the change is originating on the ECAD side.
- Proposition Comment - a note to explain the change to the mechanical designer. Enter this as required.
Once all changes have been made, detected, and proposition comments added, those changes can be exported using the button. This will create an IDX Changes file (ECAD Changes n.idx).
It is now up to the mechanical designer to import and view the change proposals on their side. They will then either accept or reject each proposed change in turn, and send back their response in an IDX Response file (MCAD Response n.idx). Once this is received, import the response using the button. To apply the changes in the response file, click the button, which will generate an IDX Response file from the ECAD side back to the mechanical designer (ECAD Response n.idx).
This "handshaking" ensures that both parties are synchronized with the changes made.
Importing Changes
If the mechanical designer is proposing changes, those changes will be proposed in an IDX Changes file (MCAD Changes n.idx). Import the changes using the panel's button. The changes will be listed in the Changes from Mechanical CAD region of the panel in terms of:
- Object - for example, the component designator.
- Change - for example, Moved for a component that has been moved within the design.
- Status - this will be Proposed since the change is originating on the MCAD side.
- Proposition Comment - a note to explain the change to the electrical designer.
It is now up to you, as the electrical designer, to view and either accept or reject each proposed change in turn. To accept a proposed change, check its associated Accept check box. To reject, leave this unchecked. You also can enter a response in the respective Response Comment field.
Once all proposed changes have been accepted/rejected, click the button. The accepted changes will be applied to the PCB document and an IDX Response file (ECAD Response n.idx) will be created, ready to send back to the mechanical designer.
Resetting Collaboration
To completely reset collaboration on the project, click the button then choose the Reset Collaboration entry from the associated menu. All current entries in the panel will be cleared and all files in the collaboration folder will be deleted. This puts you back at square one, ready to export a baseline file, or import one, and start collaboration afresh.