Close, but not quite. The minimum track width only has to take into account tolerances for printing the photolithography artwork and the process of etching. But annular rings have to also account for drilling tolerances (both drill location tolerance and drill diameter tolerance as well as the actual drill being slightly larger than the finished hole size in the design to allow for the thickness of the hole plating).
This is why OSHPark specifies annular ring separate from track width. Here are the specifications from their web page:
6 mil minimum trace width
6 mil minimum spacing
at least 15 mil clearances from traces to the edge of the board
13 mil minimum drill size
7 mil minimum annular ring
The annular ring specification is how much to add to the radius of the drill hole so the math will be drill + 2 * annular ring. Thus 13mil + 2 * 7mil = 27mil.
I think the key to this is actually calling this out in the KiCad interface vs using default annular ring (granted, this depends on how you use the Net Classes to start with). When I first made this mistake I put in a 13 mil drill and a 20 mil diameter. It looked too thin, which caused me to double check. Using the default values for drill/ring only shows the ring, not the drill inside it.
Quickly looking at the design rules and DRC dialog boxes, I don’t see anything to enforce a minimum annular ring. One would have to manually make sure that all pads are 2 * minimum annular ring (14mil with OHSPark) larger than the associated drill. Not only on vias, but also on all THT components. Might be something worth requesting as a feature addition to the development team.
KiCad has a Template option:
in the main Window there is a button ‘Start a new Project from a template’
(new Versions: ‘Create new Project from Template’)
if you click on this button you can choose from some templates -
on windows these are located in the main KiCad folder:
“c:\Program Files (x86)\KiCad\share\template”
(in the new Version: “c:*****\kicad-winbuilder-3.4\kicad\template” worked for me)
i have made a PCB-Pool Template according to there specifications.
you can download it at: http://s-light.github.io/template_PCBPool_20150105.zip
i posted this also at https://groups.yahoo.com/neo/groups/kicad-users/conversations/messages/19513
(remove the underscore b/w P & G in JPG. The forum won’t let me post images…)
which means that you would need to add two annular rings. However, I’ve made the mistake of submitting files with the via diameter rule set to one annular ring dimension and I got the board back fine. Use this knowledge at your own risk.
You can create different board templates and start a new project from that template. It’s not super convenient if you don’t know which board house you’re going to use when you start, but at least it’s something.
Same here. I’ve read (older) IPC specs and as I recall that is the correct definition of annular ring. But don’t think of it as adding “two annular rings”. Just recognize that the annular ring is an addition to the drill radius, not the diameter. So the mathematical effect that you describe is the same.
Often the annular ring is larger than the minumum track width because it needs to take into account drill tollerances (both in drill diameter and mis-registration) and the fact that if the specified drill size is the finished hole size the board house will have to drill with a slightly larger drill so the through hole plating reduces the diameter to the customer specified size.
This is pretty much what I did. I made a starter projects/templates kind of thing, then just put them in a special folder and made them read-only so I don’t accidentally hit “Save” and overwrite them. Seems to work fairly well.
For a more flexible method you can open your pcb file up in a text editor and replace the section of setup as required. You can copy out from existing projects and make a simple library. Not as good as being able to load in a suppliers validated rules file, but quicker than typing out every time.
you can make a template project for that and load that when creating a new project.
(everything you have in your post is stored in a templates pcb_new file.)