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

    Servo deployed probe on Duet Maestro

    Scheduled Pinned Locked Moved
    Duet Hardware and wiring
    4
    86
    3.6k
    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
      last edited by Veti

      look at the homeall script i posted

      you need to run a M401 before the G30 and run a M402 afterwards.

      I'm not familiar enough with the probe to say if that is normal or not. I would have guessed that it should stay as untriggered regardless of deploy or retract status and only shown triggered when actually pushed up to break the optical beam.

      the probe is always triggerd in the retracted state. this is a good thing because if you forget to deploy or there is a problem it does not cause damage as it is triggered immediately

      Blacksheep99undefined 1 Reply Last reply Reply Quote 1
      • Blacksheep99undefined
        Blacksheep99 @Veti
        last edited by

        @Veti said in Servo deployed probe on Duet Maestro:

        look at the homeall script i posted

        you need to run a M401 before the G30 and run a M402 afterwards.

        I'm not familiar enough with the probe to say if that is normal or not. I would have guessed that it should stay as untriggered regardless of deploy or retract status and only shown triggered when actually pushed up to break the optical beam.

        the probe is always triggerd in the retracted state. this is a good thing because if you forget to deploy or there is a problem it does not cause damage as it is triggered immediately

        So sorry to clarify things but I'm changing a few things.

        I've done as you originally said and removed the inverted pin in the config.g for zprobe it now reports 1000 (red).

        ; Z-Probe
        M574 Z1 S1 										; Set endstops controlled by probe
        M950 S0 C"^zprobe.mod" 							; create servo pin 0 for BLTouch
        M558 P8 C"^zprobe.in" H150 F900 T6000 			; Set Z probe type to switch and the dive height + speeds
        G31 P50 X-50 Y-8 Z1.5 							;Set Z probe trigger value, offset and trigger height
        M557 X15:265 Y15:135 S20                        ; define mesh grid
        

        My home all

        G91                     ; relative positioning
        G1 H2 Z5 F6000          ; lift Z relative to current position
        G1 H1 X-285 Y-155 F1800 ; move quickly to X and Y axis endstops and stop there (first pass)
        G1 H2 X5 Y5 F6000       ; go back a few mm
        G1 H1 X-285 Y-155 F360  ; move slowly to X and Y axis endstops once more (second pass)
        G1 H1 Z-155 F360        ; move Z down stopping at the endstop
        G90                     ; absolute positioning
        M402
        G92 Z0                  ; set Z position to axis minimum (you may want to adjust this)
        

        When you say run M401 then G30 are you talking via the console to test its function? I just tried that and it reversed the bed down hitting the end stop and kept trying to go, I had to hit stop.

        Phaedruxundefined 1 Reply Last reply Reply Quote 0
        • Phaedruxundefined
          Phaedrux Moderator @Blacksheep99
          last edited by Phaedrux

          Your homeall isn't using the probe at all at this point, still just the endstop. Trying to control the probing manually isn't going to work very well. Better to script it out in the homing file at this point.

          If you want to continue to use the Z endstop, that's fine. Here's what I would add.

          M402 ; retract the pin just incase
          G91                     ; relative positioning
          G1 H2 Z5 F6000          ; lift Z relative to current position
          G1 H1 X-285 Y-155 F1800 ; move quickly to X and Y axis endstops and stop there (first pass)
          G1 X5 Y5 F6000       ; go back a few mm
          G1 H1 X-285 Y-155 F360  ; move slowly to X and Y axis endstops once more (second pass)
          G1 H1 Z-155 F360        ; move Z down stopping at the endstop
          G90                     ; absolute positioning
          G1 X105 Y150 Z5 F6000 ; move probe into position at bed center
          M401 ; deploy the probe
          G30 ; probe the bed
          M402 ; retract probe
          G1 X10 Y10 Z10 ; return to parked position
          

          Z-Bot CoreXY Build | Thingiverse Profile

          Blacksheep99undefined Phaedruxundefined 2 Replies Last reply Reply Quote 0
          • Blacksheep99undefined
            Blacksheep99 @Phaedrux
            last edited by

            @Phaedrux said in Servo deployed probe on Duet Maestro:

            Your homeall isn't using the probe at all at this point, still just the endstop. Trying to control the probing manually isn't going to work very well. Better to script it out in the homing file at this point.

            If you want to continue to use the Z endstop, that's fine. Here's what I would add.

            M402 ; retract the pin just incase
            G91                     ; relative positioning
            G1 H2 Z5 F6000          ; lift Z relative to current position
            G1 H1 X-285 Y-155 F1800 ; move quickly to X and Y axis endstops and stop there (first pass)
            G1 X5 Y5 F6000       ; go back a few mm
            G1 H1 X-285 Y-155 F360  ; move slowly to X and Y axis endstops once more (second pass)
            G1 H1 Z-155 F360        ; move Z down stopping at the endstop
            G90                     ; absolute positioning
            G1 X105 Y150 Z5 F6000 ; move probe into position at bed center
            M401 ; deploy the probe
            G30 ; probe the bed
            M402 ; retract probe
            G1 X10 Y10 Z10 ; return to parked position
            

            I feel stupid as the logic doesn't fit with my understanding. Home for the bed should be as far away from the nozzle as possible to my mind?

            I've just tried your homeall and I get the probe already triggered message.

            G28
            Error: Z probe already triggered at start of probing move
            

            Why do I need the G30 at all in the homeall? It's homeall just to park the head and bed out of the way?

            When I run a print that's when the printer should probe the bed shouldn't it? I thought this was G29 though.

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

              try a G4 P500 after the M401

              this will wait 500msec for the probe to deploy

              Blacksheep99undefined 1 Reply Last reply Reply Quote 0
              • Blacksheep99undefined
                Blacksheep99 @Veti
                last edited by

                @Veti said in Servo deployed probe on Duet Maestro:

                G4 P500

                Probe deploys okay now with no error however the bed goes down not up towards the print head. have to hit stop

                Vetiundefined 1 Reply Last reply Reply Quote 0
                • Phaedruxundefined
                  Phaedrux Moderator
                  last edited by Phaedrux

                  Home is where the endstop is. You have a Z min endstop defined, so to trigger it, the nozzle must go to the bed.

                  Most basically G30 is how the probe is used to find the bed surface. It lets the firmware know where the bed is in relation to the nozzle, much the same way as the endstop, except that it's mobile in X and Y, so it can be used for other things as well such as creating a heightmap of the bed surface to adjust for.

                  Usually when you have a probe you don't use a Z endstop at all unless you want to use a Z max endstop for trying to recover after a power loss.

                  @Blacksheep99 said in Servo deployed probe on Duet Maestro:

                  however the bed goes down not up towards the print head. have to hit stop

                  I think your z axis is backwards. Your conception of homing away from the bed has confused you.

                  Can you post a photo of your bed?
                  Where is the Z endstop located?
                  Z- should make the bed and nozzle move closer together
                  Z+ should make them go farther apart.

                  Z-Bot CoreXY Build | Thingiverse Profile

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

                    @Blacksheep99 said in Servo deployed probe on Duet Maestro:

                    Probe deploys okay now with no error however the bed goes down not up towards the print head. have to hit stop

                    have you made sure that you z movement is correct?

                    1 Reply Last reply Reply Quote 0
                    • Blacksheep99undefined
                      Blacksheep99 @Phaedrux
                      last edited by

                      @Phaedrux said in Servo deployed probe on Duet Maestro:

                      Home is where the endstop is. You have a Z min endstop defined, so to trigger it, the nozzle must go to the bed.

                      Most basically G30 is how the probe is used to find the bed surface. It lets the firmware know where the bed is in relation to the nozzle, much the same way as the endstop, except that it's mobile in X and Y, so it can be used for other things as well such as creating a heightmap of the bed surface to adjust for.

                      Usually when you have a probe you don't use a Z endstop at all unless you want to use a Z max endstop for trying to recover after a power loss.

                      @Blacksheep99 said in Servo deployed probe on Duet Maestro:

                      however the bed goes down not up towards the print head. have to hit stop

                      I think your z axis is backwards. Your conception of homing away from the bed has confused you.

                      Can you post a photo of your bed?
                      Where is the Z endstop located?
                      Z- should make the bed and nozzle move closer together
                      Z+ should make them go farther apart.

                      Okay I think the problem is between the printer and the PC! I had it in my head that +Z should move the bed towards the head not the other way around.

                      I'm using the Z switch for home as that is how the printer was built. I'm trying to repair it.

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

                        @Blacksheep99 said in Servo deployed probe on Duet Maestro:

                        I'm using the Z switch for home as that is how the printer was built. I'm trying to repair it.

                        with a z probe you dont need the switch anymore

                        Blacksheep99undefined 1 Reply Last reply Reply Quote 0
                        • Blacksheep99undefined
                          Blacksheep99 @Veti
                          last edited by

                          @Veti said in Servo deployed probe on Duet Maestro:

                          @Blacksheep99 said in Servo deployed probe on Duet Maestro:

                          I'm using the Z switch for home as that is how the printer was built. I'm trying to repair it.

                          with a z probe you dont need the switch anymore

                          Okay, great so disconnect it and redefine things in my config.g? I noticed the first line of your zprobe commands had a line to define Z Endstops by zprobe, this is what you are referring to then?

                          1 Reply Last reply Reply Quote 0
                          • Phaedruxundefined
                            Phaedrux Moderator
                            last edited by

                            Ok, that should help things a bit. Change the direction of rotation for the Z axis driver in your config.g with the M569 command

                            https://duet3d.dozuki.com/Wiki/Gcode#Section_M569_Set_motor_driver_direction_enable_polarity_and_step_pulse_timing

                            The endstop switch could be repurposed for a Z max endstop switch for using in power loss recovery. See what I mean here:

                            https://duet3d.dozuki.com/Guide/Ender+3+Pro+and+Duet+Maestro+Guide+Part+5:+Upgrades/54#s212

                            Z-Bot CoreXY Build | Thingiverse Profile

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

                              you dont need to disconnect it. you can leave it conected if you want.

                              just you need to adjust your homeall and homez to use the probe instead of the endstop.
                              like you have done in the homeall.

                              1 Reply Last reply Reply Quote 0
                              • Phaedruxundefined
                                Phaedrux Moderator @Phaedrux
                                last edited by

                                @Phaedrux said in Servo deployed probe on Duet Maestro:

                                Your homeall isn't using the probe at all at this point, still just the endstop. Trying to control the probing manually isn't going to work very well. Better to script it out in the homing file at this point.

                                If you want to continue to use the Z endstop, that's fine. Here's what I would add.

                                M402 ; retract the pin just incase
                                G91                     ; relative positioning
                                G1 H2 Z5 F6000          ; lift Z relative to current position
                                G1 H1 X-285 Y-155 F1800 ; move quickly to X and Y axis endstops and stop there (first pass)
                                G1 X5 Y5 F6000       ; go back a few mm
                                G1 H1 X-285 Y-155 F360  ; move slowly to X and Y axis endstops once more (second pass)
                                G1 H1 Z-155 F360        ; move Z down stopping at the endstop
                                G90                     ; absolute positioning
                                G1 X105 Y150 Z5 F6000 ; move probe into position at bed center
                                M401 ; deploy the probe
                                G30 ; probe the bed
                                M402 ; retract probe
                                G1 X10 Y10 Z10 ; return to parked position
                                

                                The homeall I showed uses both the endstop and the probe. You could use the endstop as a first fast pass followed by the probe. It's totally up to you how you want to use it.

                                Z-Bot CoreXY Build | Thingiverse Profile

                                1 Reply Last reply Reply Quote 0
                                • Blacksheep99undefined
                                  Blacksheep99
                                  last edited by

                                  Thanks to you both.

                                  So my plan of attack now is to revert the homeall and home z such that they just use the zprobe.

                                  I also need to modify the config.g to reverse the motor on Z

                                  Agree?

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

                                    yes that is correct

                                    Blacksheep99undefined 1 Reply Last reply Reply Quote 0
                                    • Blacksheep99undefined
                                      Blacksheep99 @Veti
                                      last edited by

                                      @Veti Do I take the Z endstop out?

                                      ; Endstops
                                      M574 X1 S1 P"xstop"                             ; configure active-high endstop for low end on X via pin xstop
                                      M574 Y1 S1 P"ystop"                             ; configure active-high endstop for low end on Y via pin ystop
                                      M574 Z1 S1 P"zstop"                             ; configure active-high endstop for low end on Z via pin zstop
                                      
                                      Vetiundefined 1 Reply Last reply Reply Quote 0
                                      • Vetiundefined
                                        Veti @Blacksheep99
                                        last edited by

                                        @Blacksheep99 said in Servo deployed probe on Duet Maestro:

                                        M574 Z1 S1 P"zstop" ; configure active-high endstop for low end on Z via pin zstop

                                        change this to
                                        M574 Z1 S2 ; configure Z-probe endstop for low end on Z

                                        Blacksheep99undefined 1 Reply Last reply Reply Quote 0
                                        • Blacksheep99undefined
                                          Blacksheep99 @Veti
                                          last edited by

                                          @Veti said in Servo deployed probe on Duet Maestro:

                                          M574 Z1 S2 ; configure Z-probe endstop for low end on Z

                                          Same on the zprobe?

                                          ; Z-Probe
                                          M574 Z1 S1 										; Set endstops controlled by probe
                                          M950 S0 C"^zprobe.mod" 							; create servo pin 0 for BLTouch
                                          M558 P8 C"^!zprobe.in" H150 F900 T6000 			; Set Z probe type to switch and the dive height + speeds
                                          G31 P50 X-50 Y-8 Z1.5 							;Set Z probe trigger value, offset and trigger height
                                          M557 X15:265 Y15:135 S20                        ; define mesh grid
                                          
                                          1 Reply Last reply Reply Quote 0
                                          • Phaedruxundefined
                                            Phaedrux Moderator
                                            last edited by

                                            @Veti said in Servo deployed probe on Duet Maestro:

                                            M574 Z1 S2

                                            You only need the M574 for Z once. Delete the other instance using S1.

                                            Unless you wanted to use it as a z max endstop, in which case you physically move the endstop to the high end of Z travel, and set M574 Z2 S1. Then you can create a separate homing macro for the times when you want to home Z at the high end. This is useful when you have a print on the bed after a power loss.

                                            Z-Bot CoreXY Build | Thingiverse Profile

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