OSH Park Docs
Common Errors with Drill Files
When first producing gerbers for our service, it’s likely you’ll hit some snags producing drill files. This FAQ addresses some of the more common issues that you’ll run into, along with how to solve them.
Our service uses Excellon Drill (also called NC Drill) format, with Zero Suppression set to Disabled or None. The Precision should be set to 2:4 when using inches, or 3:3 for mm when using metric.
The easiest way to identify problems is by paying close attention to the previews, specifically the Top/Bottom previews, which show how the drills are aligned with your board.
Errors on the previews indicate that we didn’t understand how you want your board manufactured, and should not be ignored. These previews provide an accurate demonstration of where we think you want your drill hits. Ignoring these issues will result in a board with no holes, or a board with some holes missing.
If you have any questions about your files, don’t hesitate to email your board files to firstname.lastname@example.org, so we can help get your board ordered correctly. Drill files are easily the most frequent question we encounter, so don’t feel bad!
Issues Caused by File Names
“I can’t find a drills file”
This error is shown when first uploading the board. Usually, this means that your drill file is not named correctly. Our system looks for the following 3 file extensions, which are commonly used with Excellon Drill or NC Drill files:
There are a few things you can try, in generally this order:
Make sure your drill file has these extensions, and remove any extra files that have these extensions. In some cases, our system will attempt to read other files, and produce an error.
If you see multiple other errors, make sure you’re following the suggested naming pattern.
Some CAD tools produce a binary drill file by default, which we cannot accept. For these you’ll need to produce a Excellon or NC Drill file. Check to see if we have a drills help page for your specific CAD package.
In particular, OrCAD Allegro calls the file throughhole.tap. Rename it to throughhole.xln and try again.
If you’re using Eagle to create a 4-layer board, be sure that you’re using our design rules and that the
DRC > Layers > Setupoptions aren’t allowing blind or buried vias.
Sometimes there aren’t any holes on the preview image, but it’s usually caused by the drill file.
In some instances, CAD tools produce multiple drill files that our system will happily accept. However our system will only read one, and some of your drill hits will be ignored.
Most commonly, this issue will arise from the CAD tool producing separate Excellon files for plated and un-plated holes. Less frequently, some tools will additionally produce Excellon files for board edge routing or slot routing. These can also confuse our system.
It’s highly suggested to remove any extra .TXT files before submitting your order, since in some cases these errors are not obvious.
Missing holes can also be caused by drill files with Trailing Zero Suppression, so check that option as well (see below).
Issues Caused By Excellon Drill Formats
This is what you should expect to see on the Board Top and Board Bottom previews. The drill hits are shown on the center of the pads, and there’s no unexpected blobs in the corners of the preview or the board.
Note that the board file is scaled to fill the preview box, and is not located way off to one side, or in a corner.
File is not an NC Drill Drawing
Despite the file having the filename we need, it’s not actually an NC Drill or Excellon drill format. The specific symbols used will change depending on design tool and drill size.
Most design tools can out put a “Fabrication Drill Drawing” file, sometimes called a Drill Ident or Drill Symbols file. These are used for verification at the fab, but cannot be processed by our automated system.
Solution: The exact solution varies by design tool, but typically adjusting your CAM settings will produce the file format we need. Some design tools require you to produce the NC Drill file separately from the Gerber files, usually in a menu such as under File > Export.
If you see this preview but are certain you produced a valid NC Drill file, try deleting unnecessary files to ensure that we locate the correct one.
In some cases, the Board Outline drawing will contain both the board outline as well as drill drawing data. This won’t cause any issues, as long as the drill hits are shown on the previews as well.
Precision too low (usually 2:3)
Our systems see the drill coordinates as being much smaller than they actually are, so they bunch together in a corner. The usual identifier of this issue is the board being very small, and rendered in the upper left.
In some cases, the board is shown with the drill hits bunched together on the bottom left corner, as seen on the second example.
Drill files with trailing zero issues produce a similar issue (see below).
Solution: Export the drill file with 2:4 precision. Also make sure that Zero Suppression is set to None or Disabled.
Precision too high (usually 2:5)
Our system thinks the drill coordinates are much larger than they actually are, so they’re scattered far outside of the board. The usual identifier of this issue is the board being very small, and shoved to the lower left. The drill hits are typically not visible, or are very hard to see.
In extreme cases, the board is barely visible, or our system fails with the message “Error”.
For users with Eagle 7.2 or higher, this is likely to occur if using a CAM job written for previous versions of Eagle.
Solution: Export the drill file with 2:4 precision. For Eagle, you can download our corrected CAM files, or set the Drill Device to EXCELLON_24.
Mirrored Y Axis
This problem usually occurs in older versions of KiCAD, where this option is enabled by default.
In this case, the Y coordinates are flipped across the X axis. Since KiCAD has the X axis on the top, this usually results in the first image, where the drill hits are above the board.
In other cases, the X axis is below the board, and results in the second image. This is typical of this issue in other CAD tools.
This is sometimes easy to confuse with translation issues (see below).
Solution: For KiCad, uncheck the “Mirror Y Axis” in the drill file options. In other CAD tools, this option is called called “Mirror about X Axis”, and should be disabled.
This issue is commonly caused by a mismatch in the coordinate origin.
In most cases, this is caused by generating the gerbers with Absolute Coordinates, and the drill files with Relative Coordinates, or the other way around.
This is typically seen as the drills being drawn to scale but off to one side. It’s often to the bottom-left as shown, but can be moved anywhere. If the Top Preview is zoomed out, but the Drill Preview looks correct, this is likely the issue.
In some instances, the drill file is only translated only a few mm. In these cases, the drills will make it to the board, but they’ll miss the via pads, and typically ruin the board. This is shown in the second image.
Solution: Set the options for both Gerbers and Drill files to Absolute Coordinates. Also make sure that your “Coordinate Offset” for both Gerber and Drill settings are set to zero.
Trailing Zeros suppression
This image shows how our system views drill files with Trailing Zero Suppression.
Suppressing the zeroes causes our system to miscalculate many of the drill hits, causing several types of errors.
This is typically shown with the drill hits making horizontal or vertical lines on one side of the preview, or an L shape in the bottom left corner.
In many cases, this looks similar to the Precision Too Low issue shown above, with the drill hits forming a blob in a corner.
Because the zero suppression doesn’t affect all coordinates, it’s possible for some drill hits to be shown as expected, and others to be affected by this issue. In the example shown, most drill hits are rendered incorrectly, but the USB connector is shown as expected. Likewise, only Y coordinates were affected, and X coordinates were not.
Solution: Make sure that Zero Suppression is set to None or Disabled.