ISO/UTS thread OpenSCAD library

by RevK, published

ISO/UTS thread OpenSCAD library by RevK Mar 7, 2017
0 Share
Download All Files

Thing Apps Enabled

Open in Customizer Order This Printed View All Apps



Design Tools



Liked By

View All

Give a Shout Out

If you print this Thing and display it in public proudly give attribution by printing and displaying this tag.

Print Thing Tag

Thing Statistics

2406Views 736Downloads Found in 3D Printing Tests


Making a simple thread in openSCAD is easy - linear_extrude an offset circle with a twist - and that works quite well. However you have to use a lot of slices to avoid some strange effects on the twisted extrude, and you end up with a sign wave thread cross section with is unconventional.

As such I have been playing with making a proper ISO/UTS thread without too many faces. It took me several attempts to get this right - do leave comments.

It is designed for metric, but the shape is the same for UTS, so you can use the library, specifying the thread pitch you need, to make UTS.

I've added the OpenSCAD - written to work as a library allowing nut, bolt, or arbitrary sections of thread - have fun.

Note: 8th March, corrected dimensions!

P.S. I have looked through a load of the other thread libraries on here - I think I am the only one that has constructed it in this way - some interesting different approaches to the same problem though. Fun.

More from 3D Printing Tests

view more

All Apps

Customizer is the easiest way to take great 3D printable designs and make them your own. Make your OpenSCAD designs infinitely more valuable by empowering the community to customize them.

App Info Launch App
Customizer Thing App

3D Print your file with 3D Hubs, the world’s largest online marketplace for 3D printing services.

App Info Launch App

Auto-magically prepare your 3D models for 3D printing. A cloud based 3D models Preparing and Healing solution for 3D Printing, MakePrintable provides features for model repairing, wall thickness...

App Info Launch App

Kiri:Moto is an integrated cloud-based slicer and tool-path generator for 3D Printing, CAM / CNC and Laser cutting. *** 3D printing mode provides model slicing and GCode output using built-in...

App Info Launch App
KiriMoto Thing App

With 3D Slash, you can edit 3d models like a stonecutter. A unique interface: as fun as a building game! The perfect tool for non-designers and children to create in 3D.

App Info Launch App

Print through a distributed network of 3D printing enthusiasts from across the US, at a fraction of the cost of the competitors. We want to change the world for the better through technology, an...

App Info Launch App

Quickly Scale, Mirror or Cut your 3D Models

App Info Launch App

3D Print a wide range of designs with Treatstock. Easy to use tools to get the perfect result. The global 3D printing network that connects you with high-quality and fast working print services nea...

App Info Launch App

This is a really great library. I used it to make a hole with inner threads on a part I needed, and it worked perfectly and was very easy to use. It was also much faster to render and slice than any other module I have used for this.

Thank you - I tried to make it flexible and fast. I appreciate the feedback.

Comments deleted.

Somewhat pedantic (but that's what standards are for...)
I notice that the minor diameter of the external thread is flat - whereas I think ISO threads are supposed to have it rounded. Likewise the internal threads aren't obtained by simply subtracting an external thread but have slightly different geometry.
I've been making bolt models too.... https://github.com/deadsy/sdfx

Looking at the wikipedia page (I did not buy the ISO), the internal thread is just the other half of the external thread, i.e. subtract external thread from solid block. However, I have made a mistake, so will correct the image, I read Dmaj as the middle not the outer edge due to the way it is labelled. I'll fix that shortly. It also says is "can be rounded out below the minor diameter Dmin", so does not have to be. In practice I have made the code produce options here with a clearance for print tolerance on the internal thread both ways (within limits) to allow for 3D printing. As the spec says Dmin is the minimum dimension, that is consistent with the spec but works for a 3D printer.

If you use the thread extrusion lib http://www.thingiverse.com/thing:2002982, you can specify your own thread-shape.

screw extrusion lib for polyhedron

I'll look in to that. Obviously 3D printing has slightly different issues that steel. And actual "rounded" seemed somewhat unnecessary. But good pedantry none the less. Thanks.