Fully parametric & fully printable spool spindle and frame.

by mhohensee, published

Fully parametric & fully printable spool spindle and frame. by mhohensee Nov 26, 2012

Thing Info

7383Views 1930Downloads Found in 3D Printer Accessories
Report Thing


The only things you'll need are cable ties, bearings, and maybe some M8 hardware. Supports 1kg spools with no trouble.

My first spool holder was a clip-on 608 bearing based roller-mount (see www.thingiverse.com/thing:16338), which worked great with the solid plastic Ultimachine filament spools. Since then, I've switched to using PLA filament from printbl.com, which is great stuff, but comes in cardboard-sided spools. The cardboard tended to get jammed between the roller-bearings and the clip, and to occasionally drop little shreds of itself onto prints in progress. This made me sad.

I looked around for a fully printable spool holder, but I couldn't find one that didn't at least use some kind of extrusion or threaded-rod framework. Rather than waste a couple of days for McMaster to fill an order for threaded rod, I spent a couple of weeks designing what I think is a pretty decent example of a fully printable, parametric spool mount. Pieces are locked together with cable ties.

Everything is printable, excepting the two 608 bearings --unless your printer is good enough that its prints self-lubricate. Clearances are accounted for parametrically, so you should be able to assemble the parts straight from the printer without additional finishing. To make life easier (as I have), don't print screws and bolts, but just use three M8 bolts, four washers, and five M8 nuts to assemble the spindle.

The spindle is optimized for the spools sold by printbl.com. These spools' inner diameters seem to vary a bit, so I had to make the spindle's size adjustable. See the instructions for how to do so. Since the design is fully parametric, you can change the spindle diameter, cable-tie dimensions, type of bearing, mounting hardware, and overall size as you like.

In the course of making this spool-mount, I also developed a fairly general library for building other kinds of fully printable frames, see cabletie_brackets.scad. The bracket mounts and rods are very flexible. You can not only choose the size of the box (bracket-section) that each rod might plug into, but also the angle between successive sections. The library takes care of adjusting the length of the rods as a function of what kind of bracket they are meant to plug into. This lets you specify an arbitrary polygon by placing brackets such that their centers of curvature define its vertexes, and the necessary connecting rods in terms of the vertex-to-vertex distance, rather than manually correct for the displacement of the bracket's socket. When run, openscad scripts will tell you how long your rods will need to be to satisfy your geometric requirements. I've included some demonstrations of the library in .stl format so you can see what I mean. The demo files (and assembly.stl, for that matter) are not intended to be sliced and printed --you need to print their parts separately.


The included openscad file has tolerance settings for a printer with a 0.25mm nozzle, and a 0.2mm layer height, using Slic3r v0.9.5. I've found that setting clearance=0.3 works well for me. The included .stls use clearance=0.3.

You will need a lot of (at least 16) cable ties (assumed to be about 3.55mm in width, and 1.2mm in thickness), and then to print:

2x bearingbracket608.stl
4x lowerbracket.stl
8x rod.stl
2x halfspindle.stl (printbl.com spools seem to vary from 32mm to 34mm ID, which extends over about 4 cm.)

Assemble as shown in assembly.stl. Rods are secured into brackets after insertion by threading the available holes with cable ties as shown in the photos. To unlock them for diassembly, simply cut the cable ties and unthread them.

To assemble the spindle (see assembly.stl and the pictures), you will need:

2x 608 skate bearings
3x M8 hex-headed bolts (cut one to half-length)
4x M8 washers (with diameter assumed to be 15.79mm. Dimensions can be changed in the bracket_bearing_mount module)
5x M8 nuts

Place one nut into the center nut-trap of one of the halfspindles, seat the sawn-off bolt in the other, and screw the two halves together until they fit snugly inside your spool. Pull the halfspindles apart, seat M8 nuts in the two remaining traps, and put them back together. Try to keep the new nuts centered along the axis of the spindle.

Place a 608 bearing into each bearing mount, run the M8 bolts through them, and secure them with M8 nuts. From the outside of the frame, the order should be: M8 bolt head - washer - 608 bearing - washer - M8 nut. Don't fully tighten them until the bolts are screwed into the spindle enough that the whole assembly is square. The spool turns slowly, so these can be left finger-tight in any case.

I've printed the brackets and bearing mounts with one outer perimeter and two solid layers top and bottom, with 30% infill. The rods need to be stiffer --use between two and four shells, and 40-60% infill. Most of the rods' stiffness seems to come from the shells, so you may be able to cut the infill if you need to.

More from 3D Printer Accessories

view more

Thing Info

7383Views 1930Downloads Found in 3D Printer Accessories
Report Thing


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

All Apps

This extension connects Thingiverse with Makeprintable, a cloud-based mesh repair service that analyzes, validates and repairs most common mesh errors that can occur when preparing a 3D design file...

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

For those wanting to make this: you can use M8 50mm screws for the long ones and an M8 20mm screw for the short one. And, don't buy Nyloc nuts (doah - what was I thinking?!)

Great idea.

I printed the halfspindle.stl but it was WAY too big to fit my Printbl spools (34mm ID). The bracket itself was 32mm wide. Was that expected?

Slic3r was also unhappy with the lowerbracket.stl not being manifold. You could run these through NetFabb.

Weird that slic3r complained. I printed my very own copy of the .stl I uploaded using slic3r without a peep of concern. What version are you using?

Ok I spoke to the author of Repetier. He said that this is normally caused by a model which has critical points (i.e., you've done a subtraction in openscad where the subtracted shape doesn't exceed the other shape on outer surfaces). This causes problems due to the floating point math used in the stl. Rounding errors can cause the critical surface to be non-manifold. The interesting thing is that a shape where the rounding error doesn't cause problems in one position, can be translated (e.g., to the middle of the target print bed co-ordinates) and all of a sudden the critical point rounding errors cause them to become non-manifold.

Looking at the open scad file, I can see a few potential problem areas where a small delta might need to be added to the length or height of the shape you are subtracted but I haven't had the time to play with it yet.

I've definitely run into that kind of round off error before, but I hadn't thought that it would typically appear and disappear under translation --although now that you've pointed it out, it's not too surprising that it does happen.

It probably has something to do with the horizontal cable tie paths for the vertical sockets in the lowerbracket.stl. I construct the wedge-like roof via the union of a triangular peg and a rectangular one, and the way I generate them is a bit ugly. I'll take a look at them at some point, although you're welcome to beat me to it. :-)

Apparently the key is that in OpenSCAD when you generate the GCAL it should to say "Simple: yes". The "Thrown together" view can also help identify critical points.

Latest 0.98 - it was actually halfspindle.stl which had the fault not lower bracket. Having said that, I can't see any error when I load it in Slic3r directly but if I load it in Repetier-Host (which uses Slic3r) then it reports an error. Weird. I don't know if its just that I'm not seeing the error or that Repetier-Host is mangling the object. I'll investigate further.

Made one for my Mendel, left it to print a 2 hour print!
I just printed an extra rod and used that to mount the spool, works great but probably needs a slightly larger rod to mount the spool, but all I needed was the printed parts and a few cable ties - nothing else.

I hadn't thought that one of the spindly little framing rods would be strong enough to serve as the spindle itself. What's your infill? Did you scale one up a bit? :-)