KB: Convert Plated via Backdrills to Non-Plated in ODB++ output
Solution Details
First, check with your fabricator. They may prefer to make the changes for you.
However, if you need to change the VIA type to NON-PLATED, this shows you how to determine which Drills need to be modified and to which files changes are required.
In the generated ODB export folder, via types are defined in a file named Tools.
These are contained in a Drill folder corresponding to the drill range.
The Drill folders are named Drill#, where # is a sequential integer numbering of each folder (except the first is just named Drill). Drill folders are located here:
<path>\odb\steps\pcb\layer\Drill*
To determine which Tools files need editing, it is necessary to examine the Drill pair definitions in the Matrix file here:
<path>\odb\matrix\matrix\matrix
Edit the matrix file in a text editor. For the Drill layers, the "Layer{}" section will contain a Type=Drill, and Name= and list the start and end names. Backdrills have an extra property called ADD_TYPE=BACKDRILL, which makes it easier to determine which Drill names you will need to modify.
For example:
LAYER {
ROW=25
CONTEXT=BOARD
TYPE=DRILL
NAME=DRILL1
POLARITY=POSITIVE
START_NAME=_L01__TOP_LAYER
END_NAME=_L03__SIGNAL
OLD_NAME=
ADD_TYPE=BACKDRILL
}
Here, the Drill has a name of DRILL1, and this will be the corresponding folder name in the Layer folder.
Make a list of all the Drill name for the LAYER {} that contain BACKDRILL ADD_TYPE
To modify the corresponding tool file, you would edit the tools file here:
<path>\odb\steps\pcb\layer\Drill1\tools
In the tools file, it is necessary to change the Via Type to Non_Plated.
E.g., Edit the file, find:
TYPE=VIA
and change to:
TYPE=NON_PLATED
Take care to only change Blind Vias that are back drills, as determined earlier.