Multiple extruders, the overview



  • OK, rebuilt but still half finished printer produced it's first part:

    alt text
    Not 100% there yet and need to give it a couple more tries to hone it in, but it is coming together nicely.
    Sorry for the offtopic-ness, I am just happy and could not resist.

    Now for the questions. I used to be a Slic3r person, but I had my share of issues with vanilla Slic3r such as skirts printing underneath the object and sometimes endless slicing times. The PE edition is becoming more and more geared towards the Prusa printers so not a viable longterm solution either. Thus, I switched to Cura 4.3. So far it does what I want it to do and features like gradual infill worked well to prevent pillowing for the object posted above. I think I will keep Cura.

    Now, single extrusion is easy enough and the slicer arranges basically everything. But I have two direct-drive extruders (Bondtech BMG-X2 + E3D Chimera) and a combined layer cooling fan. And I have a little trouble seeing the overview of which part of the software stack does what when changing tools, what 'concepts' to implement and multiextrusion in general. I searched around, but I am still missing the general overview. Probably I should just start doing and learn by failure, but still.

    Please forgive me these 'babies first steps' questions.

    • Extruder 0 is (0,0), location of the probe and other extruders are relative to this one. I can define an offset in the slicer, and with a G10 in the firmware. I prefer to have the firmware handle that. But what am I supposed to tell the slicer? Second nozzle at (0,0) too?

    • Active/standby temperatures. Probably not too handy to do that in the tpre[x].g file since filament loaded per extruder changes based on the job at hand. So I suppose Cura should not emit M104 but emit G10 Px Ryy Szz for all filaments in the project, or a G10 Ryy Szz after a toolchange, right? How do I tell Cura to do that instead of Mxxx?

    • Inactive extruder retraction. Does one normally only retract a small amount and let the extruder cool down far enough, or is it better to move filament all the way up into the cold zone and keep moving it a few seconds to prevent jamming?

    • Would it not be better to use separate tool numbers for each filament type+extruder number combination? The amount of sensible combinations is fairly low. This way I could handle all physical parameters in the tpre/post/free macros. Not only standby/active temperatures, but once I start playing with pressure advance I can imagine that TPU requires different pressure advance values than ABS for example. Priming distances are different between filaments too.
      If this is indeed the holy grail, how do I tell Cura to only emit Tx for material X and nothing else?

    • I think I prefer a silicone 'basket' somewhere to catch the ooze from a deactivated extruder and the priming output from a just-activated extruder. I can implement the move-to-basket/change temps/wipe nozzles over the silicone edge in macros, but that would be a fixed location each time. I imagine that if the 'basket' is parallel to the X axis one might want to do the wiping at a slightly different X location each time to avoid picking up debris from the previous change. How do I do that on the Duet 2 Wifi? Can I use variables in G-code like I can in LinuxCNC?

    • If I do the basket thing, do I still need prime towers, purge blocks, whatever? Probably not, but I thought I would ask, just in case.



  • I'm still only using one extruder, but what I can say is this: if you already know Slic3r, then the Prusa Slicer is far from "only geared towards the Prusa printers".

    I've been using Cura exclusively for several years, but recently got bored with the fact that the materials settings and print profiles don't really work in any useful way if you have a custom printer. I'm sure they work fine if you have an Ultimaker.

    So, having previously found Slic3r to be unpredictable, to say the least, it was with some trepidation that I downloaded Prusa Slicer...

    It turned out that my fears were misplaced. The latest 2.1.0 version is very good indeed! The Print, Filament and Printer settings mesh together logically and efficiently. You absolutely don't need a Prusa printer to take advantage of the settings system. My printer is a big CoreXY with a Mosquito hot end and BMG extruder. It's working very nicely with my printer and producing some great prints.

    I particularly like the volumetric speed limit; it's great for ensuring that you don't accidentally break the speed limit on touchy filaments like Colorfabb's PA-CF.

    In contrast to Cura, Prusa Slicer doesn't roll over and die every time my machine gets an update for the MESA OpenGL libraries. If it carries on pleasing me like it has done over the last month or so, I may be removing Cura from my computer and switching to it permanently.



  • @DaBit said in Multiple extruders, the overview:

    But I have two direct-drive extruders (Bondtech BMG-X2 + E3D Chimera) and a combined layer cooling fan

    To answer your questions, need to know: Are they side by side on one carriage? Or is there a toolchanger?



  • They are side-by-side:

    alt text

    alt text

    When I bought the Chimera I thought 'It is from E3D so it must be good and just work, right?'. Well, general consensus seems to be different, but I will see how bad it really is. Worst case I must make one of the nozzles move up and down 0,25mm or so. With a bowden cable and a solenoid that should not be too hard to implement.

    I made an error with the location of the build platform; it is shifted too far back so the extruder nozzles can travel beyond the edge of the platform. I could remake the steel plate that forms the build platform, but I can also use that 'overtravel' to faciliate a waste bucket/wipe strip where I can dump ooze and prime filament. To be honest I did not come up with that idea myself, I saw it on @deckingman 's blog.
    I could even locate a cooling facility to quickly cool down the just deactivated nozzle. A jet of compressed air located at the top of the heater block removes heat quite quickly and it can be done while wiping.

    Regarding Slic3rPE/PrusaSlicer: if all this turns out to be easier with that slicer I will give it another try.



  • @DaBit That's a very compact extruder installation. Having recently fitted 6 BMGs (and two Duet expansion boards) to a carriage, I know how difficult that can be. My very first printer was a RepRap Pro Mendel which I soon upgraded to the tri-colour version which had 3 nozzles. I was never very happy with it and changed it to use a 3 in 1 out Diamond which solves some of the problems but introduces a few more. You'll find the rubbing strip/purge "bucket" comes in useful. Wishing you the very best.


  • administrators

    @DaBit said in Multiple extruders, the overview:

    Can I use variables in G-code like I can in LinuxCNC?

    Not yet but it's on the wish list.

    Would it not be better to use separate tool numbers for each filament type+extruder number combination? The amount of sensible combinations is fairly low. This way I could handle all physical parameters in the tpre/post/free macros.

    This is a way to do it. Another way would be a macro for each combination. Finally you can look at the filaments support which allows you to have macros that you call depending on the filament used. (@wilriker can explain better I think)

    Inactive extruder retraction. Does one normally only retract a small amount and let the extruder cool down far enough, or is it better to move filament all the way up into the cold zone and keep moving it a few seconds to prevent jamming?

    On a MMU or similar setup the filament is extracted all the way out the extruder, in your case you don't need to do this and you will still get some ooze if you don't cool down the inactive hotend because there is liquid filament that is not retracted. I suggest reading @deckingman 's blog to see about different filament types and the effects of "cooking" them for long periods in a hotend



  • @deckingman said in Multiple extruders, the overview:

    @DaBit That's a very compact extruder installation.

    It is standard Bondtech BMG-X2 paired with E3D Chimera though. Fell in love with the X2 the moment I saw it.
    Personally I think it is still large. Path from extruder drive wheels to nozzle is still 80-100mm or so. My previous homebuilt hotend was much, much more compact with 40mm or so between drive wheels and nozzle output.
    (some pictures here: https://cnczone.nl/viewtopic.php?p=158047#p158047)
    The Bondtech QR driving the thing was a lot larger though.

    I was never very happy with it and changed it to use a 3 in 1 out Diamond which solves some of the problems but introduces a few more. You'll find the rubbing strip/purge "bucket" comes in useful. Wishing you the very best.

    My main reason for 2 extruders is soluble support. I get nightmares from removing support on TPU parts, and supports printed in TPU are not that great either.
    I bought a roll of Spoolworks Scaffold for the 'soluble/breakaway' part of the equation. Based on datasheets it seems that the printing temperature (215C) is not that far off from the regular engineering plastics. These two might work in a mixing hotend if one pushes a bit of filament through for both inputs on each layer and tool change?

    @T3P3Tony said in Multiple extruders, the overview:

    Not yet but it's on the wish list.

    Count me in on the wish list 😀

    This is a way to do it. Another way would be a macro for each combination.

    A macro would be nice too. I will see how I can make Cura emit the M98 for the filament.

    On a MMU or similar setup the filament is extracted all the way out the extruder, in your case you don't need to do this

    I intend to cool the inactive hotend. Which raises another question: can I do something like:
    while (toolTemperature < standby) {
    M98 P"wipe_nozzles"
    }

    I suggest reading @deckingman 's blog to see about different filament types and the effects of "cooking" them for long periods in a hotend

    I read that, and it seems especially worse with PVA/PVOH plastics. Which is why I wondered if cooling down the nozzle a little and then retracting all the way to the cold end before the filament solidifies would be better.


Log in to reply