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

    configuring Dual Z w/ Dual Z endstops....

    Scheduled Pinned Locked Moved
    General Discussion
    3
    25
    1.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.
    • Vetiundefined
      Veti @dingo007
      last edited by

      @dingo007 said in configuring Dual Z w/ Dual Z endstops....:

      and RR config doesnt seem to work for RR3.

      why not?

      dingo007undefined 1 Reply Last reply Reply Quote 0
      • dingo007undefined
        dingo007 @Veti
        last edited by

        @Veti i tried it, wouldnt let me download anything.

        Vetiundefined 1 Reply Last reply Reply Quote 0
        • Vetiundefined
          Veti @dingo007
          last edited by

          @dingo007 said in configuring Dual Z w/ Dual Z endstops....:

          tried it, wouldnt let me download anything.

          works for me. did you forget to add the io mapping?

          dingo007undefined 1 Reply Last reply Reply Quote 0
          • dingo007undefined
            dingo007 @Veti
            last edited by

            @Veti must have been cashed in the browser.... ok went through it again i see 3 issues..... doesnt appear to let me map E1 to Z2 ... manual edit i guess, hrmm hows the second Z stop get configured LOL 🙂 kill me now... ok ok putting on the patience hat.... and second BLtouch is blanked out 🙂 ... i generated what i could for V3 lemme start manually editing to match what i had for v2 ......

            1 Reply Last reply Reply Quote 0
            • Vetiundefined
              Veti
              last edited by

              @dingo007 said in configuring Dual Z w/ Dual Z endstops....:

              and second BLtouch is blanked out

              you need to assign PWM Control Channel (BLTouch only) in io mapping

              dual z stop is explained here
              https://duet3d.dozuki.com/Wiki/Gcode#Section_M574_RepRapFirmware_Num_3

              dingo007undefined 1 Reply Last reply Reply Quote 0
              • dingo007undefined
                dingo007 @Veti
                last edited by

                @Veti wow this config is really confusing now.....

                rr2 config.g
                ; Drives
                M569 P0 S0 ; physical drive 0 goes forwards
                M569 P2 S1 ; physical drive 2 goes forwards
                M569 P1 S1 ; physical drive 1 goes forwards
                M569 P3 S0 ; physical drive 3 goes forwards
                M569 P4 S0 ; physical drive 4 goes forwards
                M584 X0 Y2 Z1:4 E3 ; set drive mapping
                M350 X16 Y16 Z16 E16 I1 ; configure microstepping with interpolation
                M92 X80.00 Y80.00 Z800.00 E420.00 ; set steps per mm
                M566 X900.00 Y900.00 Z12.00 E120.00 ; set maximum instantaneous speed changes (mm/min)
                M203 X6000.00 Y6000.00 Z180.00 E1200.00 ; set maximum speeds (mm/min)
                M201 X500.00 Y500.00 Z20.00 E250.00 ; set accelerations (mm/s^2)
                M906 X800 Y800 Z800 E800 I80 ; set motor currents (mA) and motor idle factor in per cent
                M84 S30 ; Set idle timeout

                ; Axis Limits
                M208 X0 Y0 Z0 S1 ; set axis minima
                M208 X350 Y350 Z850 S0 ; set axis maxima

                ; Endstops
                M574 X1 Y1 Z1 S0 ; set active low and disabled endstops

                rr3 config (makes no sense) (M584 X0 Y2 Z1 E3:4 should be M584 X0 Y2 Z1:4 E3 )

                ; Drives
                M569 P0 S1 ; physical drive 0 goes forwards
                M569 P2 S0 ; physical drive 2 goes backwards
                M569 P1 S0 ; physical drive 1 goes backwards
                M569 P3 S1 ; physical drive 3 goes forwards
                M569 P4 S0 ; physical drive 4 goes backwards
                M584 X0 Y2 Z1 E3:4 ; set drive mapping
                M350 X16 Y16 Z16 E16:16 I1 ; configure microstepping with interpolation
                M92 X80.00 Y80.00 Z800.00 E420.00:420.00 ; set steps per mm
                M566 X900.00 Y900.00 Z12.00 E120.00:120.00 ; set maximum instantaneous speed changes (mm/min)
                M203 X6000.00 Y6000.00 Z180.00 E1200.00:1200.00 ; set maximum speeds (mm/min)
                M201 X500.00 Y500.00 Z20.00 E250.00:250.00 ; set accelerations (mm/s^2)
                M906 X800 Y800 Z800 E800:800 I30 ; set motor currents (mA) and motor idle factor in per cent
                M84 S30 ; Set idle timeout

                ; Axis Limits
                M208 X0 Y0 Z0 S1 ; set axis minima
                M208 X350 Y350 Z850 S0 ; set axis maxima

                ; Endstops
                M574 X1 S0 P"xstop" ; configure active-low endstop for low end on X via pin xstop
                M574 Y1 S0 P"zstop" ; configure active-low endstop for low end on Y via pin zstop
                M574 Z1 S0 P"ystop" ; configure active-low endstop for low end on Z via pin ystop

                dingo007undefined Vetiundefined 2 Replies Last reply Reply Quote 0
                • dingo007undefined
                  dingo007 @dingo007
                  last edited by

                  @dingo007 me thinks i see what its doing. it should be
                  ; Drives
                  M569 P0 S0 ; physical drive 0 goes forwards
                  M569 P2 S1 ; physical drive 2 goes backwards
                  M569 P1 S1 ; physical drive 1 goes backwards
                  M569 P3 S0 ; physical drive 3 goes forwards
                  M569 P4 S0 ; physical drive 4 goes backwards
                  M584 X0 Y2 Z1:4 E3 ; set drive mapping
                  M350 X16 Y16 Z16:16 E16 I1 ; configure microstepping with interpolation
                  M92 X80.00 Y80.00 Z800.00:800.00 E420.00 ; set steps per mm
                  M566 X900.00 Y900.00 Z12.00:12.00 E120.00 ; set maximum instantaneous speed changes (mm/min)
                  M203 X6000.00 Y6000.00 Z180.00:180 E1200.00 ; set maximum speeds (mm/min)
                  M201 X500.00 Y500.00 Z20.00:20.00 E250.00 ; set accelerations (mm/s^2)
                  M906 X800 Y800 Z800:800 E800 I30 ; set motor currents (mA) and motor idle factor in per cent
                  M84 S30 ; Set idle timeout

                  ; Axis Limits
                  M208 X0 Y0 Z0 S1 ; set axis minima
                  M208 X350 Y350 Z850 S0 ; set axis maxima

                  ; Endstops
                  M574 X1 S0 P"xstop" ; configure active-low endstop for low end on X via pin xstop
                  M574 Y1 S0 P"zstop" ; configure active-low endstop for low end on Y via pin zstop
                  M574 Z1 S0 P"ystop" ; configure active-low endstop for low end on Z via pin ystop

                  1 Reply Last reply Reply Quote 0
                  • Vetiundefined
                    Veti @dingo007
                    last edited by

                    @dingo007 said in configuring Dual Z w/ Dual Z endstops....:

                    rr3 config (makes no sense) (M584 X0 Y2 Z1 E3:4 should be M584 X0 Y2 Z1:4 E3 )

                    yes change it. thats the manual change that you did.

                    dingo007undefined 1 Reply Last reply Reply Quote 0
                    • Vetiundefined
                      Veti
                      last edited by

                      @dingo007 said in configuring Dual Z w/ Dual Z endstops....:

                      M574 Z1 S0 P"ystop" ; configure active-low endstop for low end on Z via pin ystop

                      now add your second stop like this
                      M574 Z1 S0 P"ystop+e0stop" ; configure active-low endstop for low end on Z via pin ystop

                      dingo007undefined 1 Reply Last reply Reply Quote 0
                      • dingo007undefined
                        dingo007 @Veti
                        last edited by

                        @Veti
                        And below where it states, makes completely no sense to my brain, can someone explain ?
                        You must use the M671 command to define the X and Y coordinates of the leadscrews
                        where my left and right Z screws are at 225 to the bed which is centered of the 450x450 bed

                        M671 X-20:220 Y0:0 S0.5 ; leadscrews at left (connected to Z) and right (connected to E1) of X axis
                        M208 X-5:205 Y0:200 ; X carriage moves from -5 to 205, Y bed goes from 0 to 200

                        dingo007undefined 1 Reply Last reply Reply Quote 0
                        • dingo007undefined
                          dingo007 @Veti
                          last edited by

                          @Veti said in configuring Dual Z w/ Dual Z endstops....:

                          M574 Z1 S0 P"ystop+e0stop" ; configure active-low endstop for low end on Z via pin ystop

                          Im using Y and E1 so.....
                          M574 Z1 S0 P"ystop+e1stop" ; configure active-low endstop for low end on Z via pin ystop

                          1 Reply Last reply Reply Quote 0
                          • dingo007undefined
                            dingo007 @dingo007
                            last edited by dingo007

                            @dingo007 i guess its..... ???

                            M671 X0:250 Y0:250 S0.5 ; leadscrews at left (connected to Z) and right (connected to E1) of X axis
                            M208 X0:250 Y0:250 ; X carriage moves from 0 to 250, Y carraige goes from 0 to 250

                            1 Reply Last reply Reply Quote 0
                            • Vetiundefined
                              Veti
                              last edited by

                              @dingo007 said in configuring Dual Z w/ Dual Z endstops....:

                              M671 X0:250 Y0:250 S0.5 ; leadscrews at left (connected to Z) and right (connected to E1) of X axis

                              what are you trying to do now? dual z endstop or independent leveling?
                              thats only needed for the second one.

                              dingo007undefined 1 Reply Last reply Reply Quote 0
                              • dingo007undefined
                                dingo007 @Veti
                                last edited by

                                @Veti the document you sent me https://duet3d.dozuki.com/Wiki/Bed_levelling_using_multiple_independent_Z_motors

                                1 Reply Last reply Reply Quote 0
                                • dingo007undefined
                                  dingo007
                                  last edited by

                                  final RR3 config
                                  config.g
                                  ; Drives
                                  M569 P0 S1 ; physical drive 0 goes forwards
                                  M569 P2 S0 ; physical drive 2 goes backwards
                                  M569 P1 S0 ; physical drive 1 goes backwards
                                  M569 P3 S1 ; physical drive 3 goes forwards
                                  M569 P4 S0 ; physical drive 4 goes backwards
                                  M584 X0 Y2 Z1:4 E3 ; set drive mapping
                                  M350 X16 Y16 Z16:16 E16 I1 ; configure microstepping with interpolation
                                  M92 X80.00 Y80.00 Z800.00:800.00 E420.00 ; set steps per mm
                                  M566 X900.00 Y900.00 Z12.00:12.00 E120.00 ; set maximum instantaneous speed changes (mm/min)
                                  M203 X6000.00 Y6000.00 Z180.00:180.00 E1200.00 ; set maximum speeds (mm/min)
                                  M201 X500.00 Y500.00 Z20.00:20.00 E250.00 ; set accelerations (mm/s^2)
                                  M906 X800 Y800 Z800:800 E800 I30 ; set motor currents (mA) and motor idle factor in per cent
                                  M84 S30 ; Set idle timeout

                                  M671 X0:250 Y0:250 S0.5 ; leadscrews at left (connected to Z) and right (connected to E1) of X axis
                                  M208 X0:250 Y0:250 ; X carriage moves from -5 to 205, Y bed goes from 0 to 200

                                  ; Axis Limits
                                  M208 X0 Y0 Z0 S1 ; set axis minima
                                  M208 X350 Y350 Z850 S0 ; set axis maxima

                                  ; Endstops
                                  M574 X1 S0 P"xstop" ; configure active-low endstop for low end on X via pin xstop
                                  M574 Y1 S0 P"zstop" ; configure active-low endstop for low end on Y via pin zstop
                                  ;M574 Z1 S0 P"ystop" ; configure active-low endstop for low end on Z via pin ystop
                                  M574 Z1 S0 P"ystop+e1stop" ; configure active-low endstop for low end on Z via pin ystop

                                  bed.g

                                  ; bed.g
                                  ; called to perform automatic bed compensation via G32
                                  ;
                                  ; generated by RepRapFirmware Configuration Tool v2.1.5 on Fri Jan 10 2020 16:18:31 GMT+0700 (Indochina Time)
                                  M561 ; clear any bed transform
                                  G29 ; probe the bed and enable compensation
                                  G28 ; home
                                  ;M401 ; deploy Z probe (omit if using bltouch)
                                  G30 P0 X250 Y250 Z-99999 ; probe near a leadscrew, half way along Y axis
                                  G30 P1 X250 Y250 Z-99999 S2 ; probe near a leadscrew and calibrate 2 motors
                                  ;M402 ; retract probe (omit if using bltouch)

                                  1 Reply Last reply Reply Quote 0
                                  • Vetiundefined
                                    Veti
                                    last edited by

                                    did you try homing?

                                    dingo007undefined 2 Replies Last reply Reply Quote 0
                                    • dingo007undefined
                                      dingo007 @Veti
                                      last edited by

                                      @Veti not yet, waiting for a print to finish before i reflash to 3.x

                                      1 Reply Last reply Reply Quote 0
                                      • dingo007undefined
                                        dingo007 @Veti
                                        last edited by

                                        @Veti Okay so it doesnt home Z the way i would think. 1 end stop per Z axis .... cut the motor per side when end stop triggered. the right (Y) Z end stop both from movement, where i would think the opposite side would continue to move until its end stop was triggered.

                                        config.g
                                        ; Drives
                                        M569 P0 S0 ; physical drive 0 goes forwards
                                        M569 P2 S1 ; physical drive 2 goes backwards
                                        M569 P1 S1 ; physical drive 1 goes backwards
                                        M569 P3 S0 ; physical drive 3 goes forwards
                                        M569 P4 S1 ; physical drive 4 goes backwards
                                        M584 X0 Y2 Z1:4 E3 ; set drive mapping
                                        M350 X16 Y16 Z16:16 E16 I1 ; configure microstepping with interpolation
                                        M92 X80.00 Y80.00 Z800.00:800.00 E420.00 ; set steps per mm
                                        M566 X900.00 Y900.00 Z12.00:12.00 E120.00 ; set maximum instantaneous speed changes (mm/min)
                                        M203 X6000.00 Y6000.00 Z180.00:180.00 E1200.00 ; set maximum speeds (mm/min)
                                        M201 X500.00 Y500.00 Z20.00:20.00 E250.00 ; set accelerations (mm/s^2)
                                        M906 X800 Y800 Z800:800 E800 I30 ; set motor currents (mA) and motor idle factor in per cent
                                        M84 S30 ; Set idle timeout

                                        M671 X0:250 Y0:250 S0.5 ; leadscrews at left (connected to Z) and right (connected to E1) of X axis
                                        M208 X0:250 Y0:250 ; X carriage moves from -5 to 205, Y bed goes from 0 to 200

                                        ; Axis Limits
                                        M208 X0 Y0 Z0 S1 ; set axis minima
                                        M208 X350 Y350 Z850 S0 ; set axis maxima

                                        ; Endstops
                                        M574 X1 S0 P"xstop" ; configure active-low endstop for low end on X via pin xstop
                                        M574 Y1 S0 P"zstop" ; configure active-low endstop for low end on Y via pin zstop
                                        ;M574 Z1 S0 P"ystop" ; configure active-low endstop for low end on Z via pin ystop
                                        M574 Z1 S0 P"ystop+e1stop" ; configure active-low endstop for low end on Z via pin ystop

                                        ; Z-Probe
                                        M558 P1 C"zprobe.in+zprobe.mod" H5 F120 T6000 ; set Z probe type to unmodulated and the dive height + speeds
                                        G31 P500 X0 Y0 Z2.5 ; set Z probe trigger value, offset and trigger height
                                        M557 X15:215 Y15:195 S20 ; define mesh grid

                                        bed.g
                                        ; bed.g
                                        ; called to perform automatic bed compensation via G32
                                        ;
                                        ; generated by RepRapFirmware Configuration Tool v2.1.5 on Fri Jan 10 2020 16:18:31 GMT+0700 (Indochina Time)
                                        M561 ; clear any bed transform
                                        G29 ; probe the bed and enable compensation
                                        G28 ; home
                                        ;M401 ; deploy Z probe (omit if using bltouch)
                                        G30 P0 X250 Y250 Z-99999 ; probe near a leadscrew, half way along Y axis
                                        G30 P1 X250 Y250 Z-99999 S2 ; probe near a leadscrew and calibrate 2 motors
                                        ;M402 ; retract probe (omit if using bltouch)

                                        1 Reply Last reply Reply Quote 0
                                        • Vetiundefined
                                          Veti
                                          last edited by

                                          this has to be answerd by dc

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