This is a 90mm wide (~70mm travel) level winding device utilizing three 4.5mm steel BBs in a ballscrew-style diamond-screw self-reversing configuration. There is the screw shaft (with 8mm axles for use with standard 608zz skate bearings) an inner and an outer nut as well as the base. tolerances on all pieces are quite tight, as this is a rotating mechanism, print and post process with that in mind.
Although I have found it to work quite well in testing, it IS possible, due to the design, for the nut to reverse direction before the end of travel, to "short stroke" as it were... If anyone has knowledge of how to prevent this from happening I'd love to know the secret!
check out the "experimental latching inner nut" I have not tested it extensively, but it seems to work =) It may require some filing to get the smoothest functionality while still latching the ball direction adequately. added a version of the latching nut with a flex/spring mount for the detent
There is a 3mm screw hole designed to hold the inner and outer nuts together, but I found the interference fit was tight enough that I didn't really need to use it. It's there if you need to though.
I've added public links to the Fusion 360 files for this project. check 'em out!
https://a360.co/2OATcrr <-- Support Frame
https://a360.co/2Oxupo8 <-- Main reversing screw and nut
3d Solutech PLA
The ball-track on the screw is a pain in the butt to remove support material from, this would be an ideal application for a dual-extruder and PVA or other soluble support filament. It is vital to the correct functioning of the reversing-screw that the track be as smooth and consistent as possible. Post process with care and it should work nicely! I got good results with three walls using a .4mm nozzle.
Just make sure the ball track in the screw body is as smooth and consistent as possible. some trimming and file work will almost definitely be required, unless you are making this with soluble support material (lucky you!)