DFM stands for "Design for Manufacturability", but just think of it as an online Design Rule Check, not dissimilar to what most EDA packages provide. The difference is that we're testing your output files - what our systems are going to see - rather than what your EDA software thinks that it's doing correctly (or otherwise). In some cases, we're testing for things that EDA software can't or doesn't verify.
The TL;DR version: Your EDA's DRC function tests that things are as you want them. Our DFM function tests if it can be manufactured (correctly).
DFM Window Access
If you received a negative DFM report appeared in the PCB Tab, you'll need to either correct errors, or mark them as "Ignore" before you can proceed. A negative report may appear like this:
Clicking on the "Inspect" button will allow you to access the DFM Window. If your board is error free, you will not be able to access the DFM Window - there's nothing to show. There's a test file, attached to this post, for those that never have errors, but would like to see how the DFM works.
What We're Testing
The current DFM system tests copper and drill layers, and how they interact. The Torturer (see below) allows you test the full suite of our current DFM capabilities.
Viewing, Correcting and Ignoring Errors
A Word About Ignoring Errors
The various "ignore" functions should be used with care - we provide ignore functions because sometimes our algorithms are just wrong, and you just want to get on with things. Or, in other cases, it may be that you've purposely done things that are out of spec, but you want it that way anyway. If an error falls into those two classes, ignore away. But, if you have legitimate errors you should really, really correct them.
To make it clear: if your board runs with Ignored Errors, they will not be corrected by us. Any defects that are attributable to an ignored error will not be covered by any guarantee or warranty. So, if you have an Ignored Error that just couldn't possibly affect anything, no worries, we'll do the right thing. But seriously? Clear all of your errors, and then no worries.
The DFM Window has a lot of functionality - it's a powerful tool! Some of the things you can do:
- Show either New (unaddressed) or Ignored Errors.
- Set all Errors to Ignore. You really don't ever want to do this, except in some very particular situations.
- Switch units.
- Switch to Layer View (more on that below). Layer View is only available for error types where inspecting the affected layers is applicable. You can also click "Toggle View" from individual errors to flip between views.
- Open or close groups of Errors (signified by either a + for a closed group, or a - for an open group)
- The actual Errors - click on them to get a contextual view of the issue. The coordinates shown are relative to your design, and should be helpful in tracking down issues in your EDA package.
- Ignore individual Errors via the "Ignore" button. Say that there's something that you're sure isn't an error, or not one of any consequence (perhaps you've created an electrically isolated copper feature of your logo) - click there to move on with things. But please see the warning above.
- See where your Error is in relation to the entire board (see the "nav" map in the lower left)
PCB vs. Layer View
PCB View shows you a visual of the entire PCB as we intend to fabricate it for real life. Layer View, however, shows you the Layers that are affected by an error, and they're displayed as you'd expect to see them in an EDA package.
Layer View will show some additional things:
- The outline of the board, shown as a blue/transparent dotted line. This is really handy for finding out that you've put an outline on multiple layers.
- Stuff that's outside the outline.
- Drill hits are shown in a hatch pattern with a highlighted edge.
For example, here's an error where there's copper features outside the board outline, shown in both views:
Note that only relevant layers are shown in Layer View. Some errors don't need Layer View, so it isn't available.
How Do I Correct Errors?
You'll need to go back to your EDA package, make changes, and then re-upload files in the PCB Tab.