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

    Mapping Axes and Defining Tools: Setting the extruder drivers

    Scheduled Pinned Locked Moved
    General Discussion
    2
    8
    1.0k
    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.
    • justine.hauptundefined
      justine.haupt
      last edited by

      In config.g I associate the various motor drives with axes with M584 like this:

      [[language]]
      M584 X3:4 Y0:1 Z5:6 E2:7:8:9 		; Map the axes so that X is on drives 3 and 4, Y is on drives 0 and 1, Z is on drives 5 and 6, and E is on drive 2, 7, 8, and 9.
      
      

      And I just realized I never updated my tool 0 definition to have the extruder on either drive 2, 7, 8, or 9. This is my current tool 0 definition:

      [[language]]
      ; Define Tool 0 (Mono-Extruder)
      M563 P0 D0 H1 
      G10 P0 S0 R0 X0 Y0    
      
      

      And yet, this works. I would think this would try to run my Y axis as the extruder, but it doesn't. So I don't understand the relationship of M563 to M584. Intuitively, I would think any reference to the extruder drives should just be left out of M584 as they're mapped directly in M563. If anything the opposite seems to be happening, with the D0 being ignored in my tool definition. What's going on here?

      What I'm actually working toward is setting up a 4 extruder toolhead, not for 4 material printing but to print 4 of the same object simultaneously, in parallel. So I want all four extruder motors and all four heaters always doing the same thing. I believe the definition should look like this, but I would appreciate input:

      [[language]]
      ; Define Tool 1 (Quad-Extruder)
      M563 P1 D2:7:8:9 H1:2:3:4 ; Define tool 1 (P1) to use drives 2, 7, 8, and 9, and heaters 1,2 ,3, and 4.
      G10 P1 S0 R0 X0 Y0    ; set tool 1 temperatures and offsets
      
      

      ~Justine

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

        It's because in M584 you are mapping extruder 0 to drive 1, extruder 1 to drive 7 extruder 2 to drive 8 etc. So once the drives are mapped, from then on you refer to the extruder and not the physical drive that has been mapped to it, just as you refer to the X axis rather than drives 3 and 4.

        Edit a very basic configuration would have something like M584 X1, Y2, Z3, E4 but a single tool would be M563 P0 D0 (not P4)

        Further edit. Your 4 tool config would then be M563 D0:1:2:3:4. It's how my 5 colour diamond hot end is configured.

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

        1 Reply Last reply Reply Quote 0
        • justine.hauptundefined
          justine.haupt
          last edited by

          Thank you Ian,

          It's because in M584 you are mapping extruder 0 to drive 1, extruder 1 to drive 7 extruder 2 to drive 8 etc.

          I'm pretty sure you meant "extruder 0 to drive 2, extruder 1 to drive 7 extruder 2 to drive 8 etc. ", but good, okay.

          Your 4 tool config would then be M563 D0:1:2:3:4.

          Are you saying that M563 D0:1:2:3 is actually referencing drives 2, 7, 8 and 9 because that's how M584 mapped them?

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

            @justine.haupt:

            Are you saying that M563 D0:1:2:3 is actually referencing drives 2, 7, 8 and 9 because that's how M584 mapped them?

            Yes, exactly so.

            An analogy that might help is to think of it as mathematical equations where we are saying that E0=2, E1=7, E2=8, and E3=9. From then on we refer to the extruder number (E0 to 4) and not the "value" that it represents. However, that analogy falls down when we map multiple drive to axes. i.e M584 X3:4 means that X= both 3 and 4.

            Ref the typo. It was a deliberate ploy on my part to check that you read my post fully (and if you believe that, you'll believe anything) 🙂

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

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

              Justine,

              I don't know if this will confuse you more but it might help. On my machine, I have two CoreXY mechansims, on ecarries the hot end and the other which is stacked above the first, carries the extruders. In normal operation the lower left and upper left motors (Alpha drives on a CoreXY are both mapped to the X axis and the upper and lower right hand (Beta drives) are both mapped to the Y axis. But, when I home them, each gantry can be homed individually employing U and V axes. So in my config.g I have this:
              M584 X0:3 Y1:4 Z2 U10 V11 E5:6:7:8:9 P3;
              Note that the U and V axes are mapped to non-existent drives. So any command to move the X axis will turn both teh motors that are connected to drives 0 and 3.

              Then at the start of homing, I separate the mechanism by remapping the drives like this:
              M584 X0 U3 Y1 V4
              Now when I command the X axis to moves, only the motor connected to Drive 0 will turn. If I want the other motor to turn (Drive 3) I have to command the U axis to move.

              Hope that helps and doesn't confuse you even more.

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

              1 Reply Last reply Reply Quote 0
              • justine.hauptundefined
                justine.haupt
                last edited by

                Okay, thank you Ian. I do understand; the confusion comes from the syntax, where "Dnnn" is referencing an extruder number instead of a drive.

                Do you have any photos or videos of your stacked CoreXY gantries?

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

                  @justine.haupt:

                  …..................Do you have any photos or videos of your stacked CoreXY gantries?

                  This is probably the best one https://www.youtube.com/watch?v=ILRsEt4ExYM&t=7s, and the explanation is here https://somei3deas.wordpress.com/2017/11/28/5-axis-homing-using-corexyuv/

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

                  1 Reply Last reply Reply Quote 0
                  • justine.hauptundefined
                    justine.haupt
                    last edited by

                    Ahh I've seen your posts re. multi-color printing before, I didn't realize it was you.

                    Very neat setup.

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