Screw Generator - Parametric Screws, Nuts & Washer

Screw Generator - Parametric Screws, Nuts & Washer

Boost
6147
13979
274

Print Profile(6)

All
P1S
P1P
X1
X1 Carbon
X1E
A1
A1 mini

Examples: 0.08mm layer, 40% infill
Examples: 0.08mm layer, 40% infill
Designer
38 min
1 plate
4.9(33)

Phillips M5 Screw, Washer, and Nut
Phillips M5 Screw, Washer, and Nut
10 min
1 plate
4.8(9)

Phillips 1/4 Screw, Washer, and Nut
Phillips 1/4 Screw, Washer, and Nut
12 min
1 plate
5.0(4)

Phillips M4 Screw, Washer, and Nut
Phillips M4 Screw, Washer, and Nut
10 min
1 plate
4.0(8)
Click to see more

Open in Bambu Studio
Boost
6147
13979
274
675
6.8 k
2.2 k
Released

Description

Looking for Screws? Look no further.

 

This OpenSCAD script lets you generate a wide variety of ISO/DIN and UTS (inch-based) screws, nuts, and washers - all fully parametric and customizable. Built using the power of BOSL2, it follows real-world specifications for both metric fasteners (M2–M20) and UTS sizes (#4–3/4"), including proper head types, drive recesses, and threading options. Whether you're designing for mechanical assemblies, prototypes, or engineering applications, this script has you covered.

 

Click on Customize to open the generator.

 

Using Bambu Studio or Bambu Handy? Click here to customize the model on Makerworld.com.

🚀 Quick Start

1. Select a Fastener Type
Choose between screws, nuts, or washers. Adjust general parameters like diameter, thread type, and length.
 

2. Customize Your Fastener
Each fastener type has its own unique options:

  • Screws: Select length, head type (Hex, Pan, Flat, Socket, etc.) and drive type (Phillips, Torx, Slot, etc.).
  • Nuts: Choose between hex and square shapes, adjust thickness, and control 3D printing clearance.
  • Washers: Select standard (ISO 7089) or large (ISO 7093) sizes with optional chamfering.

Not all configuration combinations (e.g., a ‘slot’ drive on a ‘hex’ head) are supported, as they do not conform to known specifications.

 

3. Render and Export
Generate your fastener at the desired resolution and export it for slicing and printing. For small screws, it is important to use a (extra) fine layer height to achieve better detail and fit.

⭐ Features

  • Multiple Fastener Types
    Generate ISO/DIN/UTS screws, nuts, and washers with precision.
  • Customizable Parameters
    Adjust screw length, head type, drive type, thread type, nut shape, washer size, chamfer, and more.
  • Precision Modeling
    Follows ISO 4017 (DIN 933) for screws, ISO 4032 (DIN 934) for nuts, and ISO 7089/7093 for washers, ensuring realistic and functional parts.
  • 3D Printing Ready
    Fine-tune undersizing, clearance, and resolution settings for perfect fits in 3D-printed assemblies.

This script is open source under a CC BY-NC-SA 4.0 license - free to use, modify, and share with proper credit. Built with BOSL2, ensuring clean, efficient OpenSCAD code. If you have GitHub, don't forget to star the repository!

 

🛠️ Changelog

v1.1
  • Added support for UTS screws (inch-based #4–1/2").
  • Included ANSI/ASME USS & SAE washers for UTS compatibility.
  • Added custom nut thickness option.
  • Added new head type 'ribbed socket'.
v1.2
  • Added option to split screws for increased strength when printing.
v1.3
  • Added support for partially threaded screws.
  • Added support for M14, M18, M20, 1/2" and 3/4".
  • Added support for M7 (special case - only exists as socket head screws and square/DIN hex nuts).
v1.4
  • Added debug mode to view model information.
  • Added parameters to control the bevel of the nut.

v1.5

(NEW)

  • Added support for M2.5, 5/16", 7/16" and 9/16".
  • Added new head type 'button'.
  • Ensure models displayed side-by-side can't overlap.

 

📜 Maker Scripts

Boost Me (for free)

Your support helps me create more Maker Scripts. Thank you!

Comment & Rating (274)

(0/5000)

Boosted
Really nice and useful. I plan to use it in an upcoming specialty vise project. One future enhancement: Allow for the nut height (thickness?) to be entered (this would allow creation of a "very long nut" that could quickly be embedded in a solid body).
The designer has replied
9
Reply
Hi @Nat1Craft , good idea, I will make sure to implement this. Thanks for the support - stay tuned!
(Edited)
4
Reply
@Nat1Craft Version 1.1 is now out! 🎉 This update introduces a custom thickness setting for even greater control, along with several other enhancements. Check out the changelog in the post for all the details.
7
Reply
Boosted
Replying to @koolm :
Awesomesauce! Will definitely use that.
1
Reply
This is such a good model maker. I've already used it a couple times. I love the new split thread feature. Do you have any plans to make a ACME type thread version by any chance?
The designer has replied
5
Reply
Hey @MadAussieMatt , I believe ACME threads are a type of trapezoidal thread commonly used for lead screws and power transmission rather than standard fasteners. These screws typically don’t have a drive slot or hex head like regular bolts, so they don’t quite fit within the scope of the Screw Generator. That said, if there's enough interest, I might consider a separate Lead Screw Generator in the future! Let me know what you think.
3
Reply
Replying to @koolm :
Yes you are correct, I have been working on a 3d printed lathe and was looking for that type of thread to move the carriage at a certain rate. It is difficult to produce in my cad program however. I would love to see a generator for lead screws but I fear it wouldn't be really popular for you to invest time into. If you do decide to go ahead with a customizer could you also consider a nut generator as part of it. Also I really like your split bolt update. I've actually tested a M10 and it seems to be a stronger option. Thanks for the reply, Keep up the great work!!
1
Reply
Replying to @MadAussieMatt :
That sounds like a cool project. I think I can make a Lead Screw Generator, but it might take some time as I’m currently finishing up another big project. Once that’s done, I’ll get to it. My goal is to build the ultimate MakerScript collection, so lead screws are definitely on the list. Stay tuned!
(Edited)
2
Reply
One of the best things I've come across here! Thank you. I know the library only goes to M16 but making custom nuts and washers for these 19mm switches.... Please?
The designer has replied
2
Reply
Hi @user_4279522777 , V1.3 has been released! 🚀 It now includes support up to M20, so you should be able to create nuts and washers for your 19mm switches.
3
Reply
Replying to @koolm :
Wow - that's some wild service!
1
Reply
Replying to @koolm :
UH.... LOL:
0
Reply
“Looking for a good screw?”
8
Reply
must be the name jordan. as I thought the same thing straight away lol
1
Reply
we all are...
0
Reply
Boosted
Hi, Fist, thanks for your time making the SCAD file. I have a question, when I open the SCAD file with OpenSCAD v2021.01 in MACOS Sequoia, I get the following error : "ERROR: Parser error: syntax error in file Screw Generator.scad, line 167" (see picture below). Can you tell me what is the problem ? Thanks in advance
The designer has replied
0
Reply
Hi @zahotha , you don't have to download OpenSCAD to use the generator. Simply go to this post on the MakerWorld website and click on the green "Customize" button (see attached image). Good luck!
1
Reply
Boosted
Replying to @koolm :
Thanks for the quick response, I tried few times to click on the button "Customize", but nothing happens
0
Reply
Boosted
Replying to @zahotha :
Finally I am able to make the customize button works, it was my browser configuration.
2
Reply
Print Profile
Phillips M5 Screw, Washer, and Nut
This is a truly exceptional creation
Show original
3
Reply
M5, coarse thread, split screw, ultra render. Took a bit of pursuading to start in the nut but it works well. This is an excellent tool.
3
Reply
Awesome
2
Reply
Excellent. just what was needed - single screw/nut/washer for mounting my quick disconnect Z probe on my LR 4 CNC router build. thank you. I had already installed and sent before taking a picture. so this is the special 42mm length #10 screw shown. Printed with X1C, .4 nz, .16mm layer, 20% infill and it worked just fine for my purpose using Bambu PLA
(Edited)
2
Reply
Print Profile
Phillips M4 Screw, Washer, and Nut
excelent, thx
2
Reply