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

    Guide to Marlin's Fast BLTouch Probing feature on Duet

    Scheduled Pinned Locked Moved
    General Discussion
    bltouch fast marlin probe feature rrf
    8
    37
    8.4k
    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.
    • Phaedruxundefined
      Phaedrux Moderator @oliof
      last edited by

      @oliof said in Guide to Marlin's Fast BLTouch Probing feature on Duet:

      Newer BLTouch probes do not autoretract anymore.

      Can you point me to more details?

      Z-Bot CoreXY Build | Thingiverse Profile

      1 Reply Last reply Reply Quote 0
      • oliofundefined
        oliof
        last edited by

        I don't have a source at hand, but it seems to be the case since BlTouch Smart v2.2. It definitely is in 3.1 probes (see https://github.com/MarlinFirmware/Marlin/pull/14015 -- unfortunately the originally linked video where high speed mode without stow/retract being showcased has been pulled from Youtube it seems).

        ghost opened this pull request in MarlinFirmware/Marlin

        closed BLTOUCH Tweaks and V3.1 new command #14015

        <>RatRig V-Minion Fly Super5Pro RRF<> V-Core 3.1 IDEX k*****r <> RatRig V-Minion SKR 2 Marlin<>

        Herniczundefined 1 Reply Last reply Reply Quote 0
        • Herniczundefined
          Hernicz @oliof
          last edited by

          @oliof They do not autoretract during a single "multi-touch" probing move or they can do an entire 441 point mesh without retraction?

          There are known knowns and known unknowns, things we know that we don't know. But there are also unknown unknowns.

          oliofundefined 1 Reply Last reply Reply Quote 0
          • oliofundefined
            oliof @Hernicz
            last edited by

            @hernicz the latter.

            <>RatRig V-Minion Fly Super5Pro RRF<> V-Core 3.1 IDEX k*****r <> RatRig V-Minion SKR 2 Marlin<>

            Herniczundefined 1 Reply Last reply Reply Quote 0
            • Herniczundefined
              Hernicz @oliof
              last edited by Hernicz

              @oliof Are you aware that the link of the pull request you posted is from May 2019 while I wrote this guide in Feb 2020? Also the pull request is for Marlin not for RepRap.

              I've seen Marlins HS BLTouch in action back then and because RepRap didn't have this feature I figured out a workaround (basically ported the feature). As far as I know RRF still doesn't have this feature but now you can have 2 different probing speeds in M558. Since I changed my Duet2 WiFi to a Duet 3 MB6HC using the same BLTouch, I need to put "M280 P0 S60" after every deploy comand otherwise the pin gets retracted.

              As far as I know this feature still only can be achieved on RepRap if you set your probe type to P5, deploy and retract manually and prevent retraction with "M280 P0 S60" if necessary.

              To prevent the nozzle to ram into the heatbed or give "probe already triggered..." error during a single G30 command, by default the probe type has to be P9, only switching to P5 if necessary. This is why I wrote lenghts about modular probe config.

              There are known knowns and known unknowns, things we know that we don't know. But there are also unknown unknowns.

              oliofundefined dc42undefined 2 Replies Last reply Reply Quote 0
              • oliofundefined
                oliof @Hernicz
                last edited by

                @hernicz yes I am aware of that, the Marlin Merge Request is only here as a reference to the fact that BLTouch has the ability to not forcibly retract after probing. This is in support of your work here, not against it (-;

                <>RatRig V-Minion Fly Super5Pro RRF<> V-Core 3.1 IDEX k*****r <> RatRig V-Minion SKR 2 Marlin<>

                Herniczundefined 1 Reply Last reply Reply Quote 0
                • Herniczundefined
                  Hernicz @oliof
                  last edited by Hernicz

                  @oliof Yes it has the ability (it had it back then as well), but if the firmware doesn't keep it deployed it will get retracted (at least after every probe point). On my Duet3 6HC it retracts even as a P5 I need servo commands to keep it deployed.

                  By the way I experimented with using short dive height, sliding the pin on the heatbed with very good results. Unfortunately sliding the pin on the heatbed will eventually wear it off (how fast depends on surface), so this method is definitely not advised if you want accuracy in the long run (and don'twant to change the pin).

                  The biggest problem with BLTouch that the pin has an unnecessary >1mm travel until it gets triggered, so @ 1mm probing speed thats 1 sec / touch. It would be nice if we would have a probe with adjustable pin deployment so we could deploy just under the trigger point of the probe and set dive height a bit more than the highest point of the heatbed (compared to Z0)

                  In this video the probing speed is 1mm/s, but because the dive height is so short it is really rapid.

                  https://youtu.be/Vq_Jz201ndw

                  There are known knowns and known unknowns, things we know that we don't know. But there are also unknown unknowns.

                  CCS86undefined 1 Reply Last reply Reply Quote 1
                  • CCS86undefined
                    CCS86 @Hernicz
                    last edited by

                    @hernicz said in Guide to Marlin's Fast BLTouch Probing feature on Duet:

                    @oliof Yes it has the ability (it had it back then as well), but if the firmware doesn't keep it deployed it will get retracted (at least after every probe point). On my Duet3 6HC it retracts even as a P5 I need servo commands to keep it deployed.

                    By the way I experimented with using short dive height, sliding the pin on the heatbed with very good results. Unfortunately sliding the pin on the heatbed will eventually wear it off (how fast depends on surface), so this method is definitely not advised if you want accuracy in the long run (and don'twant to change the pin).

                    The biggest problem with BLTouch that the pin has an unnecessary >1mm travel until it gets triggered, so @ 1mm probing speed thats 1 sec / touch. It would be nice if we would have a probe with adjustable pin deployment so we could deploy just under the trigger point of the probe and set dive height a bit more than the highest point of the heatbed (compared to Z0)

                    In this video the probing speed is 1mm/s, but because the dive height is so short it is really rapid.

                    https://youtu.be/Vq_Jz201ndw

                    Have you tested faster probing speeds? I didn't see a real benefit in probing so slowly.

                    Herniczundefined 1 Reply Last reply Reply Quote 0
                    • Herniczundefined
                      Hernicz @CCS86
                      last edited by

                      @CCS86 Depends on the Z axis rigidity. Changing the probing speed will possibly develop an offset, but not necessarily affect repeatability.

                      For those who have their threaded rod doesn't touch the motor shaft in the coupler, so their Z axis sits on a springy coupling it's definitely a good idea to probe slow.

                      My repeatablility tests:
                      (F2 is basically F30 you cannot go slower than that)

                      -F2: G32 bed probe heights: 0.054 0.054 0.054 0.054 0.054 0.054 0.054 0.057 0.054 0.054 0.054 0.054 0.054 0.054 0.054, mean 0.055, deviation from mean 0.001

                      -F300: G32 bed probe heights: 0.057 0.057 0.057 0.057 0.057 0.057 0.057 0.057 0.057 0.057 0.057 0.057 0.057 0.057 0.057, mean 0.057, deviation from mean 0.000

                      -F600: G32 bed probe heights: 0.049 0.047 0.049 0.049 0.047 0.047 0.047 0.047 0.049 0.047 0.047 0.047 0.049 0.049 0.047, mean 0.048, deviation from mean 0.001

                      -F1200: G32 bed probe heights: 0.049 0.049 0.049 0.049 0.049 0.049 0.049 0.049 0.049 0.049 0.049 0.049 0.049 0.049 0.049, mean 0.049, deviation from mean 0.000

                      -F2400: G32 bed probe heights: 0.067 0.067 0.067 0.069 0.067 0.067 0.067 0.067 0.067 0.067 0.067 0.067 0.067 0.067 0.067, mean 0.067, deviation from mean 0.001

                      There are known knowns and known unknowns, things we know that we don't know. But there are also unknown unknowns.

                      CCS86undefined 1 Reply Last reply Reply Quote 0
                      • CCS86undefined
                        CCS86 @Hernicz
                        last edited by

                        @Hernicz

                        Your results are odd. I would expect that if Z stage acceleration was compressing something elastically in the coupler, the increases in speed would keep increasing the apparent offset. Not the case. It bounces around.

                        But, you have perfect repeatability, so who cares if the offset changes? Just pick a fast speed, do a single layer test print to check and adjust the probe offset value and you are done. What is the downside? You save time every time you probe.

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

                          @Hernicz said in Guide to Marlin's Fast BLTouch Probing feature on Duet:

                          To prevent the nozzle to ram into the heatbed or give "probe already triggered..." error during a single G30 command, by default the probe type has to be P9, only switching to P5 if necessary.

                          That's incorrect. For any probe type other than P9, if you want to do a sequence of G30 probes then you should do M401 before the first one in order to deploy the probe, and M402 after the last one to retract it. Then the probe will remain deployed between the G30 commands.

                          BLTouch goes into an error state if it remains triggered for too long. That's why when doing mesh probing, if the probe type is P9 then RRF retracts the probe every time it triggers. If your Z axis is fast enough then you can get away with type P8 instead, which will leave the probe deployed between mesh probe points.

                          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

                          Herniczundefined 1 Reply Last reply Reply Quote 0
                          • Herniczundefined
                            Hernicz @CCS86
                            last edited by

                            @CCS86 My Z axis is rigid (it wasn't on my previous machine hence the leftover slow probing speed)

                            The nonlinearity of the offset at different speeds might be down to the signal from the BL-Touch to the Duet. Also the P parameter of G31 might affect results.

                            Interestingly G32 manages to get to deviation 0.000 in one sequence @ F300, while @F2 (F30) it requires multiple sequences (I have a high dive height/fast/low precision initial sequence before the actual slow/precision probing with a separate probe config in case the bed tilt is severe). (My bed.g is automated with meta commands)

                            Even if the probing speed is slow, by keeping the probe deployed eliminates the wait time for probe deployment/retraction

                            There are known knowns and known unknowns, things we know that we don't know. But there are also unknown unknowns.

                            1 Reply Last reply Reply Quote 0
                            • Herniczundefined
                              Hernicz @dc42
                              last edited by

                              @dc42 Agree and in any sequence it should work like that, but in case a single G30 command is entered in console I think it's better if the probe type is reverted to P9 (basically this is the only reason I made it in a way that it defaults back to original behavior).

                              There are known knowns and known unknowns, things we know that we don't know. But there are also unknown unknowns.

                              1 Reply Last reply Reply Quote 0
                              • Herniczundefined Hernicz referenced this topic
                              • yoshimitsuspeedundefined yoshimitsuspeed referenced this topic
                              • First post
                                Last post
                              Unless otherwise noted, all forum content is licensed under CC-BY-SA