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

    Duet 3 6HC with Openbuilds XYZ Probe

    Scheduled Pinned Locked Moved Solved
    CNC
    6
    51
    4.5k
    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.
    • Yveskeundefined
      Yveske @dc42
      last edited by Yveske

      @dc42 Thanks !
      In my test both X and Y axis performs the same.
      Both go in positive direction first, don't stop immediately but move the probe half a centimeter, change direction to never stop again...

      I'm running with the new CNC interface. I installed it with the duet decoupled and didn't check. Now homing always goes in the wrong direction for Z. I changed M574 Z2 into Z1 and back

      ; Drives
      M569 P0.0 S0                                ; physical drive 0.0 direction (0 = backwards, 1 = forwards (default 1))
      M569 P0.1 S0                                ; physical drive 0.1 direction (0 = backwards, 1 = forwards (default 1))
      M569 P0.2 S0                                ; physical drive 0.2 direction (0 = backwards, 1 = forwards (default 1))
      M569 P0.3 S1                                ; physical drive 0.3 direction (0 = backwards, 1 = forwards (default 1))
      
      ; Endstops
      M574 X1 S1 P"!io0.in"                       ; configure active-high endstop for low  end on X via pin io0.in
      M574 Y1 S1 P"!io1.in+!io2.in"               ; configure active-high endstop for low  end on Y via pin io1.in
      M574 Z2 S1 P"!io3.in"                       ; configure active-high endstop for high end on Z via pin io3.in
      
      1 Reply Last reply Reply Quote 0
      • dc42undefined
        dc42 administrators
        last edited by

        Please create a separate thread for the homing problem.

        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
          last edited by dc42

          @Yveske, if you are brave enough to try it, there is an unofficial build of 3.3beta2+1 with M675 fixes at https://www.dropbox.com/sh/6203euyyobllic5/AABTHIbn7F_maK9p-oy7vq3Ea?dl=0. Upgrade notes since beta 2 are at https://github.com/Duet3D/RepRapFirmware/wiki/Changelog-RRF-3.x-Beta-&-RC, see the Beta3 (in preparation) section.

          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

          Yveskeundefined 1 Reply Last reply Reply Quote 0
          • Yveskeundefined
            Yveske @dc42
            last edited by

            @dc42 Sorry couldn't get it to install.
            Uploaded the zip and during install complains about some missing SDiap.bin file
            I uploaded all 3 files from "Updating Duet 3 from RRF3.0 Beta 12 to 3.0 Final via DWC" and tried again to no avail...
            Content of sys directory see below

            Please advise...

            bed.g
            config.g
            Duet3Firmware_MB6HC.bin
            homeall.g
            homex.g
            homey.g
            homez.g
            pause.g
            resume.g
            sleep.g
            stop.g
            tfree0.g
            Touch probe.g
            tpost0.g
            tpre0.g
            config.g.bak
            dwc-settings.json
            Duet3iap_spi_MB6HC.bin
            Duet3_SDiap_MB6HC.bin
            Duet3iap_sd_MB6HC.bin
            
            dc42undefined 1 Reply Last reply Reply Quote 0
            • Phaedruxundefined
              Phaedrux Moderator
              last edited by Phaedrux

              If you're running in SBC mode you might not be able to use the beta versions that way.

              https://duet3d.dozuki.com/Wiki/Getting_Started_With_Duet_3#Section_Software_Installation

              If you wish to use the latest unstable DSF components, you can run the following commands instead:

              wget -q https://pkg.duet3d.com/duet3d.gpg
              wget -q https://pkg.duet3d.com/duet3d-unstable.list
              sudo mv duet3d.gpg /etc/apt/trusted.gpg.d/
              sudo mv duet3d-unstable.list /etc/apt/sources.list.d/duet3d-unstable.list
              sudo chown root:root /etc/apt/trusted.gpg.d/duet3d.gpg
              sudo chown root:root /etc/apt/sources.list.d/duet3d-unstable.list
              Please be aware that the unstable repository is meant for beta testers and that it can contain experimental code. For production use, the stable repository is strongly recommended.

              Then update with sudo apt update && sudo apt upgrade

              Z-Bot CoreXY Build | Thingiverse Profile

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

                @Yveske said in Duet 3 6HC with Openbuilds XYZ Probe:

                Uploaded the zip and during install complains about some missing SDiap.bin file

                You will find that file in the official 3.3beta1 and 3.3beta2 releases on Github (it's the same file in both releases). Upload that file first, then uploading and installing the new Duet3Firmware_MB6HC.bin file should work.

                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

                Yveskeundefined 1 Reply Last reply Reply Quote 0
                • Yveskeundefined
                  Yveske @dc42
                  last edited by

                  @dc42 Installation went ok this time.
                  The probe doesn't move while executing M675 (not from macro and not from DWC) and displays a red popup "Probe was not triggered during probing move"

                  ; Touch probe.g
                  ; called to find workpiece bottom left corner via G38.2
                  ;
                  
                  ; Display message without time-out and allow to position the bit
                  M291 T-1 S3 X1 Y1 Z1 P"Make sure the bit is positioned in the hole of the touch probe well beneath the top surface" R"Touch probe"
                  
                  ; Find center of cavity
                  M675 X R8 F100 P0                 ; Find center in X axis
                  M675 Y R8 F100 P0                 ; Find center in Y axis
                  
                  ; Set bit above center of probe
                  G0 Z15                            ; rapid move Z axis 15 mm
                  G0 X27 Y27                        ; rapid move X and Y axis to middle of probe
                  
                  ; Probe Z component
                  G38.2 Z-15 F100                   ; seek until the probe circuit is closed Z-axis -15 mm
                  
                  ; Return bit to center of hole
                  G0 Z15                            ; rapid move Z axis 15 mm
                  G0 X-27 Y-27                      ; rapid move X and Y axis to center of cavity
                  G0 Z-15                           ; rapid move Z axis -15 mm
                  
                  G10 P0 L20 X0 Y0 Z10              ; store relative probe offset for coordinates system 0
                  
                  1 Reply Last reply Reply Quote 0
                  • dc42undefined
                    dc42 administrators
                    last edited by

                    Odd, it's working for me. Have you checked that the Z probe reading in DWC reads 0 when the probe is not triggered, and 1000 when it is triggered?

                    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

                    Yveskeundefined 3 Replies Last reply Reply Quote 0
                    • Yveskeundefined
                      Yveske @dc42
                      last edited by

                      @dc42 Sorry, will have to check further this afternoon, have to run now...

                      1 Reply Last reply Reply Quote 0
                      • Yveskeundefined
                        Yveske @dc42
                        last edited by

                        @dc42 I don't see the probe on screen with the new (beta) CNC UI.
                        Is there a way to revert to the old CNC UI?

                        b63f173c-d00c-4aa3-96d8-c426e3fcc1e4-image.png

                        Sindariusundefined 1 Reply Last reply Reply Quote 0
                        • Sindariusundefined
                          Sindarius @Yveske
                          last edited by

                          @Yveske you’ll just need to install the current dwc to replace the dwc-cnc version

                          Yveskeundefined 1 Reply Last reply Reply Quote 0
                          • Yveskeundefined
                            Yveske @Sindarius
                            last edited by

                            @Sindarius Thanks !!!

                            1 Reply Last reply Reply Quote 0
                            • Yveskeundefined
                              Yveske @dc42
                              last edited by

                              @dc42 Success !!!
                              It works but only after homing.

                              Thanks a lot !!!

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

                                Thanks, I'll add an error message if you use M675 before the axis is flagged as having been homed.

                                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
                                • Yveskeundefined
                                  Yveske
                                  last edited by

                                  Tested 3.3RC2 and the touch probe is still working 👍 👍 👍

                                  Just wanted to share my final version of my touch probe macro

                                  ; Touch probe.g
                                  ; called to find workpiece bottom left corner via G38.2 and M675
                                  ;
                                  ; If the printer hasn't been homed, home it
                                  if !move.axes[0].homed || !move.axes[1].homed || !move.axes[2].homed
                                    G28
                                  
                                  ; Display message without time-out and allow to position the bit
                                  M291 T-1 S3 X1 Y1 Z1 P"Make sure the bit is positioned in the hole of the touch probe well beneath the top surface" R"Touch probe"
                                  
                                  ; Find center of cavity
                                  M675 X R8 F100 K0                 ; Find center in X axis
                                  M675 Y R8 F100 K0                 ; Find center in Y axis
                                  
                                  ; Set bit above center of probe
                                  G91                               ; relative positioning
                                  G0 Z15                            ; rapid move Z axis 15 mm
                                  G0 X27 Y27                        ; rapid move X and Y axis to middle of probe
                                  
                                  ; Probe Z component
                                  G38.2 Z-25                        ; seek until the probe circuit is closed Z-axis 25 mm
                                  
                                  ; Return bit to center of hole
                                  G0 Z15                            ; rapid move Z axis 15 mm
                                  G0 X-27 Y-27                      ; rapid move X and Y axis to center of cavity
                                  G0 Z-10                           ; rapid move Z axis -10 mm
                                  
                                  G10 P1 L20 X0 Y0 Z15              ; store relative probe offset for coordinates system 1
                                  
                                  
                                  CthulhuLabsundefined 1 Reply Last reply Reply Quote 2
                                  • CthulhuLabsundefined
                                    CthulhuLabs @Yveske
                                    last edited by CthulhuLabs

                                    @yveske In 3.3rc3 G38.2 moves towards an absolute machine position. So:

                                    G38.2 Z-25
                                    

                                    Is trying to move to absolute position -25 Z. It is not move down 25 millimeters. As such if you are at a position below -25 Z your G38.2 will actually move up and away from the probe not down. The way I fixed this is to set it to:

                                    G38.2 Z-500
                                    

                                    which is greater than my Z travel down. Only problem would be that if my probe does not trigger for some reason my spindle is going to crash into the work piece and try to keep going. Here is my version:

                                    var ProbeThickness = 13;
                                    var ProbeXWidth = 58;
                                    var ProbeYWidth = 58;
                                    var CoordSystem	= 20;
                                    
                                    ; If the printer hasn't been homed, home it
                                    if !move.axes[0].homed || !move.axes[1].homed || !move.axes[2].homed
                                    	G28
                                    
                                    M291 P"Insert a Dowel Pin into your spindle and center it in the probes hole" R"Probing" S3 X1 Y1 Z1
                                    
                                    ; Find center of cavity
                                    M675 X R2 F300 K0						; Find center in X axis
                                    M675 Y R2 F300 K0						; Find center in Y axis
                                    
                                    G10 P1 L{var.CoordSystem} X0 Y0					; Store X and Y as zero in CoordSystem
                                     
                                    ; Set bit above center of probe
                                    G91								; relative positioning
                                    G0 Z{var.ProbeThickness + 2}					; rapid move Z axis over the surface of the probe
                                    G0 X{var.ProbeXWidth / 2} Y{var.ProbeYWidth / 2}		; rapid move X and Y axis to middle of probe
                                     
                                    ; Probe Z component
                                    G38.2 Z-500							; seek down till you hit the probe
                                    G0 Z5								; rapid move Z axis 5 mm
                                    
                                    G10 P1 L{var.CoordSystem} Z{var.ProbeThickness + 5}             ; store relative probe offset for coordinates system 1
                                    G0 X{(var.ProbeXWidth / 2) * -1} Y{(var.ProbeYWidth / 2) * -1}	; go back over the hole
                                    
                                    G90								; Absolute positioning
                                    

                                    @dc42 Is this intended behavior? If so would it be possible to add an option to do relative moves or for G38.2 to recognize whether you have the machine in relative positioning mode or absolute positioning mode. I would like G38.2 to only probe down by the thickness of the probe plus 2mm which should ensure it makes contact assuming everything is setup correctly. If not it should not really collide with anything.

                                    Yveskeundefined dc42undefined 2 Replies Last reply Reply Quote 0
                                    • Yveskeundefined
                                      Yveske @CthulhuLabs
                                      last edited by

                                      @cthulhulabs Thanks, wouldn't have caught that !

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

                                        @cthulhulabs said in Duet 3 6HC with Openbuilds XYZ Probe:

                                        @dc42 Is this intended behavior? If so would it be possible to add an option to do relative moves or for G38.2 to recognize whether you have the machine in relative positioning mode or absolute positioning mode. I would like G38.2 to only probe down by the thickness of the probe plus 2mm which should ensure it makes contact assuming everything is setup correctly.

                                        G38.2 uses absolute coordinates as defined by the NIST GCode standard, https://tsapps.nist.gov/publication/get_pdf.cfm?pub_id=823374. If you want to use relative coordinates in G38.2 then you can calculate the positions, something like this:

                                        G38.2 Z{move.axes[2].userPosition-25}
                                        

                                        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

                                        Yveskeundefined CthulhuLabsundefined 2 Replies Last reply Reply Quote 1
                                        • Yveskeundefined
                                          Yveske @dc42
                                          last edited by

                                          @dc42 & @cthulhulabs Tested old (just for fun) and new and of course the old was plain wrong and the new worked like a charm !

                                          Thanks guys !

                                          1 Reply Last reply Reply Quote 0
                                          • CthulhuLabsundefined
                                            CthulhuLabs @dc42
                                            last edited by CthulhuLabs

                                            @dc42 Thanks! I am really loving the flexibility that the object model and meta commands allow for.

                                            @Yveske here is my final version:

                                            var ProbeThickness = 13;
                                            var ProbeXWidth = 58;
                                            var ProbeYWidth = 58;
                                            var CoordSystem	= 20;
                                            
                                            ; If the printer hasn't been homed, home it
                                            if !move.axes[0].homed || !move.axes[1].homed || !move.axes[2].homed
                                            	G28
                                            
                                            M291 P"Insert a Dowel Pin into your spindle and center it in the probes hole" R"Probing" S3 X1 Y1 Z1
                                            
                                            ; Find center of cavity
                                            M675 X R2 F300 K0							; Find center in X axis
                                            M675 Y R2 F300 K0							; Find center in Y axis
                                            
                                            G10 P1 L{var.CoordSystem} X0 Y0						; Store X and Y as zero in CoordSystem
                                             
                                            ; Set bit above center of probe
                                            G91									; relative positioning
                                            G0 Z{var.ProbeThickness + 2}						; rapid move Z axis over the surface of the probe
                                            G0 X{var.ProbeXWidth / 2} Y{var.ProbeYWidth / 2}			; rapid move X and Y axis to middle of probe
                                             
                                            ; Probe Z component
                                            G38.2 Z{move.axes[2].userPosition - (var.ProbeThickness + 2.25)}	; seek until the probe circuit is closed Z-axis 25 mm
                                            G0 Z5									; rapid move Z axis 5 mm
                                            
                                            G10 P1 L{var.CoordSystem} Z{var.ProbeThickness + 5}			; store relative probe offset for coordinates system 1
                                            G0 X{(var.ProbeXWidth / 2) * -1} Y{(var.ProbeYWidth / 2) * -1}		; go back over the hole
                                            
                                            G90									; Absolute positioning
                                            
                                            Yveskeundefined 1 Reply Last reply Reply Quote 1
                                            • First post
                                              Last post
                                            Unless otherwise noted, all forum content is licensed under CC-BY-SA