Duet3D Logo

    Duet3D

    • Register
    • Login
    • Search
    • Categories
    • Tags
    • Documentation
    • Order

    Dual Extrusion Newbie

    General Discussion
    3
    9
    1525
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • pcsentinel
      pcsentinel last edited by

      Hi I have just gone Dual Extrusion with a pair of the new E3D Titans, can I have any guidance re get the heads to the right temps at the right time. If I just run the print then Tool 1 heats up, then tool 2 heats up but tool 1 starts cooling down. If I intervene manually before the print and set both tools to 190 deg for both active and standby then the print works, but I would prefer this info to come from the slicer. Also for some reason only the tool 2 part cooling fan came on and I had to manually set the tool1 part cooling fan.

      1 Reply Last reply Reply Quote 0
      • deckingman
        deckingman last edited by

        I'm assuming that you have separate hot ends for each of your extruders and that you are not using a mixing hot end. In which case, you are on the right lines with active and standby temperatures but if you want the slicer to do it, then you need to put those commends in the slicer start gcode. It is usual to set standby temperature lower than active to prevent filament oozing from the unused nozzle. Of course, you then have to wait for the unused one to come up to active temperature. You could also consider using the tpre, tpost and tfree macros to get the behaviour you want. Ref part cooling fans, can you post the relevant section of your config.g.

        Ian
        https://somei3deas.wordpress.com/
        https://www.youtube.com/@deckingman

        1 Reply Last reply Reply Quote 0
        • pcsentinel
          pcsentinel last edited by

          Hi, yes dual extruders as per http://www.thingiverse.com/thing:2240611, Tool 1 fan on normal printing comes on fine.

          ; Tools
          M563 P0 D0 H1 F1; Define tool 0
          G10 P0 X-24 Y0 Z0 ; Set tool 0 axis offsets
          G10 P0 R0 S0 ; Set initial tool 0 active and standby temperatures to 0C

          M563 P1 D1 H2 F2; Define tool 1
          G10 P1 X21.04 Y-0.8 Z0 ; Set tool 1 axis offsets
          G10 P1 R0 S0 ; Set initial tool 1 active and standby temperatures to 0C

          ; Fans
          M106 P1 S0 I0 F500 H-1 ; Set fan 1 value, Extruder 1 Part Fan. PWM signal inversion and frequency. Thermostatic control is turned off
          M106 P2 S0 I0 F500 H-1 ; Set fan 2 value, Extruder 2 Part Fan. PWM signal inversion and frequency. Thermostatic control is turned off
          M106 P0 S1 I0 F500 H2 T45 ; Set fan 0 value, Extruder 2 Fan. PWM signal inversion and frequency. Thermostatic control is turned on

          1 Reply Last reply Reply Quote 0
          • deckingman
            deckingman last edited by

            OK. A couple of things. You are referring to your tools as tool 1 and tool 2, yet they are defined as tool 0 and tool 1. that is to say, by default Duet start the tool numbering at 0. This can often catch people out, as many slicers will start the tool numbering at 1 so you kind of have to remember that tool 1 it the slicer is tool 0. You can use the S1 parameter in M563 which will effectively add one to the toll numbers for the Duet.

            However, that may not be the reason for the second part cooling fan not coming on. You have mapped Fan 1 to Fan 0 in your first M563, then you have mapped Fan 2 to Fan 0 in your second M563. I'm not sure but I suspect that the second command overwrites the first. If so, then I think the only way around it would be to use F1:2 for both Tool 0 and Tool 1. This would map both fans to fan 0. The downside is that both part cooling fans would run regardless of which tool is selected but I don't think there is any way around it. (DC42 will know for sure).

            HTH

            Ian

            Ian
            https://somei3deas.wordpress.com/
            https://www.youtube.com/@deckingman

            1 Reply Last reply Reply Quote 0
            • pcsentinel
              pcsentinel last edited by

              I found an inelegant solution for the extruder temp by modifying the start gcode in the slicer to:
              G28 XY ; home all axes
              G90 ; use absolute coordinates
              G21 ; set units to millimeters
              G92 E0
              M82 ; use absolute distances for extrusion
              G10 P1 R190 S190
              G10 P0 R190 S190
              M572 D0 S0.025; Pressure advance
              M572 D1 S0.025; Pressure advance

              The temps are added via slicer variables, it works, as in both extruders heat at the same time, but one starts before the other because of some other gcodes that are added by the slicer, but at least I don't get one heating, while the other cools.

              The fans are more of a problem, the slicer only sends an M106 S127 (50%) and doesn't include the fan number variable. so the only thing I can do is as you say set both fans for both tools, but its not ideal. particularly as I have the extruder head fan set to thermal so it doesn't come on unless in use.

              The tool numbers work fine as 0 and 1 as that's what the slicer sends.

              I've got the tech support looking at the issue so maybe they will come back with something.

              1 Reply Last reply Reply Quote 0
              • dc42
                dc42 administrators last edited by

                @deckingman:

                You are referring to your tools as tool 1 and tool 2, yet they are defined as tool 0 and tool 1. that is to say, by default Duet start the tool numbering at 0. This can often catch people out, as many slicers will start the tool numbering at 1 so you kind of have to remember that tool 1 it the slicer is tool 0. You can use the S1 parameter in M563 which will effectively add one to the toll numbers for the Duet.

                Ian, can you name any slicers that assume tool numbering starts from 1?

                The standard for RRF was originally that tool numbers started from 1, and tool 0 was the empty tool. But the common slicers were numbering tools from 0. So the recommended configuration was changed to number tools from 0 and use T-1 to deselect all tools.

                Duet WiFi hardware designer and firmware engineer
                Please do not ask me for Duet support via PM or email, use the forum
                http://www.escher3d.com, https://miscsolutions.wordpress.com

                1 Reply Last reply Reply Quote 0
                • deckingman
                  deckingman last edited by

                  @dc42:

                  Ian, can you name any slicers that assume tool numbering starts from 1?

                  The standard for RRF was originally that tool numbers started from 1, and tool 0 was the empty tool. But the common slicers were numbering tools from 0. So the recommended configuration was changed to number tools from 0 and use T-1 to deselect all tools.

                  Hi David,

                  Yes Slic3r and Prusa variants thereof. If you have a multi-part object and want to assign different tools to each part, say tools 0, 1 and 2 you have to use extruders 1, 2, and 3. However, I can see how we might be talking at cross purposes because the generated gcode file will have the correct tool number - i.e. 0, 1 and 2. That is to say, that "internally" Slicr3r considers them to be tools 1, 2 and 3 but in the external output, these tool numbers are decremented by 1 giving 0, 1 and 2.

                  As the OP was referring to tools 1 and 2 and not knowing what slicer behaviour he had, I put forward the proposition that tool numbering might be an explanation for his switching problems. Obviously this is not the case and although he refers to them as tools 1 and 2, the gcode file must in fact have T0 and T1 commands.

                  I do however think that as a self confessed duel extruder newbie, it would be advisable for the OP to get used to referring to them as tools 0 and 1 because this is what the gcode file must contain and this is how Duet works.

                  Hope that clarifies my previous post.

                  Ian

                  Ian
                  https://somei3deas.wordpress.com/
                  https://www.youtube.com/@deckingman

                  1 Reply Last reply Reply Quote 0
                  • pcsentinel
                    pcsentinel last edited by

                    Hi DC42, I am still having some issues with this, I have tried two different slicers, MatterControl and Cura 2.4, they handle temperatures differently in the gcode for instance, neither sliceer seems to understand standby temps so for MatterControl you get:

                    M107 ; fan off
                    M190 S30 ; wait for bed temperature to be reached
                    M104 T0 S190 ; start heating extruder 1
                    M104 T1 S230 ; start heating extruder 2
                    T0 ; set the active extruder to 0
                    ; settings from start_gcode
                    G28 XY ; home all axes
                    G90 ; use absolute coordinates
                    G21 ; set units to millimeters
                    G92 E0
                    M82 ; use absolute distances for extrusion
                    ; automatic settings after start_gcode
                    M109 T0 S190 ; wait for extruder 1 to reach temperature
                    M104 T1 S230 ; Start heating extruder2
                    M109 T1 S230 ; Finish heating extruder2
                    T0 ; set the active extruder to 0
                    G92 E0 ; reset the expected extruder position

                    Cura does it differently:
                    M190 S30
                    M104 S190
                    M104 T1 S230
                    M109 S190
                    M109 T1 S230
                    G21 ;metric values
                    G90 ;absolute positioning
                    M82 ;set extruder to absolute mode
                    M107 ;start with the fan off
                    G28 X0 Y0 ;move X/Y to min endstops
                    G28 Z0 ;move Z to min endstops
                    G1 Z15.0 F9000 ;move the platform down 15mm
                    T1 ;Switch to the 2nd extruder
                    G92 E0 ;zero the extruded length
                    G1 F200 E6 ;extrude 6 mm of feed stock
                    G92 E0 ;zero the extruded length again
                    G1 F200 E-1.2
                    T0 ;Switch to the 1st extruder
                    G92 E0 ;zero the extruded length
                    G1 F200 E6 ;extrude 6 mm of feed stock
                    G92 E0 ;zero the extruded length again
                    G1 F9000

                    What I have noticed is that with the Duet it will ignore temperature commands if its not the currently active tool, is this by design? This means that the gcode above just doesn't work as it is sending a temp command but not switching to that extruder beforehand, so its ignored and what I get if I don't manually interfere or modify the start code with G10 commands is that one tool heats up then the second, but the first tool starts to cool.

                    Another lousy issue is that Cura seems to have a mind of its own with temps and always seems to want to cool the inactive tool, ignoring the temps set in Cura, but that's another story.

                    1 Reply Last reply Reply Quote 0
                    • dc42
                      dc42 administrators last edited by

                      RRF doesn't ignore temperature commands when the tool isn't active. What it does is set the active temperature of all heaters associated with that tool to the temperature in the command. So next time you select the tool, that will be the temperature that the tool heats up to.

                      Duet WiFi hardware designer and firmware engineer
                      Please do not ask me for Duet support via PM or email, use the forum
                      http://www.escher3d.com, https://miscsolutions.wordpress.com

                      1 Reply Last reply Reply Quote 0
                      • First post
                        Last post
                      Unless otherwise noted, all forum content is licensed under CC-BY-SA