The final phase of the board design cycle is to generate the output files needed to fabricate, assemble and test the printed circuit board. To do this, you need to generate a variety of output files in a variety of formats.
As the designer, you have the choice of individually configuring and generating the outputs via the schematic and PCB editor's File and Reports menus, or alternatively, you can add all of the required outputs into an OutputJob and generate them from there.
This article summarizes the key elements of generating output from Altium Designer.
An OutputJob, or OutJob for short, is essentially a container for individually configured outputs. The settings for these outputs are stored in the OutJob file, which is an ASCII file that becomes part of the project.
Using an OutputJob has a number of advantages:
A new OutputJob can be added to the project via the File » New sub-menu, or by right-clicking on the project in the Projects panel.
► Read about Preparing Multiple Outputs in an OutputJob
Another key output document is the Bill of Materials. Rather than having a specific BOM generator, the software includes a powerful report generator. As well as being used to generate a BOM, it can also be configured to generate other component-type outputs, such as a component cross reference or a pick and place file.
Altium Designer includes a highly configurable report generator that is used to generate a detailed Bill of Materials. Referred to as the Report Manager, the dialog is used to:
To use the BOM Report feature, add a Bill of Materials to the OutputJob and set the Data Source to
[Project], which means the schematic project. For a pick and place file, the Data Source would be set to the
► Read about the Report Manager
ActiveBOM offers a more sophisticated approach to BOM management, allowing a customizable BOM to be developed during the design process. It is added as an additional project document (
.BomDoc) and as well as the placed parts, it supports manually added components and BOM-specific data, for example; yet-to-be-detailed parts, fasteners, the blank board, or the mounting glue. Custom columns can also be added, including a specific Line number column, which offers both auto and manual numbering, with full copy/paste support.
Its greatest strength is that it is tightly coupled to the Altium Cloud Services, bringing live component costings right into the project, providing the designer with instant visibility to component availability and potential supply chain risks.
As with a standard BOM report, the actual ActiveBOM output is generated by adding a Bill of Materials in an OutputJob. Rather than selecting the
[Project] as the Data Source in the OutputJob, instead you select
[ActiveBOM Document] (or the ActiveBOM by name), as the Data Source.
► Read about BOM management with ActiveBOM
Mapping Design Data into the BOM
Design data can be passed from Altium Designer into an Excel-format Bill Of Materials by including special statements in the Excel template that is used during BOM creation.
When creating the Bill of Materials template in Excel, a combination of Field and Column declarations can be used to specify the design properties that you want included in the BOM. Several example templates are provided with Altium Designer in the
\Templates folder of the installation user-files.
► Read about Mapping Design Data into the BOM
Because a variety of technologies and methods exist in PCB manufacture, the software has the ability to produce numerous output types for different purposes.
An OutJob is a pre-configured set of outputs. Each output is configured with its own settings and its own output format, for example, output to a file or to a printer. OutJobs are very flexible – they can include as many or as few outputs as required and any number of OutJobs can be included in a project. The best approach is to use one OutJob to configure all outputs required for each specific type of output being generated from the project. For example, all outputs required to fabricate the bare board go in one OutJob, all outputs required to assemble the board go into a second OutJob, and so on.
OutJobs also can hold validation-type checks, such as ERC and DRC reports. These reports are useful for a final thumbs up check just before generating the outputs and can then be held as a record that the design was ready for release.
Portable in nature, OutJobs can also be re-used between designs by copying the Output Job file from one project to the next one then resetting the Data Source as required.
Output files are written to the following locations, for:
Below is a summary of the available output types. Each output includes a link to the relevant setup/settings dialog:
Refer to the Preparing Assembly Data page to learn more.
The related indexed commands can be accessed from the Output Job Editor from the Edit » Add Documentation Outputs sub-menus or from the menus associated with the [Add New Documentation Output] control, at the bottom of the Documentation Outputs region, in the main job configuration window.
Refer to the Preparing Fabrication Data page to learn more.
Netlists describe the logical connectivity between components in the design and are useful for transferring the design to other design platforms. A large variety of netlist formats are available. A small number are installed by default, the others require the installation of the Netlisters platform extension.
A number of reports such as BOM, project hierarchy report, and project comment PDF, can be prepared for the project or one of its documents. Refer to the Preparing Reports page to learn more.
The software includes a number of validation checks, which can be included as an output, during output generation. Each produces an HTML report file.
Note that the setup for these validation reports is held in the OutputJob. When you configure a validation check elsewhere in the software the settings are held with that file - for example the settings for project error checking are stored in the project file, PCB DRC settings are stored in the PCB file.
The SPICE netlist is a textual representation of the circuit. To add a netlist output to the active OutputJob file, select a command from the Edit » Add Simulator Outputs sub-menus or the menus associated with the [Add New Simulator Output] control, at the bottom of the Simulator Outputs region, in the main job configuration window.
The software is able to export data into a large number of formats. The options available in this section of the OutputJob will depend on which exporters are currently installed in Altium Designer. Exporters are installed in the Extensions and Updates view, they are provided either as platform extensions (supplied with the software, as a pre- or post-installation option), or as software extensions (extensions that are installed and managed separately from the core software).
This output type allows non-native Altium Designer file types to be included as part of the output. It copies the targeted files from within the project directory structure, to the folder specified in the configured Folder Structure output container. Files to be copied are configured in the Copy Files List Setup dialog - right-click on the Copy Files Job (added under the PostProcess Outputs heading) and select Configure, to open the dialog.
The related indexed commands can be accessed from the Output Job Editor from the Edit » Add Post Process Outputs sub-menus or from the menus associated with the [Add New PostProcess Output] control, at the bottom of the PostProcess Outputs region, in the main job configuration window.
If you are generating output via the schematic or PCB editor menus, then the outputs are generated directly when you click OK in the relevant dialog. Use the links in the previous section to access the setup dialog for a specific output type.
If you are generating outputs via an OutputJob, the process is slightly different. In an OutputJob, each output you add and configure must then be mapped to an Output Container. The Output Container holds the setup for one of types of output formats, each of which is discussed below. When both the output and the container are configured, click the Generate content link in the Output Container to create that output.
[Manually Managed]in the appropriate Settings dialog.
The software includes a powerful PDF generator, which can be configured to create navigation bookmarks in the PDF file for the component designators and the nets.
Schematic component parameters can also be included in the PDF, click on the component symbol in the PDF to display them. HelpURL and ComponentLinks can become links in the PDF, if they are defined in the Device Independent Path format, as described below.
► Read about PDF Settings
Files into a Folder Structure
Many of the output types generate their output in a specific, industry-standard format, such as ODB++, IPC-2581, or Gerber. The OutputJob Output Container for these output types is used to configure the naming and structure of the folders that are to be used for these output files. The Setup dialog also includes options to auto-open the output in Altium Designer's CAM editor.
► Read about Folder Structure Settings
This Output Container type is used for PCB 3D Video outputs. The Media Settings, including the video type and format, are configured in the Output Container.
► Read about Video Settings
Printed output is not actually an Output Container, as the output is generated directly by the targeted printer. Double-click on the printer icon to configure the printer.
Each output setting must be mapped to a suitable container or hard copy output device, which you do by: selecting the output; then the container (or device); then clicking that output's Enable radio button. A green link will then be draw between that output and its container/device.
Sometimes when you create the link, it is shown in red instead of green. This indicates that there is a mismatch between the current page settings of the output, and the page settings available in the mapped container/device. To resolve this, right-click on the output and select Page Setup, then in the Properties dialog, ensure that the paper/page is set to a size that is also available in the container/device.
For many designers, generating the output files from an OutputJob is the final stage of their work in Altium Designer.
However, there are also many designers that need to have tighter control over the design-to-release process, a requirement that can be met by creating the project as a managed project, and then releasing it using Altium Designer's formal managed board design release process. In this situation, the OutputJob acts as a output setup document, defining validation and output generation tasks that must be successfully performed for outputs to be generated.
Managed projects and the managed board design release process use the Altium Server for storage of the released output. The source for a managed project is stored in a repository controlled by the Server.
► Read about Management of Projects
► Read about Board Design Release
► Preparing Multiple Outputs in an OutputJob
► BOM Management with ActiveBOM
► BOM Generation with the Report Manager
► Design Documentation Generation with Draftsman