Jump to content

Fixed dual extruders make a mess


zet

Recommended Posts

Posted · Fixed dual extruders make a mess

Hello. I have been using Cura for over 3 years now but for the first time I now have a dual extruder system. What a disaster...

1. When other extruder is waiting to heat to printing temperature both heads are hovering over the print oozing on it and melting it

2. If I set "Standby temperature" = "Printing temperature" there is still some delay while both heads are sitting still over the print melting it but more importantly after 2-3 layers my printer halts with "Heater error" message.

 

I have carefully reviewed all Cura setting having anything to do with dual head printing but failed to find one allowing to move heads away from the model while heating.

Neither was I able to find out why keeping both heads at printing T results in error.

 

Any ideas?

 

  • Link to post
    Share on other sites

    Posted · Fixed dual extruders make a mess
    14 hours ago, zet said:

    I have carefully reviewed all Cura setting having anything to do with dual head printing but failed to find one allowing to move heads away from the model while heating.

     

    If the firmware of the printer does not handle this, there are extruder (start/end) scripts in Cura that are intended to be used for these "extra stuff" that shall happen on every tool change.

    Is it a custom printer or do you use one of the pre-defined multi-extruder configurations in Cura?

    Extruder scripts can be created and edited in Cura machine settings (AFAIK).

     

  • Link to post
    Share on other sites

    Posted · Fixed dual extruders make a mess

    It's a custom coreXY machine, Hypercube style

     

    You mean "Extruder Start/End G-code" ? I wonder how to do this efficiently enough. If I add some code to move extruders away from the model while heating between tool change, it will make printing time quite a bit longer.

     

    Ideally I'd like inactive extruder to reach printing T right in time, while the other head is printing.

    It seems like Cura is actually trying something of that sort but very poorly. While printing I see some strange target T for inactive head, not defined anywhere in settings. For example standby T 200, printing T 240, octoprint shows target 215.

    But the result is always the same, extruder will stop about 5mm over the model for anywhere between 5 to 30 second, oozing and melting everything.

     

  • Link to post
    Share on other sites

    Posted · Fixed dual extruders make a mess
    11 hours ago, zet said:

    Ideally I'd like inactive extruder to reach printing T right in time, while the other head is printing.

    It seems like Cura is actually trying something of that sort

     

    Yes, actually that's the key feature of Cura for multi-extruder prints. It works great, but....:

    For a custom machine you have to find the correct values for the following settings first (by experiment):

    • "Heat Up Speed"
    • "Cool Down Speed"
    • "Minimal Time Standby Temperature"
    • "Initial Printing Temperature"
    • "Final Printing Temperature"
    • "Extrusion Cool Down Speed Modifier"

    That's what Ultimaker provides for their own printers with the "quality" profiles for each supported material.

     

    The inactive nozzle will probably always ooze a bit while (re-)heating (depending on the used hardware of course). I would try to fight it with longer tool change retractions and proper primetower/ooze shield settings.

     

  • Link to post
    Share on other sites

    Posted · Fixed dual extruders make a mess
    Quote
    • "Heat Up Speed"
    • "Cool Down Speed"
    • "Minimal Time Standby Temperature"
    • "Initial Printing Temperature"
    • "Final Printing Temperature"
    • "Extrusion Cool Down Speed Modifier"

    Thanks you. I am currently on Cura 4.7.1 

    I wasn't able to find Heat up and Cool down speed settings. Will try and play with the others.

     

    On a separate note, can you please explain what is meant by "bridge wall" and "bridge skin" ?

    And if there a setting allowing to make sure bridges are printed across the shortest distance? I have attached a model I am trying to slice, you'll see what I mean.

     

    dual fan duct.stl

  • Link to post
    Share on other sites

    Posted · Fixed dual extruders make a mess
    3 hours ago, zet said:

    And if there a setting allowing to make sure bridges are printed across the shortest distance?

     

    I have no clue...

    I may be wrong but I don't think it's possible to control this with a setting.

  • Link to post
    Share on other sites

    Posted · Fixed dual extruders make a mess

    Yet another question

    In my case 2 nozzles are 25mm apart and both can reach every point of the bed.

    If I specify Nozzle 1 offset as 0 and nozzle 2 at -25mm Cura shows 25mm of left side for 1 and 25mm on the right for 2 as unreachable.

    What is nozzle offset supposed to be relative to ?

  • Link to post
    Share on other sites

    Posted · Fixed dual extruders make a mess

    I am also unable to find "Heat Up Speed" or "Cool Down Speed" anywhere in Cura. I was able to set all four material temps (Print, Initial, Final, and Standby) the same with no errors and it did fix my delays, but I wanted to start printing PLA as support for PETG without it gumming up the nozzle. I ended up with a workaround in Marlin that is working for me.

     

    First, I autotuned my PID settings following this guide, which helps them get up to temp and stabilize faster. Next, since I was still experiencing delays, I changed TEMP_RESIDENCY_TIME to 0 seconds in Marlin (the default is 10). This makes it not wait for temps to stabilize - it starts going as soon as it's within TEMP_WINDOW (which defaults to 1°C).

     

    I still experience a short delay every 5-10 extruder changes, so I plan to increase the TEMP_WINDOW to 5°C or so. The delay is caused by the temp overshooting and Marlin waiting for it to get back to the window from the other side. I figure since Cura doesn't see any problem starting and ending extrusion 10°-15°C under temp, a measly 5°C of overshoot isn't worth waiting around for.

     

    Its not like temps are stable after waiting anyway, since Cura starts at the Initial temp but immediately sets the Print temp, which causes a 5°C overshoot (on my printer at least) 20-30 seconds into the layer. This means even if we could tune "Heat Up Speed" and "Cool Down Speed" and everything were working as it should, there'd still be a 20°C range where Cura is allowed to extrude plastic: 5° from the overshoot after going from Initial to Print, and 15° (by default) from Print to Final, plus maybe even more overshoot the other way if it doesn't finish printing in time.

     

    As for nozzle offset, I have mine configured in Marlin under HOTEND_OFFSET_X (and Y or Z). All hotend offsets should be relative to the first one, just as you have it. By configuring it in Marlin, they're in the same spot from Cura's perspective. When I execute a T0 or T1, the carriage automatically moves to position the new extruder where the old one was.

     

    Last thing - if you want to change where it pauses to wait for temps, I'm pretty sure it always does it over the prime tower when it's enabled.

  • Link to post
    Share on other sites

    Posted · Fixed dual extruders make a mess

    It turns out that TEMP_RESIDENCY_TIME must be higher than 1 for TEMP_WINDOW to have any effect, so 1 second is the minimum delay for each extruder change. That's not too bad, especially since Cura only switches extruders every other layer.

  • Link to post
    Share on other sites

    Posted · Fixed dual extruders make a mess

    Thanks, I never set my offsets in Marlin thinking it will be easer to make small adjustments in Cura rather than re-compiling the firmware. Now that I have finally settled on the offsets I'll transfer them.

     

    Quote

    I'm pretty sure it always does it over the prime tower when it's enabled.

    Unfortunately no. It hangs over the print

  • Link to post
    Share on other sites

    Posted (edited) · Fixed dual extruders make a mess

    Hmmm, I'm not sure why it is pausing there to wait for temps. I have learned a few things about Cura though since my last post that may help with your other issues. I started putting my offsets in Cura instead of Marlin so I could take advantage of the 'Wipe Inactive Nozzle on Prime Tower' setting, which only works if Cura knows your nozzle offsets, but then also ran into the problem of unreachable bed areas. The trick is to create your own machine profile, the documentation for which can be found here:

     

    Adding new machine profiles to Cura

    Definition Files Explained

     

    I just picked one of the examples that was close and added a few key settings:

     

    [profilename].def.json:

    {
      ...
      "metadata": {
        ...
        "nozzle_offsetting_for_disallowed_areas": false,
        ...
      },
      "overrides": {
        ...
        "machine_nozzle_heat_up_speed":   { "default_value": 1.75 },
        "machine_nozzle_cool_down_speed": { "default_value": 0.5  },
        ...
      }
    }

     

    '"nozzle_offsetting_for_disallowed_areas": false' makes the whole bed reachable to either extruder, as explained here and here.

     

    The other two settings effectively solved all my heating and cooling delays. The units are in °C/s, as specified here.

    Edited by neurozero
    Backticks disappear instead of changing text to monospace
  • Link to post
    Share on other sites

    Posted · Fixed dual extruders make a mess
    On 12/29/2020 at 12:19 AM, neurozero said:

    'Wipe Inactive Nozzle on Prime Tower'

    That is weird. If Cura can correctly position nozzles for dual printing why would it not position it for wiping ? As long as Marlin is aware of the offsets that should work. Sounds like a bug in Cura?

     

    On 12/29/2020 at 12:19 AM, neurozero said:

    "nozzle_offsetting_for_disallowed_areas": false,

     

     Well, in fact there is a small strip of around 4mm on the far right that my primary nozzle can't reach. If this is the only way I guess the only solution is to try and avoid it while placing a model.

  • Link to post
    Share on other sites

    Posted · Fixed dual extruders make a mess
    On 1/9/2021 at 6:48 AM, zet said:

    That is weird. If Cura can correctly position nozzles for dual printing why would it not position it for wiping ? As long as Marlin is aware of the offsets that should work. Sounds like a bug in Cura?

    Oh, I guess I should have mentioned I also set my Marlin nozzle offsets to 0 - they should be managed in only one place.

     

    Before, when they were set in Marlin and Cura was set to 0, Cura could have tried to wipe the inactive nozzle, but would have instead wiped the active nozzle since it thought they were in the same spot. It could theoretically still wipe the inactive nozzle in this situation by telling the printer to switch nozzles with the T0 or T1 g-code, performing the wipe, then telling it to switch back. I think that sequence would actually work regardless of where the offsets are managed. Both Marlin and Cura would attempt to move the carriage by their respective offsets, and the one that is set to 0 would simply have a 0 length move. Cura doesn't do this though; it only sends T[n] commands before the prime tower when switching the active nozzle, which is why I needed to set my offsets in Cura instead of Marlin.

  • Link to post
    Share on other sites

    Posted (edited) · Fixed dual extruders make a mess

    Here is how I got rid of the pre-heating of the inactive extruder that oozes all over the place.

     

    I am working with a Custom printer def (TAZ 6 dual) and find dual extruder printing with Cura 4.8 not usable out of the box with a number of bugs. On top I use Ninjaflex as one material - challenging and deemed as experimental by Ultimaker (not supported) in relation to dual extruder printing.

     

    1. I uncommented Cura's temperature commands with extensions, post processing, modify gcode, search and replace, and added two of these:


    M104 T1 replaced with ;M104 T1
    M104 T0 replaced with ;M104 T0

     

    This disables Cura temperature handling, so you need to add some yourself in extruder end scripts.

     

    2. In Machine settings, manage printers, extruder 1 end-script I added: 

     

    M109 R{material_standby_temperature, 0} T0 ; EndGcodeT0
    M109 R{material_print_temperature, 1} T1 ; EndGcodeT0

     

    for extruder 2 end-script add:

     

    M109 R{material_standby_temperature, 1} T1 ; EndGcodeT1
    M109 R{material_print_temperature, 0} T0 ; EndGcodeT1

     

    This waits for lowering the temperature on the finishing extruder before raising the temperature on the starting extruder. You should also add where this happens outside the printed model, and I am still experimenting with placing the (de-)heating extruder on the prime tower tube. 

     

    3. To be sure start and end script temperature handling is not affected by the scripts, I made sure M104 commands had T0 and T1 at the end instead ex.:


    M104 S170 T0
    M104 S0 T1

     

    The above also is a work-around for one of the dual printing bugs, where built in temperature handling for one of the extruders slowly let the temperature slide over time and stop handling it mid way.

    Edited by jlund
  • Link to post
    Share on other sites

    Create an account or sign in to comment

    You need to be a member in order to leave a comment

    Create an account

    Sign up for a new account in our community. It's easy!

    Register a new account

    Sign in

    Already have an account? Sign in here.

    Sign In Now
    • Our picks

      • UltiMaker Cura 5.7 stable released
        Cura 5.7 is here and it brings a handy new workflow improvement when using Thingiverse and Cura together, as well as additional capabilities for Method series printers, and a powerful way of sharing print settings using new printer-agnostic project files! Read on to find out about all of these improvements and more. 
         
          • Like
        • 26 replies
      • S-Line Firmware 8.3.0 was released Nov. 20th on the "Latest" firmware branch.
        (Sorry, was out of office when this released)

        This update is for...
        All UltiMaker S series  
        New features
         
        Temperature status. During print preparation, the temperatures of the print cores and build plate will be shown on the display. This gives a better indication of the progress and remaining wait time. Save log files in paused state. It is now possible to save the printer's log files to USB if the currently active print job is paused. Previously, the Dump logs to USB option was only enabled if the printer was in idle state. Confirm print removal via Digital Factory. If the printer is connected to the Digital Factory, it is now possible to confirm the removal of a previous print job via the Digital Factory interface. This is useful in situations where the build plate is clear, but the operator forgot to select Confirm removal on the printer’s display. Visit this page for more information about this feature.
          • Like
        • 0 replies
    ×
    ×
    • Create New...