Standby temperature definition in dual extruder



  • Hi!

    My printer is clogging in dual extrusion.
    My printer is a rebuilt Leapfrog Creatr with duet2 wifi and V6 style extruder with direct dualdrive, 1.75 mm filament.
    I think the reason is a too high standby temperature for PLA, 195-205C. In Cura 4.5 I configured the standby temperatue for both PLA filaments to be 150 degrees. The gcode gives at the beginning:
    T0
    M190 S60
    M104 S205
    M104 T1 S150
    M109 S205
    M109 T1 S150

    Ok, but soon comes for my surprise
    T1
    M109 S205
    M104 T0 S195
    or
    T0
    M109 S195
    M104 T1 S195

    Could this be the reason for clogging? The extruder 1 is cloggin , the second is not. their standby temperature difference seems to be 10 degrees(205,195)

    Also when printing with single extruder PETG filament with Titan Aero this happens after 1h printing.
    (Cooling is ok printing temperature 250C, no filament cooling)



  • Hi @Pertti !

    I use PrusaSlic3r to send only the commands T0, T1, T2....
    And in config g I define the active & Standby temperature using de G10 command G10 command to define Active & Standby temperature

    I don't know how to work with Cura because I don't use it. In PrusaSlicer, after defining the beaviour of the printer as RepRap, in the Gcode apears T0, T1 .... and the duet adjust the temperatures depending on the parameters you used in the G10 command to define the tool's temperatures.

    This works fine for me with different tools.

    Hope it helps



  • Temperatures.JPG
    Ok, I put in config.g next lines:
    ; Tools
    M563 P0 D0 H1 F0 ; define tool 0
    G10 P0 X0 Y0 Z0 ; set tool 0 axis offsets
    G10 P1 R140 S0 ; set initial tool 0 active and standby temperatures

    M563 P1 D1 H2 F0 ; define tool 1
    G10 P1 X0 Y0 Z0 ; set tool 1 axis offsets
    G10 P2 R140 ; set initial tool 1 active and standby temperatures
    Heater 1 is my problem. Heater 2 reacts somehow.



  • it is a very strange graph showing the temperature followed by the second extruder.
    The hot bed (blue) is correct and stable as well as the first extruder (red), it is the second extruder (green) which has a very erratic graph. I imagine you made the right tuning using the M303: Run heater tuning command on the second extruder as well



  • @Pertti said in Standby temperature definition in dual extruder:

    Ok, I put in config.g next lines:
    ; Tools
    M563 P0 D0 H1 F0 ; define tool 0
    G10 P0 X0 Y0 Z0 ; set tool 0 axis offsets
    G10 P1 R140 S0 ; set initial tool 0 active and standby temperatures

    M563 P1 D1 H2 F0 ; define tool 1
    G10 P1 X0 Y0 Z0 ; set tool 1 axis offsets
    G10 P2 R140 ; set initial tool 1 active and standby temperatures
    Heater 1 is my problem. Heater 2 reacts somehow.

    This line "G10 P1 R140 S0" sets the active temperature for tool 1 to zero and the standby temperature to 140.

    This line "G10 P2 R140" sets the standby temperature for tool 2 to 140 but doesn't set the active temperature to anything. Most importantly - you don't have a tool 2 defined so that command won't do anything and may show an error. Neither of those lines set the temperatures for tool 0.

    Try putting this in you slicer start code

    G10 P0 R140 Snn (where nn is the active temperature you want to use) for tool 0 - the fist tool
    G10 P1 R140 Snn for tool 1 - the second tool

    Then you don't need the slicer to set the active and standby temperatures. Remember to put the following in your slicer end code to turn return the active and standby temperature to zero
    G10 P0 S0 R0
    G10 P1 S0 R0



  • @Pertti

    See if variations occur when there is a layer change. There are many slicers that in the layer change send the temperature values for the extruders. It seems that the temperature variation seen in the graph is between 140ºC (which are the ones you have defined in the G10 command) and 195ºC which are the ones that Cura must send to each layer change.



  • Temperatures2.JPG
    I changed slicer start and end codes. Heater fault occured two times.
    It´s getting wild.



  • @Pertti Those sudden temperature excursions for heater 2 look like a faulty thermistor or wiring. The actual temperature can't possibly change that fast.



  • Yes wiring was the reason. I changed hotends ant thermistors. Still I can´t control the standby temperature.



  • @Pertti said in Standby temperature definition in dual extruder:

    .............. Still I can´t control the standby temperature.

    Glad you sorted the wiring issue. What are you doing now to set standby temperatures? Are you using G10 S and R?



  • Hi and thank´s for help.
    Here´s my printer settings in Cura:

    G28 ;Home
    G1 Z15.0 F6000 ;Move the platform down 15mm
    ;Prime the extruder

    Start Gcode:
    G10 P0 R140 S205
    G10 P1 R140 S205
    G92 E0
    G1 F200 E3
    G92 E0

    End gcode:
    M104 S0
    M140 S0
    ;Retract the filament
    G10 P0 S0 R140
    G10 P1 S0 R140
    G92 E1
    G1 E-1 F300
    G28 X0 Y0
    M84



  • @Pertti OK, that looks like it should work - it's more or less what I uses except that I have 6 extruders and 9 tools, not just 2.

    Now what commands does Cura put in the gcode file when you change from one tool to another? What we want to happen is that there is simply a T0 or T1 and nothing else. We don't want to see any M104 or M109 commands. I'm not familiar with Cura so I can't advise on what you need to do to handle tool changes.



  • I've been checking, and I don't see Cura generating anything extra. No 104/109.

    Edit: I just checked again, and Cura definately DOES insert M104s and 109s throughout. In my prior looks, everything was set to the same temps, so it didn't have to change anything. If temps are different, it does insert the commands.

    Here is a typical sequence. Comments are mine.

    G1 X155.94 Y152.636 E0.00106
    G1 X155.942 Y152.58 E0.0014
    G0 F5400 X156.175 Y152.748
    G1 F1200 E-16
    G1 F600 Z1.45
    T0                             ; Mount T0
    M109 S200                      ; Set T0 to 200, and wait for that temp. 
    M104 T1 S175                   ; Set old tool to 175
    G1 F1200 E9.5
    G1 F600 Z0.45
    ;MESH:twoColor1_2_7_10_53.stl
    G0 F5400 X152.093 Y128.068
    M104 S210                      ; Set current tool, T0, to 210.  Do not wait. 
    ;TYPE:WALL-INNER
    G1 F1500 E6.5
    G1 F3300 X152.289 Y128.172 E0.00553
    G1 X152.276 Y128.217 E0.00117
    G1 X152.267 Y128.246 E0.00076
    


  • @Danal said in Standby temperature definition in dual extruder:

    ........... I'm curious why we don't want to see 104/109. I

    Oh, because we are just trying to use G10 to set the active and standby temperatures for dual extruders, rather than the slicer. So to prevent any "interference", it'll be better if the slicer simply puts T"n" commands in the gcode file, and the firmware will take care of setting the tool temperatures and switching them between active and standby. The OP was struggling to get Cura to set the standby temperatures, hence the alternative G10 approach but that's not to say that it couldn't be done in Cura - not familiar with it so we don't know how.



  • Yeah, there is a "no right answer" to speeding up toolchange by pre-heating tools. Who should place the "raise yourself from standby" in advance of the actual mount. Slicer? Firmware via "look ahead"? Not sure. Today, the firmware does not do it. (to my knowledge).

    I am aware that Cura does it, and of some scripts that can do it for any slicer. I don't have a real strong feeling as to which "should" do it, other than the look-ahead could be quite a large number of lines... and that could eventually get weird in the firmware.



  • @Danal Can that temperature sequence that Cura uses be changed? It looks like the "old" tool is held at print temperature while the new tool is heating up (M109) and only after the new tool has reached active temperature, is the old tool set to standby temperature. It would be better if the M104 "set (standby) temperature but don't wait" came before the M109 "set (active) temperature and wait" command.



  • @Danal said in Standby temperature definition in dual extruder:

    Yeah, there is a "no right answer" to speeding up toolchange by pre-heating tools. Who should place the "raise yourself from standby" in advance of the actual mount. Slicer? Firmware via "look ahead"? Not sure. Today, the firmware does not do it. (to my knowledge). ............

    AFAIK too, there is no look ahead feature in the firmware but I think it's on DC42s list of things to look into.

    I do know that David thinks it's about time slicers caught up and started using G10 to set active and standby temperatures but (to the best of my knowledge), none of them do. Using G10 is much simpler because you simply set the desired active and standby temperatures for each of the tools at the start of a print, then all you have to do is switch between tools with Tn commands - no need to use M104 and 109s to set different temperatures for each tool every time you change between them.



  • Yeah, I thought that was odd as well. Let me look and see how much control we have. Ultimately... it is open source!

    Also, if we don't want Cura to do this at all, just set standby = printing.

    
    

    Also, just to be clear, Cura has no concept of 'standby' as Duet understands it, meaning two temperatures for the same tool. Cura simply sets 'the' temperature at the appropriate points in time, to either 'printing temperature' or 'standby temperature', these being specified in the GUI... but the difference between the two is when they get set, in terms of 'just mounted' vs. 'just parked' a tool. Don't know that this makes any real difference. Just a fact about how it works.

    In fact, I just realized Cura is not 'pre' heating... it is doing it all at mount time. Therefore, I believe at this time, I know of only one script that 'pre' heats.



  • @deckingman said in Standby temperature definition in dual extruder:

    Using G10 is much simpler because you simply set the desired active and standby temperatures for each of the tools at the start of a print, then all you have to do is switch between tools with Tn commands - no need to use M104 and 109s to set different temperatures for each tool every time you change between them.

    Exactly.

    Today, Cura doesn't seem to know about this. We could "override" by putting G10s in the start gcode, and setting Cura printing = Cura standby.



  • @deckingman Cura might be trying to pull off some timing tricks with the temperature of the extruder.

    I'm experimenting with this type of feature in IceSL, it's quite neat. It will set the standby temp of the parked extruder to a value that will allow just the right amount of time for it to warm back up in time. Sometimes, that's not far from active temp. But if the tool is only parked for 20 seconds, that makes sense.

    I haven't tested it in real prints yet, I'm just figuring it out and implementing it into the printer profile right now, but it's configurable via the slicer GUI with a rate of heating/cooling.


Log in to reply