Stump the Chumps submission form

See if you can stump the chumps with your SolidWorks questions at our session in SolidWorks World 2010:

Stump the Chumps question submission form

Also, if you have files to submit as part of your question, please email your question and files to

External Threads in SolidWorks (where are they?)

One of the unexpected weaknesses in SolidWorks is that there is no External Thread feature.  For years, SolidWorks has had the Hole Wizard and related functionality for various types of holes, including threads.  But there is [was] no feature for creating external threads.  I’ve always been baffled by this.

[All this has changed as of SOLIDWORKS 2022 with the release of the new Stud Wizard tool!  The remainder of this article will be about my impressions before Stud Wizard tool from the original publish date.  I will italicize outdated statements below.  A new article will be posted at some point to review the new tool.]

Examples of Stud Wizard
From SOLIDWORKS 2022 Help File

So, when I saw that SolidWorks 2010 was improving the Cosmetic Thread annotation to allow the user to quickly choose a thread size from one of the thread standards (ANSI, ISO, etc), I had a brief glimmer of hope.  I found out, this is one of those enhancements that is just too little, too late.  All this new enhancement does is pull values from the Hole Wizard to add a Cosmetic Thread annotation.  If an external thread is desired, the user is still left with having to create the OD of the thread as a separate feature.

Sure, one may not expect an annotation to make a feature.  It just seems like an opportunity was missed.  Instead of just having the Cosmetic Thread annotation read from the standards, SolidWorks should have included an External Thread feature.

In my view, this feature should work in several ways.

  1. Allow the user to select an OD upon which the External Thread will be cut.
  2. Or, allow the user to select a flat face from which the External Thread will extend.
  3. Don’t require a precondition.  Allow the user to select their method within the workflow of External Thread command.
  4. Have the External Thread feature work the same way as Hole Wizard.  The helix of the thread is not modelled, but have several modelling and annotation options available (model to the ID or OD, and choice to use cosmetic thread).

Although the addition of the standards lookup within the Cosmetic Thread annotation is welcome, SolidWorks should fully support External Threads as an actual feature.  I created an ER for this topic this week, and invite others to do so as well.

[To see information about the new Stud Wizard (that works pretty much as I laid out above), see the What’s New for SOLIDWORKS 2022.  For more information, you can check out the SOLIDWORKS 2022 Help File articles about Stud Wizard.]

SolidWorks 2010: Dimension Palette and Styles

Dimension Palette is a great new function in SolidWorks 2010 that allows the user to edit most commonly accessed aspects of a dimension, right from the main drawing view pane.

Simply highlight or LMB click on a dimension. A ghost image of its Dimension Palette will appear nearby.  Move your mouse cursor over the ghost.  This forces it to fully materialize.  (I’m reminded of Ghostbusters for some reason.)

Dimension Palette

From that point, many of the dimension’s attributes may be directly edited, such as tolerance style and range, dimension accuracy, and tolerance accuracy.  Also editable is text above, right, left and below the dimension.  Additionally, formatting is editable, including dimension position and justification, reference parenthesis, and inspection obround outline.  To aid in use of these new functions, small pop-up hint fields appear as the mouse cursor moves over each element.

Finally, the user can also quickly apply saved Dimension Styles (formerly known as dimension favorites) to the dimension.  This can be accessed by clicking on the gold star icon in the upper right of the Dimension Palette. Dimension Styles are much more automated than the old dimension favorites.  Not only does the user have access to any saved Styles, SolidWorks will also restore recently used formatting changes as Dimension Styles.

Dimension Styles

This means, when the user makes a change to a dimension, SolidWoks will automatically save the user’s change as a Dimension Style.  Automatically saved Dimension Styles will show up in the Recent tab of the Styles window.  These Styles only reside in the current drawing.  (In order to use these Styles in another drawing, the user will still have to save the Style in the same way dimension favorites have been saved in previous SolidWorks releases.)

To replicate the same changes to multiple dimensions, the user simply has to edit one dimension (preferably through the Dimension Palette).  From that point on, to apply those same changes to other dimensions, the user need only select the Dimension Styles button for affected dimension and select their previous change from the Dimension Styles window.

Basically, the user can paint any various dimension formats as Styles to any following dimension.  This is a very cleaver execution of a long standing Enhancement Request to allow dimension formatting to be quickly copied from one dimension to another.

Don’t quote me on this, but if I remember correctly, the current limit on the number Dimension Styles stored in the Recent tab is ten.  This may change at some point.  One added function I’d like to see within the Styles window is the ability to delete Dimension Styles from the Recent tab.  As always, with any great new functionality comes even a greater number of new requests for improvement.

SolidWorks Drawings ER Blitz – SW Drawing Forum

There’s something going on over at the SolidWorks Drawings Discussion Forum.  There has been an on-going project consisting of users working together to form a list of requests to improve SolidWorks’ drawing functionality.  It all started out with a posted message that was simple, yet poignant by user RYAN W.

When is solidworks ever going to focus on drawings for a new release? Of all the parts in SW I think it needs the most improvement. When ever I find a bug or have a problem in SW it usually is in drawings. I think it would be great to have a new release focus on this area.

From there, the discussion evolved.  Users started going into what they would like to see added to SolidWorks’ drawing functionality.  Others brought up bugs they found.  Somewhere in the discussion, Dwight Livingston took the baton.  He compiled list of eighteen improvements from everyone’s comments.  It included requests such “Create option to attach the ASME symbol for ALL AROUND to the bend of a leader”, “Change SW tables to have basic spreadsheet functions, without MS Excel”, “Create option to add a new centermark to an existing centermark group”, and “Create feature to embed custom symbols in drawing files”, just to name a few. 

This list has received considerable enthusiasm and has taken on a life of its own; it grew in scope and size in a second thread titled What Drawing Functionality Does SolidWorks Need to Improve?.  Finally, Mr. Livingston formalized the discussion under the thread SolidWorks Drawings ER Blitz, with the intent to finish compiling the list of requests by Sept 17, 2008.  By now, the list is over 40 individual items in about 15 categories.  Some of the categories are DRAWING EXPORT, DIMENSION, HOLE CALLOUTS, GD&T, and SYMBOLS.

Now, unofficially, I can say that SolidWorks Corp is aware of this list.  It is my impression that it will not be ignored.  That is not to say that every item will be dutifully explored and implemented right away.  There are many factors that go into decisions as to which improvements to work on first and when to implement them.  At the very least, SolidWorks Corp is listening.

Please check out the current list.  If so inclined, please feel free to voice your own thoughts about items on this list and mention any new items that need to be added.  What’s been bugging you?  What bugs need fixing? Where does SolidWorks not allow you to detail something per ASME or ISO standards without some heinous workaround?  Where is SolidWorks drawing functionality still lacking?  What functionality can be added to increase efficiency? 

Drill and Tap; and calloutformat.txt (Part 2)

This entry is part 2 of 4 in the series Hole Callouts
*This article is continued from Part 1.*
*Updated some references to support current SOLIDWORKS versions [4/21/2019]*

Tip to use Simplified Threaded Hole Callouts

SOLIDWORKS has an usual method to control hole callout formats. Most other types of callouts are managed from with SOLIDWORKS settings.  However, hole callouts are controlled with an obscure file buried deep within its folder structure on the hard drive.  That file is calloutformat.txt (X:\Program files\SOLIDWORKS Corp\SOLIDWORKS\lang\english).  Additionally, there is also a calloutformat_2.txt.  What’s the difference between these files?  Calloutformat.txt is the default file which SolidWorks uses to determine how to form threaded hole callouts created with the Hole Wizard.  This file establishes the rules to show both the nominal drill diameter and the thread detail in a leadered note.  This is the most common method for threaded hole callouts. However, as mentioned, this method has flaws.

Thankfully, SOLIDWORKS provides an alternative with simplified callouts.  The user doesn’t have to go through and modify each and every callout instance in calloutformat.txt.  As obscure calloutformat.txt is, one would expect the alternative to be even more obscure; and it is!  The alternative file is calloutformat_2.txt, with no identification or in-file description to tell anyone of this fact.


Here’s the tip to use simplified threaded hole callouts. Before SolidWorks is started, launch Windows Explorer and goto X:\Program files\SOLIDWORKS Corp\SOLIDWORKS\lang\english (or similar, depending on SOLIDWORKS installation location). Rename calloutformat.txt to calloutformat_1.txt. Rename calloutformat_2.txt to calloutformat.txt. (Make a backup copy of course.)

The one drawback is that SOLIDWORKS uses different methods to callout the thread between the calloutformat.txt and calloutformat_2.txt.  This places a # in front of every threaded hole callout in this simplified format, and leaves off the series designation.  The work around for this is to simply open calloutformat_2.txt with Notepad, then use pulldown Edit>Replace to replace “<hw-threadsize> <hw-threadseries>” with “<hw-threaddesc>” in all instances prior to the renaming.  (Again, always make backup copies!)

Additional Networking Tip

Once calloutformat_2.txt is modified and renamed to calloutformat.txt, copy it to a network drive location that is available to all other SolidWorks users.  On each system, goto pulldown Tools>Options>File Locations>select Hole Wizard Favorites Database.  Point the folder to the network location of the new calloutformat.txtAlso point Hole Callout Format File to the same new folder. There are various methods to save this setting for future installs and updates, such as  Copy Settings Wizard or Admin Image.

P.S., Cosmetic Threads

One caveat to this whole story is how SOLIDWORKS automatically labels cosmetic thread annotations on ANSI standard drawings.  When you create the drawing view that contains the cosmetic thread, you get a surprize; something like “8-32 Machined thread” is added. It doesn’t really conform to any standard, and cannot be edited at the Part level within the cosmetic thread feature (unless you use a customized thread called “None”).  This callout can be inserted on drawings of other standards, such as ISO, by right-clicking on the cosmetic thread and selecting “Insert callout”.

If edited manually in the cosmetic thread feature properties, one can enter anything they want, and that will be the callout for the cosmetic thread on the drawing. If you want your threaded holes to say “Stop poking me!”, your hole callout will say “Stop poking me!”.  But there is no automated method to use the correct callout without directly entering it within the cosmetic thread’s property field and using a custom thread. One advantage is that if this field is edited, it does automatically update drawing where it appears.  However, if I’m relying on Hole Wizard information, I wouldn’t want to use the cosmetic thread annotation callout on my drawing anyway.

Drill and Tap; and calloutformat.txt (Part 1)

This entry is part 1 of 4 in the series Hole Callouts

Sooner or later, the topic of how to callout a threaded hole comes up in pretty much everyone’s career in the Mechanical Engineering field.  I’ve seen the nature of those discussions be straight forward, but I’ve also seen angst riddled arguements.  Though this isn’t a SolidWorks specific topic, it is important to its users. This is because SolidWorks specifies hole callouts differently in different scenarios.

The conventional rule (within ANSI Inch) is that a threaded hole should be called out as a leadered note showing its nominal drill size and depth on the first line, and the thread size, threads per inch, thread series designation, thread class and thread depth on the second line.  This is common practice, so most people are comfortable using it.

Example (without use of symbols):
2X .190 DIA .190 DEEP
8-32 UNC-2B .164 DEEP

Of course, this method has flaws, which I’ll get into later.

I’ve seen two extremes as well.  At one extreme, the threaded hole callout has the actual drill bit size listed in addition to specification for the tap and drill.  I gather it would look something like this:

2X .438 DIA .25 DEEP WITH 7/16 Q DRILL
.438 UNC-2B .375 DEEP

Of course the basic flaw with adding the drill size is that this is a specification of process, which is generally disallowed by ASME Y14.5M-1994.  It is equivalent to having the note “FORM THIS PART WITH LATHE MODEL XYB”  or even, “JUMP UP AND DOWN THREE TIMES AND SPIN IN A CIRCLE BEFORE USING THE MILL TO CUT THIS HOLE”.  Hyperbole aside, this practice is not appropriate.

On the other end, one might find a hole callout that simply states the thread size, such as “TAPPED HOLE”  This is a bad case of under-specification.  I haven’t seen this method often on formal drawings, but it is very common on preliminary sketches.  There just isn’t enough information.

What is just-enough-information for a threaded hole callout?  Well, this answer is easy.  Thread size, threads per inch, thread series designation (sometimes considered optional), thread class, thread depth, and sometimes drill depth or end condition.  The “nominal” drill diameter isn’t actually needed.  There’s several flaws with including the drill diameter.  First, the actual drill diameter is not based on the callout, but rather the thread itself.  It is over-specification.  Second, drill diameter is stated as a dimension, so it is not nominal.  Because of this, the standard drawing tolerance must be applied to that dimension.  Again, this is over-specification because the thread has its own tolerance for its final size.  Simply by stating the thread class, its tolerance is called out.  Third, because of these other points, specifying the drill diameter is actually a specification of process.  Given all that, I always callout a threaded hole as so:

2X 8-32 UNC-2B DEPTH .165

In the rare event that drill hole depth or end condition is necessary to call out, then simply state that specification in the callout, or show it dimensionally on the drawing view itself.  How this relates to SolidWorks and the calloutformat.txt file will be discussed in Part 2 of this article.