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

    Changes in RRF3 M577 Probing Grid?

    Scheduled Pinned Locked Moved Solved
    Tuning and tweaking
    3
    8
    378
    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.
    • mwolterundefined
      mwolter
      last edited by mwolter

      Finishing up the upgrade to RRF3 for a Duet 2 and noticed a difference from RRF2. Did a quick search in WHATS_NEW_RRF3.md and found nothing regarding this.

      I am noticing that the z probe offset is no longer taken into account when performing a mesh grid compensation (G29). Below are the settings applicable for my BLTouch.

      M208 X-8 Y-18 Z0 S		; Set axis minima 330x330 bed XY steps 161.62
      M208 X337 Y338 Z330 S0		; Set axis maxima 330x330 bed
      M950 S0 C"exp.heater7"		; Assign pin index 0 to exp.heater7
      M574 Z1 S2			; Set endstops controlled by probe
      M558 P9 C"^zprobe.in" H3 F120 T24000	; set Z probe type to bltouch and the dive height + speeds
      G31 X0 Y-28.58 Z2.75 P500	; 200301 bltouch in front
      M557 X23:303 Y11:301 P10	; 200305 Probe Area - updated for -28mm offset of the z probe
      

      For instance, when performing a G29 the nozzle moves to the first probe point (X23 Y11) and not the BLTouch probe pin. In RRF2.05.1 the offset would be taken into account and the probe pin would be placed at that point. This causes an issue since the probe pin is off the bead (since it's 28mm in front of the nozzle) and the nozzle crashes into the bed.

      Edit:
      Interesting thing is that the z probe offset is taken into account with a G30. For instance, below is the code used for tramming the bed and the probe is placed at the points indicated, not the nozzle.

      G30 P0 X10 Y165 Z-99999		; first pass, probe near a leadscrew, half way along Y axis
      G30 P1 X320 Y165 Z-99999 S2	; first pass, probe near a leadscrew and calibrate 2 motors
      

      Current Firmware

      FIRMWARE_NAME: RepRapFirmware for Duet 2 WiFi/Ethernet FIRMWARE_VERSION: 3.01-RC3 ELECTRONICS: Duet Ethernet 1.02 or later FIRMWARE_DATE: 2020-02-29b4
      

      2nd Edit
      Changed M577 to use P10 instead of S10:10. S values appear to cause it to completely fail with the error "Error: No valid grid defined for bed probing". I'll make a new post about this.

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

        @mwolter said in Changes in RRF3 M577 Probing Grid?:

        ince it's 28mm in front of the nozzle

        But your G31 Y is negative. If it's in front, the Y value should be positive.

        Z-Bot CoreXY Build | Thingiverse Profile

        mwolterundefined 1 Reply Last reply Reply Quote 0
        • mwolterundefined
          mwolter @Phaedrux
          last edited by

          @Phaedrux Even if 0,0 is in the front left corner of the bed? Wouldn't that make the probe Y location less than the nozzle?

          1 Reply Last reply Reply Quote 0
          • jens55undefined
            jens55
            last edited by

            This post is deleted!
            1 Reply Last reply Reply Quote 0
            • Phaedruxundefined
              Phaedrux Moderator
              last edited by

              @mwolter said in Changes in RRF3 M577 Probing Grid?:

              @Phaedrux Even if 0,0 is in the front left corner of the bed? Wouldn't that make the probe Y location less than the nozzle?

              Ah yes, of course you're right.

              @mwolter said in Changes in RRF3 M577 Probing Grid?:

              In RRF2.05.1 the offset would be taken into account and the probe pin would be placed at that point.

              I don't think this has ever been the case though. It will only disregard points it can't physically reach.

              Z-Bot CoreXY Build | Thingiverse Profile

              mwolterundefined 1 Reply Last reply Reply Quote 0
              • mwolterundefined
                mwolter @Phaedrux
                last edited by

                @Phaedrux Thanks for your help, I'll do more testing.

                1 Reply Last reply Reply Quote 0
                • mwolterundefined
                  mwolter
                  last edited by mwolter

                  Changed the grid to be the following and ran a G29. This time the probe was on the bed and the nozzle didn't crash. That's a plus, but I still don't think it's taking the z probe offset into account.

                  M557 X23:303 Y35:335 P10					 ; 200308 Probe Area - change to move the area further back
                  

                  Here's a screenshot of the mesh height map. Please don't pay attention to the flatness, need to look into that. But instead, notice the point indicated. It is indicating the nozzle location, not where the probe actually was. For instance when it says X23 Y35 the probe was actually at X23 Y6. If this is the case, the entire mesh is too far back by ~28mm, the same distance as the z probe offset. @dc42 Can you look into this?

                  Screen Shot 2020-03-08 at 12.37.16 PM.jpg

                  1 Reply Last reply Reply Quote 0
                  • mwolterundefined
                    mwolter
                    last edited by

                    @dc42
                    I think I have found the issue. The values in G31 are being cleared if M558 is run again. This is also what is causing the issue I'm experiencing with the mesh probing grid.

                    In my original post, you'll find the z probe parameters in config.g.

                    In bed.g, I have the following command to increase the dive height in case the bed was extremely out of level. This often happens when the power is turned off, one of the two lead screws has a little less resistance and the bed lowers on that side.

                    M558 P9 H5 F120 T24000    
                    

                    But this instance of M558 didn't clear G31.

                    In bed.g, after the initial tramming run, the following was ran to lower the dive height and additional tramming is done, similar to your example conditional delta leveling script.

                    M558 P9 C"^zprobe.in" H2 F120 T24000 						
                    

                    This instance used to lower the dive height resets G31. Please see the screenshot below.

                    Screen Shot 2020-03-08 at 6.16.22 PM.jpg

                    Rerunning M558 on RRF2 to increase the dive height did not do this. I have since moved the following commands to a new macro bltouch_config.g located in the /sys folder. This macro is run in config.g at powerup and if the dive height needs to be reset.

                    M558 P9 C"^zprobe.in" H2 F120 T24000 						
                    ;
                    ; G31 - +Z Nozzle closer to bed, -Z Nozzle further from bed
                    ;
                    G31 X0 Y-28.58 Z2.75 P500					
                    M557 X23:303 Y11:301 P10				
                    

                    After making this change G29 is now properly probing the mesh grid with the z probe offset and taking into account with the BLTouch pin is 28mm in front of the nozzle.

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