SOLVED Simple Switch to "Home" Filament
So I looked around as much as I could, but couldn't find anyone else using a filament sensor in quite the same setup that I intend to, so I wanted to ask a couple questions about what will and won't work.
I've been working on a filament auto-load/switch setup for my printer. It's very similar to the Prusa MMU2, but I'm only using 2 motors (for now (; ). My printer is direct drive, but there is a bowden tube running from the filament selector to the extruder drive which is maybe 300-400mm long. When I perform a filament swap, the loaded filament will be driven all the way back to the filament selector, the selector will slide to the next filament position, and the new filament will be loaded to the extruder. I need a way to detect that filament has been driven all the way to the hotend, or all the way to the selector (depending on whether the load or unload procedure is carried out). I'd like to just use micro switches to do this (one within 50mm or so of the extruder, and another within 25mm of the selector). Can I essentially home the filament position like a normal axis? Tell it to reverse the filament up to 500mm, or until a switch is triggered? I would also like to use the switches as filament out sensors if it's possible to set this all up.
Apologies for any poor explaining! If any clarification is needed please let me know.
Thank you in advanced!
I should also note that I'd like to use this as a way to run multi-color prints, so everything needs to be able to run within the tool free/pre/post/ macros
Danal last edited by Danal
home the filament position like a normal axis? Tell it to reverse the filament up to 500mm, or until a switch is triggered?
Yes. The firmware has no idea what is physically moving. It is just running that motor, until the endstop logic pin goes high (or low or whatever is configured). Furthermore with "home_.g" files and similar, all directions and which stop (hi or low) are fully under your control to mix and match.
Danal last edited by
Have you considered using extruder stall detection? I use it for running the filament into the Bowden tube and stopping when it reaches the hot end. I use reduced motor current during this operation to make sure that the extruder drive doesn't grind the filament.
@dc42 I hadn’t, but that’s a good idea. Then I would only need a single switch or sensor on the low end of the filament path.
I’m thinking of implementing an inductive sensor as my switch on the low end as well, in a very similar implementation to Prusa’s MMU2
@dc42 Something I just thought of - why not use the rotating magnet filament sensor for this? I could place it in the bowden path between the selector and my extruder (much closer to the selector) and use that to monitor whether the commanded retraction to the selector matched the actual distance traveled by the filament. I would then only need the single sensor - no switches or combinations of switches with other sensing techniques. That would also allow me to monitor filament feed issues during a print.