Sep 11, 2019|General
Warning: Before reverse engineering a PCB please take into consideration all legal implications of doing so. Candor Industries does not condone any illegal reverse engineering activity.
Determining how to reverse engineer a PCB depends on how comfortable you are with the board and software for developing schematics. The process can take time—and patience—and multiple digital tools. The payoff is worth it, however, if you can get the PCB functioning again on your own. Here’s how (and why) you should reverse engineer a PCB.
Why Reverse Engineer a PCB?
First, why would anyone want to reverse engineer a PCB board? With so many alternative options to a complete rebuild, it doesn’t always make sense to waste time with an outdated or broken PCB board. That said, there are a handful of reasons that you may want to invest the time and energy into reverse engineering a PCB.
1. The PCB Operates Something Crucial
Unless you’re a serious PCB enthusiast, you probably won’t want to overhaul the circuit board unless it’s vital for some reason. Whether it’s an electronic component or piece of machinery the PCB powers, if it’s a valuable or necessary item, you will want to preserve it.
For older electronic equipment and even vehicles, some PCBs become outdated. Replacements may be unavailable (or totally beyond your budget). In these scenarios, spending the time to reverse engineer the PCB may be well worth it.
2. No Documentation/Data Exists
Reverse engineering becomes necessary when you lack the documentation that explains how to repair a PCB. These days, many PCBs have CAD data to work with, or at least a schematic or some type of documentation. Even rudimentary details on the PCB can help you figure out how to repair it.
If no data exists, reverse engineering allows you to create your own. It’s time-consuming and can be a challenge, but it is possible.
3. No Professional Knows What to Do with It
Many professionals (including manufacturers of PCBs) are often available to help troubleshoot and repair circuit boards. However, if you can’t find a professional who knows how to handle your PCB, you’ve hit a wall again. Sometimes, the manufacturer of the unit has gone out of business (or the engineer is no longer alive), leaving you with few alternatives.
How to Reverse Engineer a PCB
Becoming a PCB reverse engineer isn’t necessarily simple. But there are three main steps you need to take to achieve a functioning PCB without documentation or support.
1. Reverse Bound Constructing
To begin, you need accurate—and well-lit—images of both sides of your PCB. With these two images, you can create a layout for developing a schematic. With a basic board, you can use graph paper to draw the layout. Use symbols for each component and work carefully to capture the proper scale.
For more complex PCBs, using pencil and paper quickly becomes confusing. However, if you can create a line drawing for a relatively detailed PCB, you can skip image editing and color switching and go straight to preparing a schematic.
Using photographs is time-consuming, but it’s a necessary step for more complex layouts. Good lighting and a quality camera (whether digital or smartphone) will help make the process easier. You need a photograph of both sides of the PCB to begin.
What You Need
You will need specific programs to edit your photos and manipulate the features. After completing the layout building and schematic developing steps, you may still need CAD (computer-aided design) software to achieve desired results.
Programs which are helpful for pre-CAD steps include:
* Gimp—free, open-source graphics editor
* Inkscape—free, open-source vector graphics editor
* AutoTrace—a program for converting bitmap to vector graphics
* Dia—free, open-source general-purpose diagramming software
Other equipment that can be helpful when troubleshooting a PCB:
* A magnifying glass
* A multimeter for checking circuit power
2. Build the Layout
If you have a complex PCB that requires photo capture and lots of editing, the process will take much longer than if you’re able to draw out the connections. For simpler PCBs, you can scan your drawing into a program like AutoTrace to convert the bitmap image to a vector graphic.
With a complex PCB, you’ll need multiple editing steps before you can create a schematic. Whatever programs and methods you choose to reverse engineer a PCB, know that it will take hours and plenty of concentration.
The steps apply to both sides of the PCB, meaning you’ll need to follow the process twice to create a dual-sided schematic. Editing steps depend on the type of PCB, the colors, and measurements and can include:
* “Painting” the holes/solder pads on the board so you don’t lose them during transfer. Often, swapping color channels can help enhance hole visibility, but it depends on the existing colors on the board.
* If using AutoTrace, you need to remove PCB trackpads because they convert to loops.
* Marking “free” holes—spots on a multi-layer board which doesn’t connect to anything (or possibly inner layers).
* Adjusting layers and saturation to enhance visibility on painted PCBs.
* Cleaning up the tracks for conversion in AutoTrace (or a similar tool). Messy tracks won’t convert well, leaving you with a confusing schematic.
* Desaturating (applying grayscale to) and then inverting the image so the lines are dark on a white background. Clearing out gray and white colors helps create a crisper transfer in AutoTrace. Smoothing the edges is also helpful for keeping things clean.
3. Derive Schematics
Creating a schematic occurs within specific types of programs—namely AutoTrace. You can also use a tool like Target3001!, a PCB layout CAD program. Once you complete all the photo editing and drawing, deriving a schematic may prove the simplest step.
You need to combine both sides, label components with symbols, and arrange tracks so they make sense and are easy to interpret. You’ll then work through the drawing step by step, checking components, replacing lines, and troubleshooting through the whole diagram.
Unfortunately, the one drawback with reverse engineering PCBs is you can’t always tell where connections go. While some tracks appear to pass through layers, they may connect to planes or tracks inside the board instead. If you come across discrepancies while troubleshooting, hidden connections could be the culprit.