What is an ODB++ File?

When manufacturing PCB, designers typically convert circuit diagrams into Gerber files and send them to manufacturers. These Gerber files contain graphical information such as layers, traces, pads, etc., making them a commonly used standard format in the industry. However, with technological advancements and the demand for richer data, some designers are turning to ODB++ files. ODB++ is a relatively newer and more comprehensive file format considered the next generation standard for PCB manufacturing files. In this article TechSparks will introduce you to the concept of ODB++ files, its features and how to generate it in Altium Designer.

What is an ODB++ File

ODB++ file directory hierarchy

ODB stands for “Open Database,” ODB++ is an XML-based open data exchange standard developed by Valor. Initially introduced in the PCB manufacturing field, its purpose is to simplify data exchange between design and production in electronic manufacturing, avoiding the use of different types of CAM file formats and providing convenient conversion tools for users.

This file format employs a stable framework, defining elements such as libraries, layers, nets, components, placements, and assemblies. Whether for single-layer or multi-layer PCB, or even special process requirements, ODB++ files offer a programmatic, symbolic representation, supporting highly automated production processes.

The increasing popularity of ODB++ files is due to their intelligence, eliminating the tedious steps of using multiple low-level files, significantly improving production efficiency, and reducing the risk of errors. While not guaranteeing data sufficient to support design, ODB++ files assist designers in organizing data and performing necessary manufacturability and reliability checks.

Features of ODB++ Files

Adaptability

				
					<Library Name="MyPCB" Version="2.1">
  <Layer Name="TopLayer">
    <Net Name="Wire1">
      <Line Width="..." ... />
    </Net>
  </Layer>
  ...
</Library>
				
			

The hierarchical structure of ODB++ files, implemented using XML tags, makes them widely applicable across different CAD systems. The structured design allows for easy conversion of files between multiple CAD systems, providing a convenient collaborative environment, especially in cross-platform development projects.

Rich Information

				
					<Component Name="Resistor" Package="0603"
           Value="1K" Orientation="180">
  <Pin Name="GND" Net="Wire2" Pad="1" />
  <Pin Name="VCC" Net="Wire1" Pad="2" />
</Component>
				
			

The ODB++ file contains detailed descriptions of components, including not only basic position and size information but also comprehensive details about the component layout, connection relationships, and attribute information on the circuit board. This extensive information supports powerful automation and visualization of circuit design, making PCB assembly operations more stable, quick, and accurate.

Support for Mass Production and Testing

				
					<Assembly Name="Assembly1" ExternalID="21735">
  <ComponentRef RefDes="C2" X="4.11" Y="3.68" Rotation="0.0" />
  <ComponentRef RefDes="U5" X="23.4" Y="31.9" Rotation="90.0" />
  ...
</Assembly>
				
			

The ODB++ file configuration of assembled components describes specific assembly information on the PCB, including the assembly name, external identification, and the reference designator, position, and rotation angle of each component in that assembly. The excellent design of ODB++ files supports fast PCBA production, reducing production time and improving efficiency and product quality.

Generating ODB++ Files in Altium Designer

In the menu bar, select “File,” then click “Manufacturing Outputs,” and choose the “ODB++ Files” option to open the ODB++ settings dialog.

open the ODB++ settings dialog

For simulation purposes, select physical layers with networks and ground planes. Generally, export top and bottom, plane 1, and plane 2 layers. These layers are usually included in the default options, and you only need to deselect any additional layers you don’t need.

Optionally, you can choose to include unconnected mid-layer pads. These pads are typically retained on the ground plane but may be removed during the manufacturing process if they are not connected to any traces.

Layer selection

Click “OK” to export the PCB to the ODB++ directory. The ODB++ directory will be created immediately in the same location as the board file.

PCB to the ODB++ directory

You Might Be Interested

LED PCB
Ultimate Guide to LED PCB Circuit Board

LED PCBs have revolutionized various industries by providing superior heat management, compact design, and reliable electrical connections. From illuminating modern cityscapes to enhancing medical equipment,

long flexible PCB
What is a Long Flexible PCB?

Unravel the innovation of long flexible PCBs with TechSparks! Learn about their advanced applications across aerospace, medical devices, and automotive electronics. Dive into the manufacturing

A Comprehensive Guide to PCB Reverse Engineering
PCB Reverse Engineering Guide

PCB reverse engineering, also known as cloning or copy, is essentially the process of extracting the original information from electronic products’ circuit boards through various

Flexible PCB Reflow
Ultimate Guide to Flexible PCB Reflow

From the concepts of flexible PCB and reflow soldering to overcoming soldering defects and material degradation, delve into TechSparks’ comprehensive insights for optimal reflow practices.

Scroll to Top