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

    Troubles with Two Y-Axis with individual Limit Switches

    Scheduled Pinned Locked Moved
    Duet Hardware and wiring
    3
    11
    941
    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.
    • BenNorton01undefined
      BenNorton01
      last edited by

      Hi All
      My current setup is a Duet 2 Wifi and a Duex5 Board all with the latest firmware. I am running 3 Z-Axis motors, two Y-Axis motors and 1 X-Axis motor.
      I am wanting to setup a limit switch for each of the two Y-Axis motors to that they are able to realign the X Gantry during their homing process. I am having troubles and have looked at plenty of pages and forums.

      I have managed to get the Y-Axis to home on one of the limit switches so far.
      I have setup a dummy axis (U) which is used to separate the two Y-Axis motors during the homey.g process.

      My config.g currently is:

      ; General preferences
      G90 ; Send absolute coordinates...
      M83 ; ...but relative extruder moves

      ; Drives
      M569 P0 S0 ; Physical drive 0 goes backwards
      M569 P1 S1 ; Physical drive 1 goes forwards
      M569 P2 S0 ; Physical drive 2 goes backwards
      M569 P3 S1 ; Physical drive 3 goes forwards
      M569 P4 S1 ; Physical drive 4 goes forwards
      M569 P5 S0 ; Physical drive 5 goes backwards
      M569 P6 S0 ; Physical drive 6 goes backwards
      M569 P7 S0 ; Physical drive 7 goes backwards

      M584 X0 Y1:7 U7 Z2:5:6 E3:4 P3 ; Apply custom drive mapping, U is a dummy Axis and P3 is setting the number of visible axes
      M671 X225:-68:521 Y553:24:24 S5.0 ; leadscrews at rear middle, front left and rear right

      M350 X16 Y16 U16 Z16 E16:16 I1 ; Configure microstepping with interpolation
      M92 X72.73 Y72.73 U72.73 Z200.00 E1000.00:1000.00 ; Set steps per mm
      M566 X900.00 Y900.00 U900.00 Z12.00 E120.00:120.00 ; Set maximum instantaneous speed changes (mm/min)
      M203 X9000.00 Y9000.00 U9000.00 Z180.00 E1200.00:1200.00 ; Set maximum speeds (mm/min)
      M201 X500.00 Y500.00 U500.00 Z20.00 E250.00:250.00 ; Set accelerations (mm/s^2)
      M906 X1000.00 Y1500.00 U1500.00 Z1500.00 E1200.00:1200.00 I30 ; Set motor currents (mA) and motor idle factor in per cent
      M84 S30 ; Set idle timeout

      ; Axis Limits
      M208 X0 Y0 U0 Z0 S1 ; Set axis minima
      M208 X450 Y425 U425 Z670 S0 ; Set axis maxima

      ; Endstops
      M574 X2 Y2 U2 S1 ; Set active high endstops

      ; Z-Probe
      M574 Z1 S2 ; Set endstops controlled by probe
      M307 H3 A-1 C-1 D-1 ; Disable heater on PWM channel for BLTouch
      M558 P9 H5 F160 T2000 X0 Y0 Z1 ; Set Z probe type to bltouch and the dive height + speeds
      G31 P500 X29.5 Y1.8 Z2.5 ; Set Z probe trigger value, offset and trigger height
      M557 X0:450 Y0:415 S20 ; Define mesh grid

      ; Heaters
      M307 H0 B0 S1.00 ; Disable bang-bang mode for the bed heater and set PWM limit
      M305 P0 T100000 B4138 R4700 ; Set thermistor + ADC parameters for heater 0
      M143 H0 S100 ; Set temperature limit for heater 0 to 100C
      M305 P1 T100000 B4138 R4700 ; Set thermistor + ADC parameters for heater 1
      M143 H1 S260 ; Set temperature limit for heater 1 to 260C
      M305 P2 T100000 B4138 R4700 ; Set thermistor + ADC parameters for heater 2
      M143 H2 S260 ; Set temperature limit for heater 2 to 260C

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

      ; Tools
      M563 P0 D0 ; Define tool 0
      G10 P0 X60 Y0 Z0 ; Set tool 0 axis offsets
      G10 P0 R0 S0 ; Set initial tool 0 active and standby temperatures to 0C
      M563 P1 D1 ; Define tool 1
      G10 P1 X0 Y0 Z0 ; Set tool 1 axis offsets
      G10 P1 R0 S0 ; Set initial tool 1 active and standby temperatures to 0C

      My homey.g currently is:

      M584 Y1 U7 P4 ; separate Y and U axis for aligning them independently
      G91 ; relative positioning
      G1 Z5 F6000 S2 ; lower Z relative to current position
      G1 S1 Y430 U430 F2500 ; move quickly to Y and U axis endstops and stop there (first pass)
      G1 Y-5 U-5 F6000 ; go back a few mm
      G1 S1 Y430 U430 F360 ; move slowly to Y axis endstop once more (second pass)
      G1 Z-5 F6000 S2 ; lift Z again
      M584 Y1:7 U7 P3 ; combine again the master and slave Y axis
      G90 ; absolute positioning

      Thank you for the help in advance.

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

        I didn't spot anything wrong with those files. What happens when you try to home Y?

        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

        deckingmanundefined BenNorton01undefined 2 Replies Last reply Reply Quote 0
        • deckingmanundefined
          deckingman @dc42
          last edited by

          @dc42 said in Troubles with Two Y-Axis with individual Limit Switches:

          I didn't spot anything wrong with those files...................

          I did - M574 X2 Y2 U2 S1 ;

          Unless the OP is running a particular Beta firmware (can't remember which one). M574 doesn't work in any stable V2 firmware.

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

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

            @deckingman said in Troubles with Two Y-Axis with individual Limit Switches:

            @dc42 said in Troubles with Two Y-Axis with individual Limit Switches:

            I didn't spot anything wrong with those files...................

            I did - M574 X2 Y2 U2 S1 ;

            Unless the OP is running a particular Beta firmware (can't remember which one). M574 doesn't work in any stable V2 firmware.

            No, it's only endstop input remapping that isn't supported in V2 series firmware. That configuration will work provided that the U endstop switch is connected to the E0 endstop input.

            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

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

              @dc42 said in Troubles with Two Y-Axis with individual Limit Switches:

              @deckingman said in Troubles with Two Y-Axis with individual Limit Switches:

              @dc42 said in Troubles with Two Y-Axis with individual Limit Switches:

              I didn't spot anything wrong with those files...................

              I did - M574 X2 Y2 U2 S1 ;

              Unless the OP is running a particular Beta firmware (can't remember which one). M574 doesn't work in any stable V2 firmware.

              No, it's only endstop input remapping that isn't supported in V2 series firmware. That configuration will work provided that the U endstop switch is connected to the E0 endstop input.

              Sorry - my bad

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

              1 Reply Last reply Reply Quote 0
              • BenNorton01undefined
                BenNorton01 @dc42
                last edited by

                @dc42 Thank you for the reply. When I home the Y, only the one motor (Left Side, Y1) spins and it triggered by its own endstop, the Right motor (U7) doesn't spin. It does however rotate about 5deg instantaneously when the left endstop is triggered... Very strange.

                Should the motor mapping line look like this:
                M584 X0 Y1:7 U7 Z2:5:6 E3:4 P3 ;

                Or this?:
                M584 X0 Y1:7 U9 Z2:5:6 E3:4 P3 ;

                dc42undefined 1 Reply Last reply Reply Quote 0
                • BenNorton01undefined
                  BenNorton01
                  last edited by

                  I still have not been able to solve this one! I have tried a few new things but still no luck
                  Any help would be appreciated!

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

                    @bennorton01 said in Troubles with Two Y-Axis with individual Limit Switches:

                    Should the motor mapping line look like this:
                    M584 X0 Y1:7 U7 Z2:5:6 E3:4 P3 ;

                    That one is correct, assuming you have connected the second Y motor to the E4 output. It is both the second Z motor and the U motor.

                    Can you confirm that you have the second Y endstop switch connected to the E0 (not E4) endstop input?

                    What happens when you try to home U by itself like this (obviously try this only when U is nearly homed, to avoid damaging your printer):

                    M584 Y1 U7 P4 ; separate Y and U axis for aligning them independently
                    G1 S1 U430 F2500

                    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

                    BenNorton01undefined 1 Reply Last reply Reply Quote 0
                    • BenNorton01undefined
                      BenNorton01 @dc42
                      last edited by

                      @dc42
                      I did have the second Y Axis endstop connected to the E4 Endstop input on the Duex Board and not E0. I swapped them over and It seemed to do the job! Why would that be necessary? Wouldn't the endstops be married to their stepper output?
                      Thank you for all of the help

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

                        @bennorton01 said in Troubles with Two Y-Axis with individual Limit Switches:

                        @dc42
                        I did have the second Y Axis endstop connected to the E4 Endstop input on the Duex Board and not E0. I swapped them over and It seemed to do the job! Why would that be necessary? Wouldn't the endstops be married to their stepper output?
                        Thank you for all of the help

                        End stops are assigned to axes in the order that axes are created. I'm using my phone right now so I can't be sure but I believe the order is something like x,y,u,v,w,a etc. So U would be E0, V would be E1, etc.
                        I agree, it can be confusing.

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

                        BenNorton01undefined 1 Reply Last reply Reply Quote 0
                        • BenNorton01undefined
                          BenNorton01 @deckingman
                          last edited by

                          @deckingman
                          That makes sense now. I just figured each endstop input would pair up with the corresponding motor output and I didn't look too much into it! Thanks for all of the help.

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