Startup script for dual extrusion



  • I am struggling setting up a convenient script for dual extrusion.
    I want to have a stream lined process to speed up the preparation time.
    So far with Marlin I had a sequence like this:

    • heat bed WITHOUT waiting

    • heat extruders to 180° C WITHOUT waiting

    • do homing

    • move head to prime position

    • wait for bed to reach target temperature

    • set both extruders to target temperature WITHOUT waiting

    • wait for extruder 1 to reach target temperature

    • wait for extruder 2 to reach target temperature

    This worked pretty well because when the waits for extruder 1 and 2 were executed the temperature were nearly at the target temp. But I am not able to get the same behaviour with the Duet…

    Start heating the bed and continue works but then I have issues finding a sequence to heat both hotends.
    I changed my heating commands to G10 commands setting working and standby temperatures but I am missing a command to set both hotends to their standby temp without selecting and deselecting them. Doing so slows the process down because in my tpostX.g scripts I wait for the temp to stabilize which is nice if you use different temperature for active and standby.
    Also one hot end is at its standby temp while the other is still cold and heating up which is not ideal.

    Is there a way to heat up both hotends to their standby temp without selecting them and so trigger the wait in the script?


  • administrators

    It sounds to me that we could do with a means to move tools directly from off to standby without selecting them first. In the mean time, here is a possible approach:

    1. Use G10 to set both temperatures (or at least the active temperatures) to 0 for both tools.
    2. Select first one tool, then the other, then neither (T0, T1, T-1). Because the temperatures are 0, there will be no waiting for them to heat up.
    3. Use G10 to set the temperatures you actually want for both tools. Both will then heat to the standby temperature simultaneously.

    Alternatively, create a single tool that use both heaters. Then either set its active temperature to what you want and select it (if you don;t mind it waiting until both heaters reach their active temperatures), or set its active temperatures to 0 as before and then select and deselect it.



  • I tried the second approach with the tool for both heaters as I had that already setup for copy printing.
    Didn't work yet, had some issues with the carriages crashing the case, still analysing where I did something wrong.

    But I second the requirements peridot pointed out in https://www.duet3d.com/forum/thread.php?id=427

    I was used to control the temperature differently in Marlin just with M104 and M109 (M140 and M190 for the bed) with special commands for waiting for heat up (S parameter) and waiting for cooldowns too (R paramter). That way it was pretty straight forward.

    But I also like the Duet way of doing this stuff and I like the macro chain you can execute when switching tools. This is great for mid print and the actiave and standby temps are also a great feature, you don't have to deal in the slicer with that kind of stuff that way, but I want to have more control on startup…



  • Ok this does not work as intended I think.
    I am on the latest firmware 1.16.
    My config does not select a tool so both are inactive after start up. In addition I have T-1 at the very start of my script.
    Then I do:
    G10 P0 R180 S0 ;
    G10 P1 R180 S0 ;
    T2
    T-1
    But nothing happened.
    I used the console on the WebIF and on the PanelDue, using the G10 command set the standby temps but sending T2 clears them…



  • Really strange, after that sequence all temperatures show 0 but when I do T0 or T1 the standby temp comes back to 180.
    Switching to T2 sets all to 0 again…


  • administrators

    @Alex9779:

    Ok this does not work as intended I think.
    I am on the latest firmware 1.16.
    My config does not select a tool so both are inactive after start up. In addition I have T-1 at the very start of my script.
    Then I do:
    G10 P0 R180 S0 ;
    G10 P1 R180 S0 ;
    T2
    T-1
    But nothing happened.
    I used the console on the WebIF and on the PanelDue, using the G10 command set the standby temps but sending T2 clears them…

    Nothing happened because you set the standby temps for tool 0 and 1, then switched a different tool (2) to standby. Try this instead:

    G10 P2 R180:180 S0:0
    T2
    T-1



  • Pfff my fault…
    Extruder, heater, motor, drive... all a bit confusing 😉


Locked
 

Looks like your connection to Duet3D was lost, please wait while we try to reconnect.