Reverse Engineering PCB Project Libraries

Pierre Meyitang
|  Created: February 21, 2017  |  Updated: September 25, 2020

People working on a PCB

Receiving PCB design files from clients isn’t always as smooth a process. Clients may send incomplete project files, project library files with unstandardized component libraries, or other files that don’t match what you actually need. When that happens, how do you proceed with the project?

Outsourcing has become the de-facto solution for companies seeking to cut costs and increase their profit margins. Rather than consuming their own resources on a particular task, companies farm it out to other firms that specializes in that particular area, leaving them to focus on what they do best. New product design often gets contracted out to separate design firms. If that’s you — your company outsources PCB design or your company is a PCB design house — read on because this blog post can make your life easier.

Communication Problems for Designers

Outsourcing work to other companies demands better communication among all parties involved. For PCB design engineers, this means ensuring that complete PCB project files are sent to clients. Unfortunately, receiving files from clients isn’t always as smooth a process. Clients may send incomplete project files, project files with unstandardized component libraries, or other files that don’t match what you actually need.

When that happens, how do you proceed with reverse engineering PCB designs at the start of a project? Here is an overview of the challenges that can arise when board designers need to generate source libraries solely from design project files, as well as some available solutions that can help facilitate this process.

Understanding PCB Project Files

Project file structure varies widely among different brands of PCB design software. Typically software packages have the six file types illustrated in the table below:

Typical File Structure for PCB Design Software Packages
File Contents
Schematic File
Project electrical schematic with logical connections. Generally readable outside software tool
PCB File
Trace and routing information and the physical board attributes. Generally readable outside software tool.
Database File
Metadata regarding the components
PCB File
Physical component parameters
Schematic File
Electrical component parameters and component symbols
Main File
Links and references to to other files, project options, configuration parameters

Most Schematic and PCB files are self-contained. This means that a contractor could send just the schematics or PCB file alone to a client, and the client would be able to open and view the full Schematic and Printed Circuit Board file content.

This flexibility may seem convenient, but it can be a double edged sword. It often leads to situations wherein a customer only recovers Printed Circuit Board or Schematic files due to premature termination of an agreement with their previous contractor(s). The client’s next contractor then gets burdened with having to base future designs off of the incomplete project files that the client has supplied.

In many cases, editing components within the design is not immediately possible with Schematic and PCB files alone. In those cases, Schematic and PCB files are required as well. This becomes all too evident when a needs to mass-edit components in a PCB design project. With printed circuit files, contractors have more engineering flexibility, including the ability to:

  • Modify a given component footprint and update thousands of references
  • Create standardized components
  • Modify component footprints and symbols

Reverse Engineering in Altium Library Loader by Altium Designer®

Achieving these tasks for a few components can be easy. But how about having to recreate a footprint and symbol for thousands of different components, each time a new design arrives from a client? The contractor would need to reinvent the wheel, regenerating new libraries for the existing design. It’s both impractical and incredibly time consuming. Altium Library Loader is the best way to reverse engineer a PCB design.

Download a free white paper to learn how to easily reverse engineer your PCB project libraries using Altium Designer's library loader.

About Author

About Author

Pierre is the current Sales Applications Engineer for Altium’s North America region. He worked in Mechatronics Design and Fabrication at Harvard’s Wyss Institute for Bioinspired Robotics as an Electro-Mechanical Engineer. Pierre recently joined Altium’s engineering team, and continues his hobbies in design and fabrication of miniature PCBs, CNC machines, and IOS app development.

Related Resources

Related Technical Documentation

Back to Home
Thank you, you are now subscribed to updates.