Respooler v0.1, Rewind your filament
prusaprinters
Double speed at :25Update 1 nov 2022: added a Python script for creating gcode for different spools. See the end of the description. I got my hands for a few weeks or so on a new printer with an automatic filament switcher (AMS). Great piece of kit, but the AMS only accepts rolls of max 70mm width. Since I have/had a bunch of rolls wider then 70mm and rewinding with a drill was not a big success I tried to make an automatic rewinder. Which a few old printer-parts, some scrap wood, some hardware that I had in stock, a crappy box for the electronics and these printed parts it is a reasonable success and I had a lot of fun of making it. If you don't have fun in building and tinkering things like this or expect too much of it, please skip it.The resulting spools are not perfect but sure good enough. The filament is already handled once before by spooling it on the original roll. Especially for bad coiled rolls the filament has already bends from that in it. The machine is not strong enough to unbend it (a good thing) and every bend is in the way of a perfect rewinding. But the result is good and often better then the original winding.The model is build modular, so you can experiment with the placement of the different parts. Or integrate your own parts. It is a pretty archaic machine, so enough to tinker and update :)You can create a simpler handcrancked version with the parts to begin with.Is this machine too simple for you, take a look at the machine+ created by Warpster. Frame:I made the frame of a piece of scrap wood. You need three pieces, 1 piece of ca. 45 x 12 cm and 2 pieces of 22.5 x 12 cm. I used 11 cm width because that was laying around, a cm more is better. The Motorbox:Parts:Respool_motorbox1.stp/stl, 2 partsrespool_gears_24_48.stp/stl, 2 parts (D & E)1 x nema17 steppermotor (A), the bigger the better1 x Coupler 5-8mm (B)3 x Bearings 22-8 mm (608ZZ)M8 nuts (see description)4x m3 bolts 20-22 mm for the nema 178x M4 x 30 mm bolts, m4 nuts and optional rings (or 4xM4 and 4 wood screws).m3 bolts and nuts for connecting gears (see description)1 x threaded rod M8 ca. 60mm1 x threaded rod M8 ca. 200mmIn the picture (D & E) you can see i drilled a hole through the axis (threaded rod) to fasten the gears. In that case you need 2 x 20-25mm M3 bolts and locking nuts. You can also use the holes in the gears for grub- screws (less secure, filing a flat spot on the rod will help).The 4 M8-nuts (nuts and locking nuts) in the picture inside the box, well you can use them or not. If you drilled through the rod, and the placement of the gears has not to much play, you don't need them (I was to lazy to remove them). You can also use “nylon-insert lock nut” or Loctite. The Nut at F is secured by the nut in the spoolfastener. To be sure use a “nylon-insert lock nut” or an extra nut for locking or loctite. If a double nut get loose it can lock itself against the wall or bearing, wich will end up in a crash. So be sure they are tight or don't use them.The two axis must run freely.the motor is first mounted to the spacer (G) with M3x20-22, and the spacer is bolted to the box (m4x30) The Handcranckbox:Parts (* this part is optional if you are building an motorized version):Respool_handcrankbox1.stp/stl, 4 parts, 3 for the cranck*, 1x box*respool_gears_24_48.stp/stl, 2 parts (D & E)4*x or 2x Bearings 22-8 mm (608ZZ)4x* or 2x M8 nuts (B, C) or 2*/1 locknuts1 x m8 nut (F)4x M4 x 30 mm bolts, m4 nuts and optional rings or 4 wood screws.*m3 bolts and nuts for connecting gears (see description)*1 x threaded rod M8 ca. 80mm (J)1 x threaded rod M8 ca. 200mm (G)In short for the motorized version you only need the long rod, 2 bearings, 2 M8-nuts or 1 locknut and the printed box .For the handcrancked version you need al the parts. You can build the “machine” with a handcranck at each side, or with one handcranck. in last case you can skip the same parts as the motorized version for the second box.Building it is pretty much the same as described in the motorbox-section.The Slider:Only for the motorized version Parts:Respool_Slider1.stp/stl, 5-8 parts1 Nema17 stepper-motor2 m3x162 m3 x12grubscrew (short m3)3 m4x12-162 woodscrewsPTFE tube, 4mm outside, 10cm or so Mount the Nema17-motor to the mount (green) and the holder for the rack (yellow). Slide in the rack (red) and attach the gear to the motor. Use for the grubcrew (s) a small as possible m3. Be sure that one of them is on the flat side of the motor axis (if it have one). Also be sure the gear runs freely. Secure the rack (red) for sliding off with the m4 to the middle of the holder (yellow). The rack must be able to slide freely from left to right.There are 4 filament-guides (brown) in the file of different heights (in steps of +10mm), you obviously need only one. You can choose the right height for your contraption. They all use the same screws (m4). Put a piece of 4mm PTFE-tube (10cm or so) through the guide, long end facing the source-roll. You can screw in a m4-bolt in the middle. It is there to add some friction or tension to the filament. Screw the m3 in until you feel the inserted filament going less smoothly. Adjust it to your liking. The rack (red) and mount (green) must be printed with support. Removing the support from the rack is probably not that easy, but it is doable. Use the print-positions as suggested in the STL.Spoolfasteners:Parts:respool_spoollfasteners1.stp/stl, 2 of the big ones and 4 of the smaller ones8x M8 nut2x M8 ring (bigger the better)optional: LoctiteInsert a nut in each printed part (e).Tighten nut A manual to the ring, and loose it ½ or hole turn back. Preferably: Use Loctite if you have it, or use a “nylon-insert lock nut”.Hold nut A in position with a wrench (13mm) and tighten part B really tight to nut A. Test if the axis still runs freely. Part B is there to stay.Part C is to lock and tighten the spool, and part D is there to lock part C. C and D must be removable of course.Optional: Tension wheelParts:Respool_Tensionwheel1.stp/stl, 3 partsM5x30 bolt with Hex-head (A)M5x20 bolt (B)M5 wingnut or a knob whit nut2 woodscrewsV-slot wheel (like on most printers today)This part gives some friction to the source-spool. Let it turn more even and give some tension to the filament. After placing the source-spool firmly, release the wingnut (A), position and press the wheel to the spool and tie the wingnut (A). Test how well the spool turns, if it still runs to freely you can tighten up the screw/axis (B) to give more friction. the spool must run quite easy but have to stop almost immediately after you stop spinning. The part for the wheel is best printed (with support) with side B down. So you can turn the screw (B) without cracking it.It works more or less, but maybe you have a better idea. There is a lot of room in the box for the spool box to add some extra parts… Optional: extrasxtra_bearing_replacement.stl: if you don't have (all) the needed bearings laying around, you can use these printed replacements.xtra_crappyfeet1.stl: when fully mounted the contraption can be a little tippy to the motor-side. You can use these feet to make it more stable. As in the name they are a little crappy.Spoolring3.scad: If you don't have fitting spools for your purpose, you can made them yourself with an old spool cut in two parts and this spoolring. You need the free program Openscad to make the ring. If you don't have it, you can download it from openscad.org. It is a fun program if you are in to it. More info about it at https://www.printables.com/model/287506-resize-your-spool-with-a-simple-ring-and-some-sweaElectronics and Firmware:I am using an old 8-bit board from a scrapped printer. I didn't change the Marlin-firmware (yet) but used the one that was on it for the printer. Which works for now. I connect the machine to the PC and run the (free and pretty old) program Pronterface. But every program that can send G-code should work (I think).The motor for the spool is connected to the Extruder-driver, the one for the slider to the X-driver. To get understandable units to set, you have to change the E-steps for both motors (M92 X?? E???). In my case I have to set the slider motor (X) from 80 to 48 for units in mm. And the Spool motor is set from 400 to 640 to get a value of 10 for each rotation. You have to finetune it your self. On most printer-firmware the extruder motor refuses when the extrusion-temp is under a certain value. You have to set that value to 0 (M302 S0)The Gcode for a 60mm spool I used is added (Test1_60.gcode, check it!) where the e-steps and temp are set in the Gcode at the start. You can also store them to your board (M500). The number of windings and the width of the spool can be finetuned in the gcode. In the added gcode, the slider travels 58 mm while doing 33 rotations or windings (G1 X58 E330, 1 rotation is 10 so 33). You can play with those two values to get better results.When you are attaching a screen to the machine, you definitely have to change the firmware to make use of the features that a screen offers (stop, pause etc). The buffersize setting back from 16 lines of code to 1 or 2 will be necessary I think to make the pause and stop useable. Also the Gcode has to be more detailed (as in more lines for the windings , as G1 X1.8 E10 F30 for 1 winding). Otherwise pausing etc will not work properly.How to run from Pronterface:Well that is up to you, but here is described how I do it. disconnect the machine from power and USB (not really necessary but acts also as a reset)Place the two spoolsOptional, set the tension wheelLead the filament through the guide and check and set the friction with the middle screw of the guide)Connect it to the receiving spool and wind it manually for 5 windings.Align the filament with the spool at the start-position 0 (the added gcode will travel 8 mm or 5 windings first).Connect the machine to USB and power.Connect-button in Pronterface to connect to the machineLoad and start the G-code in Pronterface. Babysit the first “layer”Let it runIf it crashes for what reason, disconnect the machine, wind it back to 5 first windings, reset the slider to its start-position and restart the process (after you solved the reason for the crash). Be aware that the spool-motor functions as a dynamo when winding back and can blow up older boards. So disconnecting the spool-motor is not a bad idea. Creating Gcode for different spoolsizes:Different spools need different gcode to operate. To make this easy, a python3 script has been added that generates gcode based on user input.In addition to this input, the gcode is also based on standard settings for the machine. These are at the beginning of the script and can be easily modified. PY files are easy to edit in e.g. notepad (++). If you don't know python, just change the values after the = signs and don't touch it further apart from saving.The script has been clarified as much as possible with notes, hopefully that helps if you want to make adjustments. Like Python, English isn't my first language, so both can be a bit clunky. You have the option to add a start gcode to the final script (see the attached example). This start code should be named "start_gcode.txt" and must be placed in the same folder as the script. You can specify the e-steps for the motor in it if needed. See electronics and firmware.Save the gcode at the end, you can check it first by scrolling up. Don't be alarmed by the same lines over and over, that's correct.If you don't know how python works and runs, please google it or ask your nephew :) If you have other questions, ask them in the comments and i will try to answer them (no guarantee).Happy respooling :)The machine+ of Warpster: https://www.printables.com/model/303944-automatic-filament-rewinderThe gears are created with the work of Janssen86, https://www.thingiverse.com/janssen86/designsThe blue screencase in the picture is from Mightynozzle: https://www.thingiverse.com/thing:2813298
With this file you will be able to print Respooler v0.1, Rewind your filament with your 3D printer. Click on the button and save the file on your computer to work, edit or customize your design. You can also find more 3D designs for printers on Respooler v0.1, Rewind your filament.