Y Adapter filament switching
-
Ok, so I couldn't figure out why my single color s3d prints with firmware retracts looked fine, but my dual color prints had stringing and super blobby retraction points… but only on the retraction points before filament change. Going to software based retraction didn't fix that - it got rid of the blobs, but made the stringing worse.
Turns out, s3d does some odd things on tool change, particularly if you use z-hop with retraction. Before a tool change, s3d will trigger a Z-Hop without retraction.
See here: http://imgur.com/p4WAb1k
The line after the highlighted one is the hop, but there's no retract before it. That'll cause a string.
You can stop that by going to Firmware retraction, but I was getting strings with it with the titans - dc42's response to me about how firmware retraction works - it spreads out the z-hop speed so it takes the same time as the retraction - was the key. I have to do very short z-hops (0.1mm) or I get very blobby retraction points.
I think this is due to the extra hysteresis in the bowden from the Y adapter - it's hard to clear the pressure on it fast enough, and during a z-hop on retraction the filament oozes, causing a blob. Going to a very short z-hop takes care of that.
Of course, short z-hops cause other problems, like the nozzle dragging over curled parts. Solve one thing, cause another issue.
So, for now, I'm back to firmware retracts along with some pressure advance like this:
M207 S3 R-0.2 F1500 T1200 Z0.1 ; y adapter
M572 D0 S0.1
M572 D1 S0.1And it's yielding decent results.
-
So the dual filament switching is working pretty reliably (though if kraegar has any new tweaks I'd love to see them, particularly since I upgraded my Lite6 to a full E3D V6 so our setups are that much more identical). But I'm running into a problem when I try to run SINGLE filament that I'd like to see if anyone else has run into.
I use T0 exclusively for single-filament printing. When I cancel a print from Duet Web Control, something (not sure if it's the firmware or the web interface) releases T0. So to start a new print, I have to Select Tool T0 from the Heater 1 pulldown. When that happens, the tpost0.g file is run, which is a big problem since that script tries to feed 150mm of filament at high speed, when the filament is already loaded into the hotend.
So is there a way to make sure either:
- T0 is not released when a print is canceled, or
- tpostX.g is not run if the previous tool was TX
I think 1 is probably the cleanest answer since 2 might be the right thing to do in other use cases.
-
If you create a cancel.g file then that will be run when you cancel a print, and it won't release the current tool unless you put T-1 in it.
-
That was easy - thanks, David!
-
Hi Kraegar thanks for this info finally got around to trying swapping filaments, I am using ABS but your tfreeX and tpostX macros for the titan work, and I can swap filaments. Now its a case of trying to work out how using slic3r to generate a wipe and prime tower in order to print some two coloured objects or just some rough and ready method to incorporate a prime of some sort into the tpostx file. Otherwise I am going to have to grapple with a new slicer which I'm not sure I have the time to do.
-
I never found a good method for slic3r, and the last I knew prusa hadn't released his post processing script for adding a prime pillar yet. Cura does well for a lot of people, but I hit some weird oddities with it printing layers in the wrong order / swapping colors. Never figured it out, but it's probably the best free solution… though then you may hit bugs with absolute extrusion values, and switching to relative extrusion in the free/post scripts.
Currently I'm still using simplify 3d, as it's given me the best results. I haven't been dual color printing in a while, I was working on some printer changes, and now have a small backlog of prints to do. When I do get back to it, I have some things to try that might make switching even cleaner yet.
-
It's pretty easy to use one of the Duet tool change macros to move to a corner of the bed, dump some filament, then move back again. If you have something like an old toothbrush strategically placed at a fixed position relative to the nozzle in Z, it'll wipe off any ooze as well. Works best with fast non-print moves.
-
I played with that some with my delta, and it's one of the options I wanted to try - putting a "dump bucket" up high between two of the towers, so I could move up to it, switch filaments, purge a bit, and then move back. Has to be up high on a delta so the arms don't hit your print… or needs to follow along in Z as your print gets higher.
-
Ah yes - hadn't considered what you would do with a Delta.
-
I was thinking about just printing an ooze wall, purging some at the edge of the bed after a tool change, then coming back across the wall to wipe the nozzle. I tried bodging some gcode to print a tower but this won't work under all conditions such as layers which have only one colour etc..
Deltas do make it harder, I could devise a dump area but it would have to do some sort of relative move to lift away from the print, move towards the edge, descend to the dump area, then lift back up etc… to avoid collision with the print. It would be satisfying if I can work out the gcode to do it.
-
I think for a delta an absolute position move to a dump bucket near the max Z for a perimeter would be the ideal. it's a LOT of travel, though, and I'm sure you'd want an ooze shield.
Originally I was just purging and using an ooze shield. You get tons of buildup in a hurry, though, and eventually I'd always end up with filament on my part (usually stuck to the nozzle and then it sticks to the part)
-
Prusa must be putting multimaterial code into slic3r they are quite heavily invested in it, and their version is a massive improvement on the original.
-
His original post was that the prime tower was a post processing script, so it could work with any slicer.
-
Haven't got very far with it but one thing that has proved useful I have a filament cleaner above each extruder on my flying extruder bracket, with a bit of foam in each cup, and the foam gets lifted out of the cups on filament changes so I can see what the filament is doing, and which one is loaded by whether the foam is in the cup or 150mm above it. Silly but useful visual reference.
-
@kraegar Im just starting to get into my y splitter. Your scripts from your post from 15 march 17 are the latest right? Or did you optimize the process further
-
I haven't been doing any filament switching since those were updated. They should all work as starting points still, though.
-
Yeah, once I got my filament switching working and I printed a few things, I realized what an ENORMOUS amount of filament I was wasting in the prime tower, I stopped using it, too. Maybe at some point slicers will support using internal infill to purge color, but right now swapping every layer is just too wasteful for me to use.
-
I think multicolour printing is a novelty which with a switching system soon wears off, and takes 3 times the filament and 8 times the time to print (a mixing hot end seems to perform this function better). I can see the point of printing with soluble support material, but also think a second x carriage with independent z probe is probably the best way to achieve it.
-
The problem with multiple hotends is the XYZ calibration. It is not funny, and you have to do it again as soon a you swap nozzle or so.
Z can be automatically calibrated using piezo or similar probing system, but how to calibrate XY?
-
I think multicolour printing is a novelty which with a switching system soon wears off, and takes 3 times the filament and 8 times the time to print (a mixing hot end seems to perform this function better). I can see the point of printing with soluble support material, but also think a second x carriage with independent z probe is probably the best way to achieve it.
With a "mixing" hot end it is possible to print multi coloured objects with zero waste and zero impact on print time but with a few caveats. For one thing, as all the filaments are loaded at all times, the amount of purge required is basically what is in the mixing chamber. Depending on the object being printed, this purge can happen during infill where it isn't noticeable. Where it would be noticeable, then a separate purge mechanism is needed but due to the very small amount of purge needed (compared to fully retracting one filament and feeding in another), it can be a very small tower or simple bucket. The main advantages over multiple nozzles is that you don't loose axis travel by having to allow for nozzle offsets, you do not have to worry about Z alignment, there is no waiting time for one tool heat while another cools and you do not have to worry about fighting ooze from nozzles which aren't currently in use. Haven't said all that, mixing hot ends are not without their own particular set of unique problems. They are not for the faint hearted or those without deepish pockets (I'm thinking about my 5 E3D Titan extruders when I say that). Oh and of course, a true mixing hot end (one which actually blends colours together) is yet to be invented.