For those times when you could really use a quick 3D model, this metric screw generator will do the trick for screws between M2 and M16 with matching nuts and washers. Fastener hardware is pretty accessible, but one never knows when a 3D printed piece will hit the spot. One might even be surprised what can be usefully printed on a decent 3D printer at something like 0.08 mm layer height.
Behind the scenes, [Jason]’s tool is an OpenSCAD script with a very slick web-based interface that allows easy customization of just about any element one might need to adjust, including fine-tuning the thread sizing. We’re fans of OpenSCAD here and appreciate what’s going on behind the scenes, but one doesn’t need to know anything about it to use the online tool.
Generated models can be downloaded as .3mf
or .stl
, but if you really need a CAD model you’re probably best off looking up a part and downloading the matching 3D model from a supplier like McMaster-Carr.
Prefer to just use the OpenSCAD script yourself, instead of the web interface? Select “Download STL/CAD Files” from the dropdown of the project page to download ScrewGenerator.scad
for local use, and you’re off to the races.
There’s also a rather useful looking gearwheel generator by Jason too
The tip of the generated screw seems wrong since it doesn’t fade into the main cylinder like usual screw does.
That’s a higbee, and it’s not wrong. In fact, it’s righter than a tapered start.
Hehehe I’ve been downloading McMaster-Carr files and converting to stl in my CAD. Viva Free Fusion360 for students. I’m forever a learner! ;)
Gosh. You wouldn’t download a car would you?
Or a policeman’s helmet?
Sure, if you have an SLS printer.
On eof my first demo 3D prints in PLA on a Flashforge was a nut and bolt, somewhere around M10/M12, it worked really nicely with very little slop and was a fidget toy for quite some time.
Can’t imagine it working down at M3 though
i love a good parametric model. but man this is exactly backwards to my personal practice of 3d printing!
i have models of the holes needed for screws, and the recesses needed for nuts, and the bevels needed for like flat head / flush screws. and when i first learned openscad, i started accumulating a bunch of these as reusable parametric modules, but i noticed, there’s nothing to it! hah – i think i have a file somewhere with “m3_screw_dia=3;” in it. the part i’m printing isn’t a complicated shape at all. so these days i use generic shapes and sometimes i just reach into my pile of parts and find and measure an appropriate screw as the last step before i print it.
i just think it’s absolutely crazy to 3d print the screw…what, are they 3d printing a screw to use with an off-the-shelf bracket??? i am a zillion times more likely to 3d print the bracket, and buy the screw at the hardware store.
I’ve seen two good uses for a 3d printed screws. First is for shear pins – seen it but haven’t used it. Second is for attaching other prints to a pegboard – a model I found has a short and wide screw that bites into the soft particle board.
heh pegboard sure is a great example of an off-the-shelf bracket you might want to put a 3d printed part on!
Your “personal practice” is apparently limited in scope. There are times when a nonconductive fastener is desirable. Why do you think people buy nylon screws??
it sure is! i can imagine why someone would buy a nylon screw, if it’s molded or milled from a single piece. i guess i don’t know if i could find that at my local hardware store? what i’m trying to imagine is why anyone would prefer a 3d printed one :)
Maybe for the same reason people print anything they can get elsewhere … maybe for something semi-custom or maybe just because they can. Why do people 3D print pencil holders or smart phone cases? In my case, if I already had the code I could probably print a screw in less time than it would take me to drive to the store and back.
I just wish the OoenSCAD folks would do an official download newer than 2021…
Who does releases these days? Just use the dev branch, it’s all good. Releasing takes too much time and who has time to make release notes. Read the tickets, you annoying user.
Like Google “being so in the front of” software dev, but can’t be arsed to put anything in their release notes. All they ever say is “this release contains bug fixes and performance improvements. Thanks, that’s useful.
Old, but this really triggered me.
“Who does releases these days?”
A ton of people, if we’re talking publicly distributed desktop software. CI/CD is awesome and an invaluable part of the dev process, and it seamlessly applies to websites and hosted services. However, for individuals running software on their own computer—and sharing files created in it with other users—it’s really preferable to have some “known stable” ones that are tagged with a version number. Speaking for OpenSCAD in particular, I use the nightly version, but when there 2 users with different results from the same script, it can turn into game of comparing OpenSCAD commit hashes to get a consistent environment. (And don’t get me started on side-effects from different non-versioned BOSL library builds! ha.)
I actually cloned the repo so that it’s easy to keep it up to date and to switch to a different commit, but I think most people just download the zip. So now, whenever I download an .SCAD file and it doesn’t immediately work or has lots of warnings, I go back and look at the date it was published and check out an OpenSCAD (and/or BOSL, if relevant) commit from around the same time. Of course, the dev branch is always guaranteed to build thanks to the CI/CD checks. Successful build aside, though, sometimes when I pull latest I’ll encounter API changes, new bugs, etc. They generally get fixed, of course, but without really investigating commit messages and/or diffs, it can be tough for a layperson to identify a “definitely good” recent commit to choose.
Also: “Releasing takes too much time and who has time to make release notes. Read the tickets, you annoying user.”
I assume you meant commit messages rather than tickets, but that aside: Releases can be made in a couple of minutes! On occasion, just pick a commit that everybody agrees is “safe” and give it a release number. Release (and commit) notes are easily and accurately auto-generated at the touch of a button these days, with more detail and better quality than 90% of human-written ones. But shit, even if that didn’t exist, I’d be okay with nearly no release notes—we just need to be able to easily standardize on versions.
Slight apologies for you getting picked as the target for this rant, as my gripe is really more about OpenSCAD’s practices than your comments—and I figured this was a good outlet to get them out and also share a bit about the latest devops trends like generated commit and release messages (which are gaining really wide adoption, because they’re amazing.)
for those who don’t know…the current dev openscad is like 10x-100x faster than the 2021 version that probably comes with your distro. and it’s kind of a nuissance to build from source.
really someone probably just needs to volunteer to maintain/update the debian package. there’s no reason they couldn’t distribute the new version.
Looks like a copy of ‘Nut Job’ published back in 2013 with a few script mods. Cool to release new stuff, but not mentioning original designs not cool.