# ODB++

ODB++ is a proprietary CAD-to-CAM data exchange format used in the design and manufacture of electronic devices. Its purpose is to exchange printed circuit board design information between design and manufacturing and between design tools from different EDA/ECAD vendors. It was originally developed by Valor Computerized Systems, Ltd. (acquired in 2010 by Mentor Graphics which was later acquired by Siemens in 2016) as the job description format for their CAM system.
ODB stands for open database, but its openness is disputed, as discussed below. The '++' suffix, evocative of C++, was added in 1997 with the addition of component descriptions. There are two versions of ODB++: the original (now controlled by Mentor) and an XML version called ODB++(X) that Valor developed and donated to the IPC organization in an attempt to merge GenCAM (IPC-2511) and ODB++ into Offspring (IPC-2581).

## Introduction

Inside almost every electronic device is at least one printed circuit board (PCB) onto which the semiconductor and other components are mechanically and electrically connected by soldering. These PCBs are designed using a computer-aided design (CAD) system. To physically realize the design, the computerized design information must be transferred to a photolithographic computer-aided manufacturing (CAM) system. Since the CAD and CAM systems are generally produced by different companies, they have to agree on a CAD-to-CAM data exchange format to transfer the data. ODB++ is one such file format for performing this transfer. Other formats are compared and contrasted below. After the bare board is manufactured, the electronic components are placed and soldered, for example by SMT placement equipment and wave or reflow soldering.

## File structure

ODB++ can handle all the specifications surrounding a PCB – i.e. not only the basic dimensions and the layout of conducting layers and drill data, but optionally also material stack up, netlist with test points, component bill of materials, component placement and fabrication data. The data for all these different aspects is stored in a collection of separate files within a specified hierarchy of file folders. For simplified archiving and transmission the collection is usually packed in a single archive-file that preserves the file structure, for example using tar or gzip or both.
In ODB++(X) the data is contained in a single XML file.

## History

Valor was founded in 1992 and it released ODB in 1995. It added the ++ suffix when component names were added in 1997. The XML version was developed beginning 2000, and ended in 2008 with the donation to IPC. Valor was acquired by Mentor in 2010.
The ODB++ data format was expanded in 2020 and was designed to facilitate communication between designer and manufacturer by use of a digital twin. The format was renamed the ODB++ Family and was split into three connected format uses.
* ODB++Design: Created using typical EDA software, used for design for manufacturing, fabrication, test and assembly analysis (DFx), as well as being the single carrier of design data to electronics assembly and fabrication.
* ODB++Process: A transitional format for conversion of design data into files for use at any production machine or workstation.
* ODB++Manufacturing: A format for manufacturing floor events, with communication capabilities between machines and Smart Industry 4.0 software solutions.

## Adoption

In the late 1990s it became clear to industry participants that a second-generation data transfer format would be more efficient than prevalent Gerber format, which was a first generation format at that time. However, it was very difficult to reach a consensus over which of two candidates should be selected:
* ODB++: proven but proprietary
* IPC-2511 GenCAM: not widely used but open
In 2002, a compromise format, ODB++(X), was recommended by National Electronics Manufacturing Initiative (NEMI; an industry body, subsequently renamed International Electronics Manufacturing Initiative, iNEMI) after a two-year mediation effort between the GenCAM and ODB++ camps. Companies that supported the recommendation at the time included Cadence, Hewlett-Packard, Lucent, Easylogix, Mentor (which acquired Valor some eight years later), Nokia and Xerox. But in fact adoption to date has been minimal. As a result, and as detailed below, the industry is still divided. Late 2014 Gerber X2 was introduced which added attributes ("intelligence") to the Gerber format in a compatible way, converting Gerber to a second generation format.

### Advocacy

Lists of EDA tools that support import and/or export of ODB++ have been compiled by Artwork Conversion Software, Mentor itself, and on the Comparison of EDA packages table. Some companies that have adopted the ODB++ format are advocates for its use. Streamline Circuits reports that ODB++ provides much greater efficiency than the competing Gerber format, stating that "an 8-layer printed circuit board can take up to 5 hours to plan and tool using Gerber and only 1 hour when using ODB++." According to Streamline, manufacturers are adopting it to overcome the limitations of the simpler Gerber format. DownStream Technologies calls ODB++ "the defacto standard for intelligent data exchange in EDA" In 2002, Dana Korf of Sanmina/SCI called ODB++ "the prevalent non-Gerber format." Kent Balius of Viasystems, states of ODB++ "...really we don’t need anything else."

### Criticism
#### Concerns

ODB++ is a proprietary format controlled by Valor later Mentor and now Siemens, and so, like all proprietary standards, it comes with the risk of vendor lock-in. CAD companies had some concerns about this when ODB++ was controlled by Valor, a CAM company, but these concerns were magnified when a rival CAD company, Mentor, acquired Valor. Although Mentor claims that it
   "...openly supports inclusion of ODB++ and updates for other EDA tool vendors,"
it used to restrict access to the specification and required a non-disclosure agreement. The application form used to include a requirement to:
   "...Demonstrate a customer need for this integration through references from mutual customers. Provide a recommendation from a Mentor Graphics product division or demonstrate the incremental value of this integration to both Mentor Graphics and the partner company."
Some direct competitors inferred this meant restricted access. This was a source of frustration not only for competitors but also for the Mentor user community.
In 2012, Julian Coates, director of business development at Mentor's Valor division claimed that, so far, all ODB++ partners, including competitors to Mentor, who have applied for assistance to build and maintain ODB++ interfaces via the ODB++ Solutions Alliance have been accepted without reservation or cost. In addition, the format specification of v7, an older version, is now openly available without the need for NDA. Membership of the ODB++ Solutions Alliance is free of charge and open to anybody who registers. A no-charge ODB++ Viewer and other software utilities are available to registrants.

#### Lack of need

Ucamco, the developers of the Gerber format, argue that the prevalent Gerber-based flow (with some additions) is as complete and efficient as ODB++. These additions were introduced in Gerber X2, which added attributes to classical Extended Gerber. Standard attributes allow to define the layer structure, pad functions and CAD netlist.

## Alternatives

Critics of the proprietary nature of ODB++ point to several more open formats as models for a future consensus format:
* Gerber Format: Nominally proprietary to Ucamco, like ODB++ is also a proprietary format.
* IPC-2511 ("GenCAM") which resulted from a donation of certain technologies by Teradyne/GenRAD to IPC.
* IPC-2581 ("Offspring") an attempt to merge GenCAM with ODB++(X). In 2011, an industry consortium was created to support it, motivated in part by frustration with the proprietary nature of ODB++. Cadence Design Systems, Zuken, Artwork Conversion Software and the owners of Gerber format, Ucamco, joined it, but, initially, not Mentor. However, in 2012, Mentor did join. This, combined with the 2012 announcement by Zuken that it would join the ODB++ Solutions Alliance, creates the possibility that PCB designers will have a choice of format no matter which EDA tool they choose.
* OpenAccess, which resulted from a transfer of certain technologies by Cadence to the Si2 organization. Although it was originally designed for integrated circuits, it is now finding application for IC package and PCB design also.
* JPCA-EB02 ("Fujiko") based on work by Prof. Tomokage of Fukuoka University.
* EDIF - Electronic Design Interchange Format