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

    M567 Tool-Mixing issues/quirks

    Scheduled Pinned Locked Moved
    Tuning and tweaking
    8
    39
    2.3k
    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.
    • oozeBotundefined
      oozeBot
      last edited by

      I appreciate everyone's input. @deckingman - I will perform a few tests with adjusting e-steps instead of mixing ratio and report back.

      One oddity I just noticed is that the toolboard is reporting a higher voltage than the mainboard, even though they are both connected to the same power supply. @dc42 - I wonder if this could have anything to do with the variation? From B122:

      mainboard:

      Supply voltage: min 0.1, current 24.2, max 24.4
      

      toolboard:

      VIN voltage: min 24.5, current 24.8, max 25.0
      
      dc42undefined 1 Reply Last reply Reply Quote 0
      • A Former User?
        A Former User
        last edited by A Former User

        This post is deleted!
        oozeBotundefined 1 Reply Last reply Reply Quote 1
        • oozeBotundefined
          oozeBot @A Former User
          last edited by

          @herve_smith said in M567 Tool-Mixing issues/quirks:

          i personally think that is going to an nearly impossible task without throwing exhorbanant amounts of time, money and resources at the problem.

          @herve_smith Appreciate the input but we had this up and running on the first day. Our KISS solution is a simple split in the PTFE tubing and purposely advancing the filament off the spool 5cm at the beginning of the print. As long as the variance isn't negative where the 5cm gap is closed, there is no issue. All we are now trying to do is minimize the variance - which has already been calculated at 2.2%.

          However, we are curious as to why there is a variance in the first place. It is not the extruder or the motor as swapping the two results in the same issue. Thanks

          1 Reply Last reply Reply Quote 0
          • oozeBotundefined oozeBot marked this topic as a regular topic
          • dc42undefined
            dc42 administrators @oozeBot
            last edited by

            @oozebot said in M567 Tool-Mixing issues/quirks:

            One oddity I just noticed is that the toolboard is reporting a higher voltage than the mainboard, even though they are both connected to the same power supply. @dc42 - I wonder if this could have anything to do with the variation?

            The VIN voltage reading uses the 3.3V supply on the board as the voltage reference. So variations in the 3.3V supply voltage will affect the VIN reading. ADC gain and offset errors will also cause small variations.

            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
            • dc42undefined
              dc42 administrators @oozeBot
              last edited by

              @oozebot said in M567 Tool-Mixing issues/quirks:

              Can you answer why selecting Filaments is disabled when mixing is enabled? I suspect deckingman is right but could it be considered to be optionally enabled for our use case? Thanks

              That's one for @chrishamm.

              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

              oozeBotundefined chrishammundefined 2 Replies Last reply Reply Quote 0
              • oozeBotundefined
                oozeBot @dc42
                last edited by oozeBot

                @dc42 - we just did considerably more testing and would like your thoughts. We determined that the secondary extruder (at the spool) is operating as expected. It is the primary extruder, connected to the toolboard (within our heated chamber), that is under-extruding!

                At room temp, the extruder connected to the toolboard calibrated at 814 e-steps. With the chamber at 70c, it calibrated at 826 e-steps.

                This was all sparked by the difference in VIN between the room temp 6HC and the ~70c toolboard reported by B122 in my previous post. And I believe it finally explains why we've been calculating our e-steps higher than almost everyone else using an LGX extruder.

                mainboard:

                Supply voltage: min 0.1, current 24.2, max 24.4
                

                toolboard:

                VIN voltage: min 24.5, current 24.8, max 25.0
                

                @chrishamm - since we are already rebuilding DWC, we can just re-enable Filaments for our use case unless you know a reason why that might break?

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

                  @oozebot the VIN voltage is not the reason for the change. The steps generated by the extruder are independent of VIN. The motor current is also independent of VIN, unless you are extruding very fast and the required motor voltage exceeds the VIN voltage.

                  What I think is happening is that at 70C the filament is softer, so the filament flows a little more as it is being extruded, which means that the back pressure from the hot end will cause a greater increase in the steps per mm.

                  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

                  oozeBotundefined 1 Reply Last reply Reply Quote 0
                  • oozeBotundefined
                    oozeBot @dc42
                    last edited by oozeBot

                    @dc42 Thanks. Your explanation makes more sense as the extruder itself is also at 70c..

                    This 'revelation' has finally resolved one of the last pieces in dialing in our machines with various materials as we can now recommend e-steps along with the other settings.

                    We'll consider this closed. I just ran a ~2 hour print and the two extruders are now almost entirely in sync.

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

                      @oozeBot The Filaments option is disabled when multiple extruders are mapped to a single tool because it isn't obvious what extruder drive should be used for filament mapping. If you have a 3-in-1 hotend with four tools (e.g T0 = custom mixing, T1 = E0, T2= E1, T3 = E2) you can use the M563 L parameter to specify the extruder drive to control (e.g. for T1 -> M563 P1 H1 D0 L0). Note that M703 only configures the filament of the mapped extruder drive; it cannot deal with multiple filaments (yet).

                      Duet software engineer

                      oozeBotundefined 1 Reply Last reply Reply Quote 0
                      • oozeBotundefined
                        oozeBot @chrishamm
                        last edited by oozeBot

                        @chrishamm Thanks for the explanation. Since we do utilize the Filaments config files (but not the load/unload functionality) and are already rebuilding DWC, we just added it to our menu bar and are sorting it through globals and loading the configs through a custom mCode (instead of M701) like so:

                             M98 P{"/filaments/" ^ param.S ^ "/config.g"}
                             set global.filament = param.S
                        

                        c02905df-c3d2-461c-b0e2-0b2e0e87b9ba-image.png

                        --

                        0c393a2b-be2e-475f-956f-032dd7d67639-image.png

                        1 Reply Last reply Reply Quote 0
                        • Norderundefined Norder referenced this topic
                        • DuetUserundefined
                          DuetUser
                          last edited by

                          Have you tried a weak motor as a secondary extruder, one that would miss steps on major resistance?
                          I have done no serious tests yet, we use 5kg spools and have similar problem. First idea was to use two motors connected to one stepper driver, not to occupy other drivers.
                          Main extruder use a 200 steps 25mm motor with belt transmission 2:1 and the secondary extruder at the spool is a 400 steps 42mm (I just had it handy) to match gear ratio. Unfortunately the main one is much weaker in this setup. Perhaps it would work with two same sized motors one 200 the other 400 steps.

                          Missing steps is plainly a dirty hack, but in our case providing enough support for the main extruder requires only a gentle push.

                          Mixing would definitely be a cleaner solution but is it at all possible to use two extruders inline without fighting each other at some point?

                          peter

                          deckingmanundefined oozeBotundefined 2 Replies Last reply Reply Quote 0
                          • deckingmanundefined
                            deckingman @DuetUser
                            last edited by

                            @duetuser said in M567 Tool-Mixing issues/quirks:

                            ,............ but is it at all possible to use two extruders inline without fighting each other at some point?

                            One possibility would be to have a "loop" of filament between the two extruders. Extruder A pulls filament out of the loop, and extruder B pulls filament out of the reel into the loop. If you don't want to use mixing to drive the two extruders, you could use some meta commands and conditional code so that say when extruder A has pulled 100mm from the loop, then extruder B pushes 100mm into it.

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

                            1 Reply Last reply Reply Quote 0
                            • oozeBotundefined
                              oozeBot @DuetUser
                              last edited by oozeBot

                              We’ve now successfully run almost three full 10kg mega spools of ABS through our setup.

                              The way @deckingman explained it is how we are protecting any variance between extruders- there is a split in the PTFE tubing where a variable amount of filament is extended. Once we balanced the e-steps between extruders, little else is done except to verify the extended amount isn’t extending too much as we have it purposely set where the secondary extruder is just a touch faster than the primary.

                              If we want to reduce how much is extended, we can send M567 P0 E1:0 to switch off the secondary extruder and then M567 P0 E1:1 to turn it back on when it has been reduced.

                              DuetUserundefined deckingmanundefined 2 Replies Last reply Reply Quote 0
                              • DuetUserundefined
                                DuetUser @oozeBot
                                last edited by

                                Great, happy to hear it!
                                What do you mean by "loop"? Is it a physical loop of filament? Where is it placed in the printer?
                                I've just connected the secondary extruder (42mm NEMA 17), set it to 300 mA, and mixed so it extrudes more than tha main extruder.
                                We'll see how far it goes 🙂

                                peter

                                oozeBotundefined 1 Reply Last reply Reply Quote 0
                                • oozeBotundefined
                                  oozeBot @DuetUser
                                  last edited by oozeBot

                                  @duetuser there is a split in the ptfe tubing leading from the spool to the printer.

                                  01A38F65-0D3E-4789-8C1F-A91608DE002B.jpeg

                                  DuetUserundefined 1 Reply Last reply Reply Quote 0
                                  • DuetUserundefined
                                    DuetUser @oozeBot
                                    last edited by

                                    @oozebot So it is a loop. What a nice idea.

                                    peter

                                    1 Reply Last reply Reply Quote 0
                                    • deckingmanundefined
                                      deckingman @oozeBot
                                      last edited by

                                      @oozebot Just a thought, but if you constrained the "loop" such that it was free to expand and contract but not to move sideways, then you could use a micro switch or slotted opto sensor or some such, with an external trigger to automatically adjust the feed of the primary extruder to keep the loop size constant.

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

                                      oozeBotundefined 1 Reply Last reply Reply Quote 0
                                      • oozeBotundefined
                                        oozeBot @deckingman
                                        last edited by

                                        @deckingman Already thought of that.. 🙂 If we productize this in some way, that is exactly how we will handle it. But for our current needs, just leaving it loose works fine.

                                        1 Reply Last reply Reply Quote 0
                                        • oozeBotundefined
                                          oozeBot
                                          last edited by

                                          I thought I'd share our final solution for this which is working very well. To recap, we are using a secondary LGX extruder at the spool (10kg / 22lb mega-spools) to push the filament to each printer. It's a bit expensive upfront, but removing the load from the primary extruder has allowed us to increase our max mm3/s throughput by ~25%.

                                          The second photo is of the filament loop which resides at each printer. When the filament advances enough to trigger the switch, the ratio on the secondary extruder is slightly decreased, slowing it down. And when the filament retracts enough to disengage the switch, the ratio on the secondary extruder is slightly increased, speeding it up. Works flawlessly!

                                          Filament Advance.jpg

                                          Filament Loop.jpg

                                          1 Reply Last reply Reply Quote 3
                                          • oozeBotundefined
                                            oozeBot
                                            last edited by

                                            Our solution continues to work well, but sometimes we bypass the secondary extruder when printing with smaller spools of different filament. What we have noticed as that even when the second extruder is "disabled" (using M567 P0 E1:0), the secondary extruder is still retracting/un-retracting when using G10/11 for firmware retraction.

                                            @dc42 - Is this a bug?

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