Moving to Altium Designer from Eagle
Total Page:16
File Type:pdf, Size:1020Kb
r e p Contents a p Tool-chains vs. Altium’s Platform Approach 1 e t i Transition from Eagle to Altium Designer 2 h File Export 2 W Eagle Schematic Export 3 Moving to Altium Eagle PCB Export 3 Designer from Eagle Importing the Eagle Designs into Altium 4 Importing the Eagle Libraries into Altium 10 The Altium Designer Environement 10 Getting Help 10 Component Linking through Unique IDs 18 See Also 19 Tool-chains vs. Altium’s Platform Approach Traditionally, board-level design, FPGA design, simulation (SPICE and Signal Integrity) and embedded software development have been treated as independent processes or tool-chains. Moving into the future, this point tool approach will increasingly present a barrier to efficient electronic product development. An alternative approach is a unified design platform that allows you combine PCB, FPGA and embedded software development into a single executable. This next generation solution to electronic design has shown to significantly boost productivity when compared to the tool-chain approach. This diagram illustrates the architecture of the software platform. The foundation is a unified data model adjacent to a data management layer. This combination brings significant data management capabilities to the design process. A hierarchical project combines PCB, FPGA and embedded software development into a single view shared by the entire design team. Another advantage of the platform architecture is the inclusion of IP which is fully integrated into the design process. The platform approach eliminates all the tool integration and data management headaches creating more time for product innovation. This document guides you through the process of moving from Eagle to Altium Designer. 1 Transition from Eagle to Altium Designer Even though Altium Designer does not contain a native translation wizard for CadSoft's Eagle® you can still convert complete Eagle® designs, including Eagle® schematics and PCB files using available Eagle® ULP scripts. CadSoft, Eagle ULP scripts (User Language Program) export to an earlier Protel ASCII format which can then be opened in Altium Designer. These scripts use the file extension [*.ulp]. This application note outlines the process of exporting Eagle design data and importing it into Altium Designer. It also covers some differences in the two design environments, which will help you to get a high quality conversion. The translation process will follow these steps which are described in detail in the sections following: 1) Exporting the design data from EAGLE . Schematic . PCB 2) Creating an Altium Designer PCB project . Adjust project settings . Perform manual adjustments/cleanup of schematics and PCB 3) Add translated design files to the Altium Designer PCB Project . Synchronize Design Data . Save revised files File Export Exporting Schematics and PCBs (*.Sch and *.Brd design data) from Eagle to the Protel/Altium Format is quite easy. You simply have to start Eagle, open the desired Eagle project or the individual design file and start the appropriate ULP file from either the menu or from the workspace icons as shown in Figure 1. There are two different ULP files that you need to download. The eagle2ad_sch.ulp is for converting the schematic designs and the export-protelpcb. ulp is for converting the PCB layouts. Both files can be downloaded from the CadSoft website at the following link: http://www.cadsoftusa.com/downloads/user-lan- guage-programs/?language=en Figure 1. Starting a ULP in Eagle These scripts can also be located on the AltiumLive forums by searching on ULP. Important Note: these export scripts were not developed by Altium and are not an Altium product. The scripts referred to in this document have been proven to work but note there are other similar scripts in circulation. 2 Eagle Schematic Export To export the schematic(s) Go to File>>Open , Browse to the Eagle "Schematic" to open the desired design file and then go to File>>Run, Browse to the eagle2ad_sch.ulp. The script will generate a separate schematic document for each sheet in your design . The documents will be numbered like those in the original Eagle schematic. NOTE: Altium Designer uses 10mils as the minimum grid in the schematic. Matching this grid setting in the Eagle schematic before running the translation script will yield the best results. Eagle PCB Export To export the Eagle layout Go to File>>Open, Browse to the Eagle "PCB" to open the preferred design file and then go to File>>Run, Browse to the export-protelpcb.ulp to invoke the script. NOTE: before executing the script check the default layer assignment, which is hard coded in the export-protelpcb.ulp script. This can be found in the "Layer Naming" section of the script - see below for code example. If the default layer setup is not suitable then the layer naming section has to be modified to reflect the correct layer stack up/assignment. // Layers Naming B.layers (L) layer [L.number] = L.name; layer [LAYER_TOP] = "TOP"; layer [LAYER_BOTTOM] = "BOTTOM"; layer [LAYER_PADS] = "MULTILAYER"; The layer names listed below are the names to be used in Altium Designer when mapping the layers names in the script: SIGNAL INTERNAL MECHANICAL MASK SILK SCREEN OTHER LAYER PLANES LAYERS LAYERS TOP PLANE 1 MECHANICAL1 TOPPASTE TOP OVERLAY DRILLGUIDE MID1 ... ... BOTTOMPASTE BOTTOMOVERLAY KEEPOUT ... PLANE16 MECHANICAL32 TOPSOLDER DRILLDRAWING MID30 BOTTOMSOLDER MULTILAYER BOTTOM Due to the differences in data structures, watch out for elements that make use of flat caption for track or circle ends. Altium Designer does not support this and will automatically replace them with round captions The ULP will generate a Protel ASCII design file. Altium is capable of importing this directly, but it is recommended to resave the design in the native Altium binary design format. Refer to the "Importing Eagle Designs into Altium" section of this document for step by step instructions. 3 To date the following are known issues regarding the PCB export ULP: 1) There is no Board Header Record 2) The Layer designators in the inner layers are not correctly shown. It is possible to search for these incorrectly shown Layer designators with a text editor (e.g., Notepad) and to replace/rename these discrepancies in the exported ASCII file. (e.g. Route1 –> Mid1) Mid1 is the designator recognized by Altium Designer. 3) After the PCB Import, design rules must be made and checked since the rules are not exported as part of the ASCII file . 4) In some cases plane layers may be omitted. However, these are easy to create in Altium Designer as long as no split planes were present. 5) There are cases where Overlay-Objects from components end up on the wrong layers. You can unlock and select the component primitives, and then change layers for any discrepancies. 6) Some pads may come in as Pad Designator 1. This will have to be corrected if this is ever to map to schematic symbols. However, all primitives for a component are at least grouped into a component. 7) Some tracks may come in without a signal name assignment. They can be identified as tracks as signed to "No Net". 8) The script fails if a percent sign (%) is included in any text (such as a Comment with "1000uF 5%"). This is because the script sends this to Printf() as a format string, which interprets it as the start of a new field for which there is no corresponding parameter passed. Note: Some of these issues may have been addressed in a newer version of the ULP script files. Importing the Eagle Designs into Altium The Schematic and the PCB document(s) generated by the ULP scripts can be directly loaded into and used by Altium Designer. However, these design files are referred to as "Free Documents" and need to be linked together through a PCB project file (.prjPCB) in order to link the schematic and PCB documents together. The set of design documents that make up the project are brought together by the PCB project file. The project file stores all project-relevant set- tings, including a link to each document in the project, and all project-relevant options. Each document in the project is stored as a separate file, Figure 2. Drill down from the File menu to create a new project. 4 which is linked to the project via a relative reference for files on the same logical drive, or an absolute reference for files on a different logical drive. Outputs generated from the project are also referenced in the project file. The exact set of Project Options stored will depend on the project type. Creating a Altium PCB Project You can create a new project in more than one way. 1) From the File menu, drill down to create a new project. 2) Click on the required entry in the New section of the Files panel. If this panel is not open, click on the System button at the bottom right of the main application window and choose Files from the pop-up menu that appears. Note: that the project file only exists in memory when first created, use the Save or Save As commands to save it with a suitable name in the required location. Figure 3. Creating a New Project Configuring PCB Project Options from the Files Panel Project settings are configured on the Options Tab of the Project Options dialog. You can configure these settings to enable Altium Designer to work/behave in a similar fashion to Eagle. Figure 4. Project Options 5 You can access this from the Projects menu on the main menu bar (Project>>Project Options), or by right- clicking on the project name in the Projects panel. The options available to you include: • Compiler error check settings • Design synchronization settings • Design compiling settings • Location of output files • Multi-channel annotation settings Other project settings stored in the project file include: • Schematic annotation settings • Output settings such as reports, print, Gerber, and so on Note that these are the output settings accessed via the schematic or PCB editor menus, not the output settings defined in an Output Job document Below are recommended changes to be made in the project options: • Uncheck Component Classes and Generate Rooms in the Class Generation Tab.