Designing Your Board
Use FlashPCB Library components in your Eagle PCB design
To understand how to use components from our library on your board it is
important to understand a little about the rationale behind creating the
library. We designed the library to ensure compatibility between the footprints
in the library and specific parts in our inventory, and to ensure that certain
design rule checks are met, such as proper courtyarding between parts. The use
of the library also allows us to automatically generate a bill of materials from
your design. We use the relationships our system has encoded between footprints,
symbols, and parts in our inventory along with the information you've included
in the Value text of each component to find matching components. We will cover
more about component matching throughout the following sections.
We can only populate components that use the FlashPCB library. This is to
ensure the manufacturability of your board and to allow us to run design rule
checks against your design.
If you have a particular component in mind to use in your design, you can search
for it in our
component search tool and find the entries in our
library that fit that particular part. In the search result for each part you
will see the library, device set, and package to use so that we can manufacture
your board with the component you selected.
Our AI inspects your board design and uses the device set, package, and Value
text of each component in your design to identify the specific part from our
inventory that best satisfies the intentions of your design. For these reasons
you should use the Value text in Eagle for each component to specify the various
parameters of the part you want to use. For instance, you can specify
22k ohms 1%
in the Value text if your design calls for a resistor with 22
kilo-ohms and with 1% tolerance. You can even simply specify 22k 1%
and
because the footprint you used is for a resistor (at least it is in this
hypothetical scenario) our AI will assume that you mean 22 kilo-ohms.
You can also specify a particular manufacturer's part number from our
inventory in your Value text and our BOM generator will pick that part if it
exists in our inventory. If it is not in our inventory we will attempt to find
a part with the same properties in our inventory.
Requesting additions to the library
We are continuously expanding our inventory and adding components to our library
to expand our manufacturing capabilities but it is possible you will find that
parts you would like to use are not in our inventory or covered by our library.
In these cases you can request that specific components be added to our library
via
our site's contact form. Please include as much information as
possible (i.e. the manufacturer, part number, and package name) in your message.
When designing your board it's important to be aware of the design rule checks
that we will run against your board during our checkout process. Following is a
non-exhaustive list of our design rule checks.
Layer count
We are currently only accepting 2 and 4 layer boards.
Board size
Your board must fit within a 10-inch by 10-inch box.
Autodesk Eagle specific checks
We recommend that you load our design rules into Eagle. This will help make sure
you stay within the bounds of our manufacturing specs while you design your
board. You can download our rules
here and load them into Eagle
by opening the
DRC
window from the
Tools
dropdown in Eagle then loading the
file you downloaded. This
blog post
explains how to interact with design rule checks in Eagle.
If our system identifies that your design used rules that differ from what we
expect, we will update your design to match our expected values. Please be
mindful of how this could affect your design.
FlashPCB Library usage
We require that components from the FlashPCB Library be used as is without any
manipulation. If you would like to edit the components from the FlashPCB library
you will have to save them under a different library name in order to use them
in your designs. Keep in mind that we will not be able to populate any
components that do not use the FlashPCB library.
Part placement
We can only populate surface mount components on the top of the board.
Through-hole components can be populated on either side of the board. Surface
mount components on the bottom of the board will be marked Do Not Populate.
Our library encodes information that is used by our design rule checks to
validate part placement. This information is contained within the following
layers in Eagle:
Layer | Details |
---|
39 | Top Keepout Layer: This is the component's top courtyard. |
40 | Bottom Keepout Layer: This is the component's bottom courtyard. |
117 | Edge Layer: This specifies the edge of the element which must remain on the board. If not present we fallback to layer 39. |
119 | Overhang Layer: This specifies parts of the element which must overhang the board. |
Board border is continuous
We check that your board has a continuous border. If you have two boards in the
same file, we require that you separate them into separate files and upload them
separately.
Minimum drill and end mill size
We check that all the drilled holes in the board are larder than our minimum
drill size. We check that all the slots or non-circular holes in the board are
larger than our minimum end mill size.
Type | Minimum size |
---|
Drill | 0.2 mm (8 mil) |
End mill | 0.35 mm (14 mil) |
Minimum trace widths
We check that all the features in the copper and silkscreen layers are larger
than our minimum widths. If there are features in a copper layer smaller than
the minimum width this check will produce an error. If there are features
smaller than the minimum width in a silkscreen layer they will be removed from
the board.
Layer | Minimum width |
---|
Copper layers | 0.127 mm (5 mil) |
Silkscreen | 0.0762 mm (3 mil) |
Minimum trace spacing
We check that all the copper traces are spaced from each other by at least our
minimum widths. If there is spacing between traces in a copper layer smaller
than the minimum spacing this check will produce an error.
Layer | Minimum width |
---|
Copper layers | 0.127 mm (5 mil) |
Minimum inner radius
We check that all the inner corner radii on the outer perimeter of the board are
large enough for our routing end mill. We will attempt to add a radius to an
inner corner if necessary. If we are unable to add a radius an error will be
produced.
Type | Minimum radius |
---|
Inner corner radius | 0.5 mm (20 mil) |
Layer trimming
We trim board layers based on our manufacturing capabilities. This process will
remove features that extend beyond the outer dimensions of the board. For The
silkscreen layers, silkscreen is also removed from areas without soldermask.
Layer | Trimmed by |
---|
Copper layers | Board dimensions |
Drill layers | Board dimensions |
Soldermask | Board dimensions |
Solder stencil | Board dimensions, drills |
Silkscreen | Board dimensions, drills, soldermask |