It turns out the threads on broom handles aren’t any standard thread. I mean, look at that. Round! Who makes a round thread?
Apparently they are called "broom threads" or "knuckle threads"?
To make a broom nut in OpenSCAD, I first tried to linear_extrude a circle
with a twist of enough degrees to make the right thread pitch:
linear_extrude(length, twist = 360 * (length/thread_pitch))
translate([-id/2 + thread_width/2 - thread_depth, 0])
circle(d=thread_width);Obviously, that’s too sharp-edged. There’s no skew-type parameter on
rotate_extrude, so instead, I started by positioning spheres at small
intervals on the thread:
Then I wrapped adjacent spheres in hull to connect them.
The code is here.
A working broom nut:









