Guided Filament Winder

by ianjohnson, published

Guided Filament Winder by ianjohnson May 7, 2013


This is a filament winder to go with a home extruder like the Filastruder. The filament drops into a loop and comes back up to the winder. At the bottom are a pair of photo resistors and a laser which monitor the position of the loop and speed up or slow down the winder so it stays in sync with the extruder. The filament is pulled up with a pinch roller based on the Minimalistic Extruder, then runs over a spring loaded arm.

The arm is mounted on a potentiometer, and its position depends on how tight the spool is pulling the filament. Using the reading of the potentiometer, the spool speeds up or slows down as needed to maintain the arm's position, and therefore tension.

On the way to the spool, the filament passes through a guide arm which is attached to a servo. Hall effect sensors detect the rotation of the spool and move the guide over the space of 1 filament diameter so the filament gets coiled evenly across the spool.

The spool mount is a PVC pipe with bearings inside supported on a threaded rod, with a gear on the end. The spool itself is made from 2 printed ends fitted into a 2" PVC pipe, so it would be easy to make spools as needed. The spool simply slides onto the mount and mates with some bolts sticking out of the side of the gear.

The winder is powered by an Arduino Uno with a half breadboard, mounted in this bracket - thingiverse.com/thing:32838. Eventually I want to replace the breadboard with a custom shield.

Here are some videos of the winder at various stages-


Recent Comments

view all

Any plans to post the STL's for your V2 winder?

hi all
could you post the schematics and connections for the servo motor please there is only the file .ino in the zip files .and we don't know
how connect it on on arduino
thanks and great jobs

It's in the zip file.

More from 3D Printer Accessories

view more

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


The instructions are too involved for Thingiverse, so I am posting them at my blog, starting with wp.me/p2BWKW-9q. Most of the files are here, and are mostly current, but a couple still need to change and be added. I don't have a detailed BOM down to size and quantity of the bolts, but there should be enough there to get you started. I will host the files here and update them, and keep posting about the build at the blog. Files and instructions are works in progress so I recommend following both.

File Name




You must be logged in to post a comment.

datasmasher on Oct 27, 2013 said:

Any plans to post the STL's for your V2 winder?

fas83 on Sep 1, 2013 said:

hi all
could you post the schematics and connections for the servo motor please there is only the file .ino in the zip files .and we don't know
how connect it on on arduino
thanks and great jobs

WWC on Aug 5, 2013 said:

Your winder and extruder are really great and i plan to build them.
Did you post your code as well for the winder, i have looked for it and not see it.
If it there sorry i have missed it.

ianjohnson on Aug 5, 2013 said:

It's in the zip file.

JRD on Jul 25, 2013 said:

Do you have an STL for the front control panel?

ianjohnson on Jul 29, 2013 said:

I don't have an STL, exactly. I made an initial bracket to hold a couple of potentiometers, but then started drilling into it as I tried out different pots, encoders, buttons. I need to make something more like an actual control box, but the design is going to depend on what buttons you end up using. The L-shaped bracket thing is simple enough to design, depending on what buttons you picked for it.

JRD on Jul 22, 2013 said:

Is there any particular reason the nut recesses depth in the puller are only a third of the thickness of the nut that's supposed to go there? The nuts stick out and interferes with the motor gearbox.

ianjohnson on Jul 23, 2013 said:

I trimmed the thickness of puller, but forgot to adjust the depth of the nut traps. There is a fixed one now, Puller v4.

datasmasher on Jul 6, 2013 said:

Can you explain why you used two hall effect sensors instead of one? Trying to understand if I can get away with one

ianjohnson on Jul 7, 2013 said:

The sensor gets polled quickly enough that after a rotation is detected, the sensor would be checked again and another rotation counted before the magnet has had the time to move out of range. With two sensors, a new rotation won't be noted unless both sensors have been triggered since the last rotation. You can get by with one sensor if you just make it wait long enough for the magnet to move away before it starts checking again. That can take a little time if the spool is moving very slowly due to being full. I'd like to be able to use the winder to wind up coils or transfer between spools and in those cases you might want to spin it very fast by hand or with a drill. In that case the delay before rechecking might be slow enough to miss a rotation at high speed.

I don't know what the minimum delay between checks would need to be to accomodate the slowest likely rotation of the spool, and if that would be long enough to miss a single rotation at high speed. With two sensors, it doesn't matter how fast or slow the spool is running,

datasmasher on Jul 5, 2013 said:

I don't see the swing arm you are using for the spool winder gear (the small one). Is that posted somewhere?

ianjohnson on Jul 5, 2013 said:

It's the motor arm from Lyman's winder - http://www.thingiverse.com/dow.... I guess that would make this a derivative, but it's the only part I kept.

ianjohnson on May 28, 2013 said:

I uploaded Pullerv3. This has mounting holes for both a 37mm gear motor and NEMA17. This will let you use any direct drive extruder made to bolt onto a NEMA17 stepper with the gearmotor. I was having trouble with the Minimalistic Extruder, because the filament kept slipping off of the bearing. I switched to the Mk3 Solidoodle extruder, which has better filament guidance- http://www.thingiverse.com/thi...

tomasgarlat on May 25, 2013 said:

Great project! Will try to make it when I get my filastruder

tshephard on May 12, 2013 said:

Great work as always, Ian. Your blog is fantastic.

ianjohnson on May 9, 2013 said:

I added the STLs for the tension arm and replaced the puller file. The original puller was meant to go with a mount to hold a switch for adjusting tension, which I replaced with the spring loaded arm.

ianjohnson on May 8, 2013 said:

If you aren't using a filament extruder, you could leave off the photo sensors and tension thing, and just spin the spool with a finger while you use the other hand to keep some tension on the incoming filament. I'd like to add some kind of counter to it so I can measure out my short ends to see if they will be enough for a particular print. Or you could leave it automated to spool up a coil, in which case you would want faster motors.

PropellerScience on May 8, 2013 said:

I need a winder for with my snaggy spools of filament

MasterBor on May 8, 2013 said:

Great project !

jpearce on May 8, 2013 said:

Beautiful piece of work - thank you!

2n2r5 on May 7, 2013 said:

I was just reading this on your blog while checking out one of your How-to's. I like the sensor that you put inline to monitor speed. Looking forward to the kick-starter.

On a side note, thanks for your blog. It has really helped get me started properly with 3D printing.

CidVilas on May 7, 2013 said:

Excellent work! I really like the idea and design. This would be great to renew life into all those empty spools! Save money on filament by buying without spools, then spool them using this system. Nice. No need to produce all that waste. Also, of course, a great companion to the Filastruder. :)