• Tags
  • Documentation
  • Order
  • Register
  • Login
Duet3D Logo Duet3D
  • Tags
  • Documentation
  • Order
  • Register
  • Login

Optimizing IDEX machine and Prusa Slicer

Scheduled Pinned Locked Moved
Firmware wishlist
5
31
2.9k
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.
  • undefined
    yoshimitsuspeed
    last edited by 27 Mar 2023, 23:14

    Toolchange settings

    tfree0
    M83 ; relative extruder movement
    G1 E-2 F3600 ; retract 2mm
    M106 S0 ; turn off our print cooling fan
    G91 ; relative axis movement
    G1 Z3 F500 ; up 3mm
    G90 ; absolute axis movement
    G1 H2 X-150 F6000 ; park the X carriage at -30mm

    tfree1
    M83 ; relative extruder movement
    G1 E-5 F3600 ; retract 2mm
    M106 S0 ; turn off our print cooling fan
    G91 ; relative axis movement
    G1 Z3 F500 ; up 3mm
    G90 ; absolute axis movement
    G1 H2 U150 F6000 ; park the U carriage at +258mm

    tfree2
    M83 ; relative extruder movement
    G1 E-5 F3600 ; retract 2mm
    M106 S0 ; turn off our print cooling fan
    G91 ; relative axis movement
    G1 Z3 F500 ; up 3mm
    G90 ; absolute axis movement
    G1 H2 X-150 U150 F6000 ; park the and U carriage

    Tpost0
    M106 R2 ; restore print cooling fan speed
    ;M116 P0 ; wait for tool 0 heaters to reach operating temperature
    M83 ; relative extruder movement
    G1 E12 F3600 ; extrude 4mm

    tpost1
    M106 R2 ; restore print cooling fan speed
    ;M116 P1 ; wait for tool 1 heaters to reach operating temperature
    M83 ; relative extruder movement
    G1 E10.6 F3600 ; extrude 5mm

    Tpost2

    M106 R2 ; restore print cooling fan speed
    ;M116 P1 ; wait for tool 1 heaters to reach operating temperature
    M83 ; relative extruder movement
    G1 E12 F3600 ; extrude 5mm

    1 Reply Last reply Reply Quote 0
    • undefined
      yoshimitsuspeed
      last edited by 27 Mar 2023, 23:30

      Confirmed adjusting extruder 0 or extruder 1 extrusion factor has no impact on extrusion in tool 2 IDEX duplicate mode.

      Heating issue
      Tool 0 is left print head.
      Tool 1 is right print head.
      Tool 2 is IDEX duplicate.

      If I set it to tool 2 before starting a print the machine crashes.
      I set tool 0 to standby, tool 1 to active. Set tool 0 and tool 1 active and standby temps to 220. Both heaters go to temp.

      Upload file to print.
      Tool 1 active temp changes to first layer temp (240) and starts heating up.
      Tool 0 active temp does not change and current temp stays at 220 until I manually set tool 2, heater 1 to 240.

      First layer prints
      Second layer temp changes tool 2 heater 1 and heater 2 temp to 250.

      TLDR the first layer temp sets tool 1 temp only, but second layer temp changes both tool 2 temps properly.

      1 Reply Last reply Reply Quote 0
      • undefined
        yoshimitsuspeed
        last edited by 27 Mar 2023, 23:37

        Nozzle temps
        I think I cut out the first layer change in the gcode above.

        It does seem Prusa is calling out M104 for the first layer temp and then G10 S250 P2 ; set temperature for second layer temp. Is this an issue in Prusa or in firmware?

        M104 S240 ; set extruder temp
        M140 S30 ; set bed temp
        G28 ; home all axes
        G1 Z5 F5000 ; lift nozzle
        ;T1
        ;X222
        ;E20

        ;Z:0.332741
        ;HEIGHT:0.132741
        G1 Z.333 F6000
        G10 S250 P2 ; set temperature
        M140 S50 ; set bed temperature
        G1 X28.519 Y-.539
        M204 P1000

        undefined 1 Reply Last reply 28 Mar 2023, 10:10 Reply Quote 0
        • undefined
          T3P3Tony administrators @yoshimitsuspeed
          last edited by 28 Mar 2023, 10:09

          @yoshimitsuspeed said in Optimizing IDEX machine and Prusa Slicer:

          Issue 1
          I currently have a duplicate mode set up as tool 2 with offset extruders. So tool 0 is left print head, tool 1 the right print head, and tool 2 as the duplicate mode.
          In Prusa this is set as extruder 3.
          When trying to start a print with extruder 3 selected If I have tool 0 or tool 1 selected in the web interface when I start a print it will home properly, position both print heads properly offset and start printing in duplicate mode properly.
          If however tool 2 is already selected when I start the print it will home and then both extruders will stay at their home position and then try to print from there.

          So to confirm when T2 is in print start gcode, and T2 is not selected, then the correct behaviour happens:

          @yoshimitsuspeed said in Optimizing IDEX machine and Prusa Slicer:

          ;TYPE:Custom
          ....
          G28 ; home all axes
          ....
          T2
          ; Filament gcode
          ....

          so the order the print start gcode is boing things is homing the printer, and then calling the tool change. (which you say works) however if there is just the home, with no tool change (because T2 is already selected) then it does not work?

          I think you need to take a step back and check your homing files and tool change files actually do what you expect before trying to print. So try all the combinations of tool selected and homing.

          Its been a long time since i have used an IDEX machine however I suggest that you can simply this by always deselecting any tools and then homing (T-1 at the start of all the homing files). Mark some known points on the machine and then home, select T0, move th the co-ordinates of the point and ensure T0 gets there. Then home, select T1 and do the same. For T2 the nozzles should be equidistant from the point, the set offset between them.

          www.duet3d.com

          1 Reply Last reply Reply Quote 0
          • undefined
            T3P3Tony administrators @yoshimitsuspeed
            last edited by 28 Mar 2023, 10:10

            @yoshimitsuspeed we can take the issues one by one.

            www.duet3d.com

            1 Reply Last reply Reply Quote 0
            • undefined
              yoshimitsuspeed
              last edited by 5 Apr 2023, 01:26

              Okay so I did solve the extruder heating issue by replacing M104 with M568.
              I haven't had time to mess with the issue when starting with tool 2 selected however as I said above right now the most important issue is not being able to independently control extruder rate when tool 2 is selected.
              For example right now I have one spool of TPU that is 1.73 and another that is 1.76 and since I can't control the extrusion rate independently I have under extrusion on one part, and over on the other.
              If I get some time I might go through my other spools and try to find one that more closely matches but this is being a pretty big inconvenience to my production process right now.

              Phaedruxundefined 1 Reply Last reply 5 Apr 2023, 04:59 Reply Quote 0
              • Phaedruxundefined
                Phaedrux Moderator @yoshimitsuspeed
                last edited by 5 Apr 2023, 04:59

                @yoshimitsuspeed said in Optimizing IDEX machine and Prusa Slicer:

                I have one spool of TPU that is 1.73 and another that is 1.76

                Can you not setup a filament profile in PrusaSlicer for each?

                Z-Bot CoreXY Build | Thingiverse Profile

                undefined 1 Reply Last reply 5 Apr 2023, 05:10 Reply Quote 0
                • undefined
                  yoshimitsuspeed @Phaedrux
                  last edited by yoshimitsuspeed 4 May 2023, 05:12 5 Apr 2023, 05:10

                  @Phaedrux
                  As far as I know Prusa does not support anything regarding IDEX or duplicate type printing.
                  I have made the recommendation in their Dev forum letting them know it would be super helpful if it would. Both for the advantages of being able to enter separate filament diameters for duplicate, as well as things like being able to use two different print and filament profiles for a support material, or if you wanted to do something like running a hard TPU on one print head that could print fast, and a soft TPU on the other that required slower settings.

                  But as of now as far as I know, no there is no support for this in Prusa.

                  oliofundefined 1 Reply Last reply 5 Apr 2023, 06:16 Reply Quote 0
                  • oliofundefined
                    oliof @yoshimitsuspeed
                    last edited by 5 Apr 2023, 06:16

                    @yoshimitsuspeed I havent tested this yet but you may be able to trick RRF by setting the mixing ratio to (1.75/1.74):(1.75/1.71) to get different effective flow rates.

                    <>RatRig V-Minion Fly Super5Pro RRF<> V-Core 3.1 IDEX k*****r <> RatRig V-Minion SKR 2 Marlin<>

                    undefined 1 Reply Last reply 5 Apr 2023, 07:50 Reply Quote 0
                    • undefined
                      yoshimitsuspeed @oliof
                      last edited by 5 Apr 2023, 07:50

                      @oliof
                      I would be pretty disappointed if that is the best solution. Not only would it suck going into the firmware and calculating that every time I start a print but it also means I can't tweak on the fly.

                      I am very confused by how this all works out.
                      It seems like M568 overrides the extrusion factors sliders in the status panel which is nonsensical.

                      I also don't understand why it has the extruders defined in M563 telling it to use both extruders, yet only one drives without M567.

                      I just don't understand why there isn't a base option that allows both extruders to extrude the Gcode defined amount with the extrusion factor slider functioning normally. Locking the two together with M56 and disabling the extrusion factor seems redundant and overly complicated. If M563 says use both extruders why aren't both extruders just driven by the E Gcode by default?

                      And or if someone decide that M567 is the required way to achieve that then why would it override the extrusion adjustment sliders?
                      This makes no sense.

                      oliofundefined 1 Reply Last reply 5 Apr 2023, 07:59 Reply Quote 0
                      • oliofundefined
                        oliof @yoshimitsuspeed
                        last edited by 5 Apr 2023, 07:59

                        @yoshimitsuspeed hey, I was just proposing a hack, by no means do I think its a good solution for your problem. You can adjust mixing ratio on the fly though, so it would be possible to do it dynamically....

                        <>RatRig V-Minion Fly Super5Pro RRF<> V-Core 3.1 IDEX k*****r <> RatRig V-Minion SKR 2 Marlin<>

                        undefined 1 Reply Last reply 5 Apr 2023, 19:39 Reply Quote 0
                        • dc42undefined
                          dc42 administrators @yoshimitsuspeed
                          last edited by dc42 4 May 2023, 18:23 5 Apr 2023, 18:19

                          @yoshimitsuspeed said in Optimizing IDEX machine and Prusa Slicer:

                          Oh yeah issue 5
                          As far as I can tell with my current configuration and I think because of the M567 code on the duplicate mode it seems like I cannot adjust the extrusion factor of each tool separately. I would like to be able to do this for situations where say I have a spool of 1.73 filament and 1.77 filament and need to adjust extrusion independently. That 567 code was in the IDEX configuration I found.
                          Can I just remove that and if so will it run both extruders and allow me to adjust extrusion factor properly?

                          As well as changing the mix ratio using M567, you can adjust the extrusion factors independently using M221. See https://docs.duet3d.com/en/User_manual/Reference/Gcodes#m221-set-extrude-factor-override-percentage in particular the D parameter. I expect it is this command that the extrusion factor sliders in DWC change, but I have not verified that. You may wish to try using M221 from the command console.

                          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

                          undefined 1 Reply Last reply 5 Apr 2023, 19:46 Reply Quote 0
                          • undefined
                            yoshimitsuspeed @oliof
                            last edited by 5 Apr 2023, 19:39

                            @oliof
                            Sorry if my comment came across as unappreciative. I do appreciate input. It just seems like there should be better solutions integrated.
                            I wasn't thinking about being able to apply changes through the console while printing which would make it less awful but still doesn't make sense that this isn't better designed for this application.

                            1 Reply Last reply Reply Quote 0
                            • undefined
                              yoshimitsuspeed @dc42
                              last edited by 5 Apr 2023, 19:46

                              @dc42
                              Thanks for the input.
                              If M221 is in fact essentially the same as the sliders then it seems like it would not work either. I might play with it if I get a moment.

                              I guess if that like the sliders is overridden by M567 then I guess using M567 via the console would be the best current working solution?
                              In this case am I right in assuming that adding to my Gcode file, or typing in the console say M567 P2 E1.01:0.99 would be essentially the same as having the extrusion factor sliders set at E0 101% and E1 99% is that correct?

                              oliofundefined dc42undefined 2 Replies Last reply 6 Apr 2023, 06:31 Reply Quote 0
                              • oliofundefined
                                oliof @yoshimitsuspeed
                                last edited by 6 Apr 2023, 06:31

                                @yoshimitsuspeed of course, thete is a case to be made that you could change extrusion factor per filament in the slicer. But I wont be making that case since a) RRF is supoosed to have built in filament management facilities and b) being able to adjust things dynamically has saved prints of mine more than once.

                                <>RatRig V-Minion Fly Super5Pro RRF<> V-Core 3.1 IDEX k*****r <> RatRig V-Minion SKR 2 Marlin<>

                                1 Reply Last reply Reply Quote 0
                                • dc42undefined
                                  dc42 administrators @yoshimitsuspeed
                                  last edited by 6 Apr 2023, 06:56

                                  @yoshimitsuspeed said in Optimizing IDEX machine and Prusa Slicer:

                                  I guess if that like the sliders is overridden by M567 then I guess using M567 via the console would be the best current working solution?

                                  To calculate the required extrusion, assuming that the G1 command only has a single E value, RRF first applies the M567 mix ratio to get the requested extrusion on each extruder. Then, if the move is a normal printing move (not an extruder-only move) it multiplies those values by the extrusion factors set by M221. So M567 does not override M221.

                                  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

                                  undefined 1 Reply Last reply 17 Apr 2023, 21:34 Reply Quote 0
                                  • undefined
                                    yoshimitsuspeed @dc42
                                    last edited by 17 Apr 2023, 21:34

                                    @dc42 said in Optimizing IDEX machine and Prusa Slicer:

                                    @yoshimitsuspeed said in Optimizing IDEX machine and Prusa Slicer:

                                    I guess if that like the sliders is overridden by M567 then I guess using M567 via the console would be the best current working solution?

                                    To calculate the required extrusion, assuming that the G1 command only has a single E value, RRF first applies the M567 mix ratio to get the requested extrusion on each extruder. Then, if the move is a normal printing move (not an extruder-only move) it multiplies those values by the extrusion factors set by M221. So M567 does not override M221.

                                    Does this mean that M221 does something different than the sliders in the web interface do? Or is there something else preventing my extrusion sliders from functioning properly? Because if I move those while printing in duplicate mode IE tool 2 the sliders don't do anything. Or at least the don't give independent control. I haven't tried sliding both to the same setting at the same time to see if I could increase or decrease flow on both extruders at the same time but if I set one at 99 and one at 101, or if I set one at zero and the other at 200 there is no change in extrusion.

                                    undefined 1 Reply Last reply 18 Apr 2023, 18:09 Reply Quote 0
                                    • undefined
                                      yoshimitsuspeed @yoshimitsuspeed
                                      last edited by 18 Apr 2023, 18:09

                                      I am slowly trying to work through issues in order of biggest priority and time likely required to solve.
                                      I still haven't gotten around to figuring out what's going wrong when I have T2 duplicate selected before starting a print. It is easy enough to just select T0 or T1 then start.

                                      This is leaving me with another annoying issue though and I think it might be more related to Prusa Slicer but I am wondering if there is anything I can do about it.
                                      If I have say T0/heater 1 active and T1 in standby or off when I start the print the new M568 command does set temp for T2 H1 and H2 however T1/H1 stays in standby.
                                      I haven't paid close enough attention but I think I remember it waiting to heat sometimes, but last time as I was watching it did not, it went straight to printing. In this example I had everything set to 220 before starting the print and first layer temp of 240. As soon as it gets to the T2 command T1 starts heating and in this case since it was already at 220 everything started fine.

                                      The issue seems to be that the earlier G10 S240 P2, and M568 codes don't switch Heater 1 and Heater 2 into active mode so only the active heater starts heating.
                                      It seems to me like P2 should switch both to active and heating. Is there something I can do about this on the firmware/Duet side of things?

                                      ; generated by PrusaSlicer 2.6.0-alpha5+win64 on 2023-04-18 at 17:46:12 UTC

                                      ;

                                      ; external perimeters extrusion width = 0.76mm
                                      ; perimeters extrusion width = 0.80mm
                                      ; infill extrusion width = 0.65mm
                                      ; solid infill extrusion width = 0.80mm
                                      ; top infill extrusion width = 0.72mm
                                      ; first layer extrusion width = 0.80mm

                                      M201 X9000 Y9000 Z500 E10000 ; sets maximum accelerations, mm/sec^2
                                      M203 X30000 Y30000 Z720 E7200 ; sets maximum feedrates, mm / min
                                      M204 P1500 T1500 ; sets acceleration (P, T), mm/sec^2
                                      M566 X600.00 Y600.00 Z12.00 E150.00 ; sets the jerk limits, mm/min
                                      M107
                                      G10 S240 P2 ; set temperature
                                      ;TYPE:Custom
                                      G21 ;metric values
                                      G90 ;absolute positioning
                                      M568 S240 ; set extruder temp
                                      M140 S30 ; set bed temp
                                      G28 ; home all axes
                                      G1 Z5 F5000 ; lift nozzle
                                      ;T1
                                      ;X222
                                      ;E20

                                      G10 S240 P2 ; set temperature
                                      M116 ; wait for temperature to be reached
                                      G21 ; set units to millimeters
                                      G90 ; use absolute coordinates
                                      M83 ; use relative distances for extrusion
                                      T2
                                      ; Filament gcode
                                      M592 D0 A-0.013507 B0.002903
                                      M572 D0 S0.02
                                      M107

                                      1 Reply Last reply Reply Quote 0
                                      • undefined
                                        yoshimitsuspeed
                                        last edited by 18 Apr 2023, 18:14

                                        Also as an update I have found an acceptable workflow by setting filament diameter in Prusa Slicer to the larger of the two filaments and then using M567 P2 E1:0.985 for example to fine tune the balance. This does work and isn't a huge pain though it would be really nice if I could use the sliders in the interface instead.

                                        I do also have one other question.
                                        Can I install a filament sensor on each extruder and running in duplicate mode have it stop the print if either stops or runs out? Or would there be any foreseeable issues like we are seeing with extrusion ratio?

                                        1 Reply Last reply Reply Quote 0
                                        • undefined
                                          yoshimitsuspeed
                                          last edited by 2 May 2023, 23:03

                                          No other thoughts on the extrusion ratio issue? Should I report any of these as bugs or feature requests? It seems to me like the extrusion rate sliders should work in IDEX mode but according to what everyone is saying it seems like that is not currently possible.

                                          Phaedruxundefined 1 Reply Last reply 3 May 2023, 04:12 Reply Quote 0
                                          • First post
                                            Last post
                                          Unless otherwise noted, all forum content is licensed under CC-BY-SA