Few features in EAGLE cause as much confusion as the Restring tab (Figure 1) under the DRC (Design Rules Check). The goal of this blog post is to lift the veil and help you clearly understand how Restring works and how you can adjust it in order to make sure your boards can be manufactured to your specifications.
Figure 1 Restring tab in the DRC
The intent behind restring is quite reasonable. The Restring function in EAGLE wants to guarantee that the annular ring around you plated through holes is thick enough to produce reliable connections on your PCB. This becomes really important if your PCB manufacturer doesn’t have a tight tolerance on drill locations. You’ll find that drills can be considerably off center (some low cost board houses have rather loose drill location tolerances). If they are too off center then the drill will break the edge of the pad and you will have a broken connection, which means a non-functioning board. Since too thin of an annular ring can effectively ruin a board, the Restring is designed in such a way that it is always in play and can over-ride any diameters that are too small in your design.
At this point, you may start to have an idea of why restring can be confusing. Let’s say you’ve designed a part in the EAGLE library and the manufacturer specifies a thin annular ring (Figure 2). You finish your part, save it and then try to place it into the board (Figure 3). If you are not aware of what Restring is or what it is doing, Figure 3 makes absolutely no sense.
Figure 2 Package as designed in the library
Figure 3 Package as seen on the board, with larger annular rings
In (Figure 3) the pads have a larger diameter than what was specified in the library. If this was a tight pitch component, then it’s possible the annular rings are shorting with each other. So now that we see the symptom, lets figure out how the Restring function works and how we can adjust it so that the parts we design in the library come in unaltered into the board.
The first thing to understand about the Restring functionality in EAGLE is that it affects the board globally. This means that any changes you make in the Restring tab will potentially affect all of the pads, vias, and micro vias on your board. So as a rule of thumb, only modify these settings as much as necessary to get your desired diameters. In Figure 1, you see the restring tab is separated into 3 sections: Pads, Vias, and Micro-Vias. When dealing with library parts, only the Pads settings are of interest. So leave the via and micro-via settings untouched since these settings deal with vias made directly on the board. Notice that you can separate settings for the annular rings with respect to the top, bottom and inside layers of the board. Normally these are set identically (see Figure 1), however in certain specific applications it may be desirable to have control over the annular rings.
So how does this work? Let’s try this out using the factors defined in Figure 1.
Min = 10mils
% = 25
Max = 20mils
Assume we have 20mil drills with 30mil diameters in the library. What will restring do?
- Drill value is multiplied by the % value.
20mils x 0.25 = 5mils
- The result from step 1 is compared to Min and Max
If result < Min, restring= Min
5mils < 10mils, restring = 10milsIf Min<result<Max, restring=result
If Max < result, restring= MaxIn laymen’s terms if the result from step one is within the range of Min – Max, use that as the restring value. If it’s less than the Min value, bump it up to the Min value. If it’s greater than the Max value, then bring it down to the Max value. If you set Min = Max then there is no wiggle room and the annular ring thickness will be the same regardless of drill value or % value.
- Diameter = Drill + 2 x restring
Diameter = 20mils + 2 x 10mils
Diameter = 40mils
- Now restring will compare the diameter calculated in step 3 to whatever you defined in the library. The larger of the two wins. In this case 40mils > 30mils so the pads will swell when we bring the part into the board.
What do you need to do in order for your settings to take effect? In line with our rule of thumb we only want to change the settings as much as necessary to get the diameter we defined in the library to be larger than or equal to whatever the Restring calculates. In this example, changing the min value from 10 to 5 would be enough to do it. In general, your goal when adjusting the Restring settings is to make sure that whatever you defined in the library as the pad diameter is larger or equal to what the restring will calculate.
You may have noticed, we still haven’t gone over an aspect of the dialog. Find the diameter checkbox on the right side of the Restring dialog (Figure 1). This checkbox is important if 1) the diameter you set in the library is larger than what the restring calculates and 2) you have a multi-layer board. Check the Diameter check box to tell EAGLE to use that diameter on the inner layers too. Please note that under normal circumstances it’s difficult to see how the annular ring looks on the inner layers because the pads layer is a dark green. However, if you change the color of the Pads layer to match your background, EAGLE will draw the annular rings as copper features on each inner layer. Figure 4 shows the result without the diameter checkbox checked and Figure 5 shows it with diameter checked.
Figure 4 Diameter Unchecked in DRC
Figure 5 Diameter checked in DRC
Thanks for following along! We gave you in depth information so that you may have a better understanding of the thought process behind the Restring function in the DRC, why it works the way it does and how you can adjust it so that your parts enter the board as you designed them in the library.
Until Next Time!
EAGLE Support Team
Please share your thoughts and questions!
Comment or Email: firstname.lastname@example.org