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

    How to speed up bed leveling?

    Scheduled Pinned Locked Moved Solved
    Tuning and tweaking
    5
    13
    570
    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.
    • Derek.Fundefined
      Derek.F
      last edited by Derek.F

      Hi, my first post!

      My bed leveling routine (MBC) takes several minutes due to the number of points and speed of travel between points. I believe there may be a couple of things I can do to reduce the MBC time.

      1. Lower the initial height of the probe so it travels less
      2. Increase the speed between probe points

      After a few hours of research, I have come to the following conclusions:

      1. I can edit the H value in the following line to H5. Found in web console/settings/System Editor/config.g
        M558 P5 X0 Y0 Z1 H10 F300 T6000
        My understanding is that this will start the probe 5mm lower. Is that correct? ie: shorten the vertical distance moved.

      2. G29 is invoked in my slicer (Prusa Slicer 2.8.0) under Printers/Custom G code/Start G-code. Since there is no matrix defined, it looks like I need to get into the firmware and edit the G29_probegrid section. However, this seems a daunting task requiring much more than simply editing a figure (ie: obtaining source code, installing editing software on my PC, compiling, uploading). Is there any gcode I can use in my slicer or the System Editor that will enable me to speed up movement between probe points?

      This is part of the start routine that includes G29:

      M104 S160 ; ADDED BY DF ON 5 AUG 2022 TO KEEP NOZZLE TEMP NO HIGHER THAN 160 DEG. THIS PREVENTS FILAMENT EXTRUSION DURING MESH BED LEVELING.
      M42 P25 S0
      M42 P26 S0
      M42 P24 S255
      M280 P7 S160
      T0
      M572 D0 S0.05
      G92 E0
      G1 E-0.3 F1800
      G32
      G29
      G1 X0 Y0 F4800
      G92 E0
      G1 E0.3 F540
      G92 E0

      SYSTEM INFORMATION
      Troodon V1 400 x 400 x 500
      CoreXY style printer
      Firmware: RepRapFirmware for Duet 2 WiFi/Ethernet
      Firmware electronics: Duet WiFi 1.02 or later + DueX5
      Firmware version: 2.03RC3 (2019-05-25b5)
      Web interface version: 1.22.6

      Using PRUSA Slicer 2.8.0

      FYI, I have modified the Vivedino supplied start routine in my slicer as follows (this represents the current state of my capabilities):

      G1 Z50 F1800 ; ADDED BY DF 7 AUG 2022 TO RAISE EXTRUDER TO PROVIDE MORE SPACE TO CLEAN THE NOZZLE AS IT HEATS
      M109 S[first_layer_temperature] ; ADDED BY DF 5 AUG 2022 TO SET NOZZLE TEMP TO FIRST LAYER TEMP & WAIT TILL REACHED
      G1 E-0.30000 F1800
      G1 Z0.200 F200 ; EDITED BY DF 7 AUG 2022 TO LOWER THE NOZZLE SLOWLY GIVING A LITTLE MORE TIME TO REMOVE ANY EXCESS FILAMENT (WAS F1000)
      G1 X200 Y0 E43.5631 F1000
      G1 E-0.30000 F5400
      ; G1 X205 Y200 F18000 (COMMENTED OUT BY DF 5 AUG 2022 TO PREVENT THE DOT ON THE BED)
      ; G1 E0.30000 F5400 (COMMENTED OUT BY DF 5 AUG 2022 TO PREVENT THE DOT ON THE BED)

      Also, I believe the documentation is incorrect about M558. It says:
      "Set Z probe type, dive height, probing speed, travel speed between probe points, and probe recovery time"
      However, I believe the speed value relates to vertical probe speed, not "travel speed between probe points" as the "Summary of gcode commands related to mesh bed compensation" states in the MBC documentation. https://docs.duet3d.com/en/User_manual/Connecting_hardware/Z_probe_mesh_bed

      Cheers,

      Derek

      jay_s_ukundefined droftartsundefined 2 Replies Last reply Reply Quote 0
      • jay_s_ukundefined
        jay_s_uk @Derek.F
        last edited by jay_s_uk

        @Derek-F yes, changing H to 5 will reduce the probe height. I usually have mine set at 5 for z probing, and the initial bed levelling but for any more I change the value to 2 as I know the bed is going to be pretty level after the first pass.
        You can speed up the movement between probe points using the T value, which is in mm/min.
        Both the H and the T values are in M558

        Owns various duet boards and is the main wiki maintainer for the Teamgloomy LPC/STM32 port of RRF. Assume I'm running whatever the latest beta/stable build is

        Derek.Fundefined 1 Reply Last reply Reply Quote 0
        • Derek.Fundefined
          Derek.F @jay_s_uk
          last edited by

          @jay_s_uk Wow, thanks for the quick and helpful answers.

          My research today indicated that T was a timeout for the probing operation. Mine is currently T6000. (I presumed that if it didn't hit the bed within 6 seconds, it would not continue to try and probe that point).

          I got this from ChatGPT:

          M558 P5 I1 R0.2 F100 H2 A1 T24000 ; Enable strain gauge probe, active low, retract 0.2mm after trigger, feed rate 100mm/min, trigger height 2mm, debounce 1ms, timeout 24s
          "This example configures a strain gauge probe (P5), sets it to active low (I1), retracts 0.2mm after triggering (R0.2), sets the feed rate to 100 mm/min (F100), defines the trigger height as 2mm (H2), sets a debounce time of 1ms (A1), and specifies a timeout of 24 seconds (T24000) for the probing operation."

          Your reply indicates that the T6000 is the travel speed between points. ie: 100mm/sec. (6000/60). I know the printer will do 300mm/sec as this is the "non print move" speed. I think I'll try 200 mm/s first then 300.

          Your comments are welcome.

          Thanks again

          Derek

          jay_s_ukundefined 1 Reply Last reply Reply Quote 0
          • jay_s_ukundefined
            jay_s_uk @Derek.F
            last edited by

            @Derek-F chatGPT don't know much
            https://docs.duet3d.com/en/User_manual/Reference/Gcodes#m558-set-z-probe-type

            Owns various duet boards and is the main wiki maintainer for the Teamgloomy LPC/STM32 port of RRF. Assume I'm running whatever the latest beta/stable build is

            Derek.Fundefined 1 Reply Last reply Reply Quote 0
            • droftartsundefined
              droftarts administrators @Derek.F
              last edited by

              @Derek-F said in How to speed up bed leveling?:

              I can edit the H value in the following line to H5. Found in web console/settings/System Editor/config.g
              M558 P5 X0 Y0 Z1 H10 F300 T6000
              My understanding is that this will start the probe 5mm lower. Is that correct? ie: shorten the vertical distance moved.

              Yes, see @jay_s_uk's answer. You could probably set it lower if you have some kind of bed/gantry levelling first, see https://docs.duet3d.com/en/User_manual/Connecting_hardware/Z_probe_auto_levelling. I have mine set to H3.

              G29 is invoked in my slicer (Prusa Slicer 2.8.0) under Printers/Custom G code/Start G-code. Since there is no matrix defined, it looks like I need to get into the firmware and edit the G29_probegrid section. However, this seems a daunting task requiring much more than simply editing a figure (ie: obtaining source code, installing editing software on my PC, compiling, uploading). Is there any gcode I can use in my slicer or the System Editor that will enable me to speed up movement between probe points?

              No, you don't need to hack the firmware! Just use M557, set it in config.g or mesh.g. I find it expedient to home Z before and after running a bed mesh. See https://docs.duet3d.com/en/User_manual/Connecting_hardware/Z_probe_mesh_bed#define-the-mesh-size-and-spacing

              To speed up probing even more, at the beginning of a print you could probe just in the area of the print, which will reduce the number of points you need to probe. See this thread: https://forum.duet3d.com/post/302519

              Also, I believe the documentation is incorrect about M558. It says:

              What?! I spat out my tea! And then checked... phew, sorry, you're wrong! M558 F parameter is the probing speed, T parameter is the travel speed between points. Both are limited by the maximum values set for the axis in config.g.

              Ian

              Bed-slinger - Mini5+ WiFi/1LC | RRP Fisher v1 - D2 WiFi | Polargraph - D2 WiFi | TronXY X5S - 6HC/Roto | CNC router - 6HC | Tractus3D T1250 - D2 Eth

              Derek.Fundefined 1 Reply Last reply Reply Quote 1
              • Derek.Fundefined
                Derek.F @jay_s_uk
                last edited by

                @jay_s_uk Hmm, I see that!

                Thanks for your clarification.

                Cheers,

                Derek
                PS, How do I mark your reply as the solution? is there a button?

                jay_s_ukundefined 1 Reply Last reply Reply Quote 0
                • jay_s_ukundefined jay_s_uk marked this topic as a question
                • jay_s_ukundefined jay_s_uk has marked this topic as solved
                • jay_s_ukundefined jay_s_uk has marked this topic as solved
                • jay_s_ukundefined
                  jay_s_uk @Derek.F
                  last edited by

                  @Derek-F there you go

                  Owns various duet boards and is the main wiki maintainer for the Teamgloomy LPC/STM32 port of RRF. Assume I'm running whatever the latest beta/stable build is

                  1 Reply Last reply Reply Quote 0
                  • Derek.Fundefined
                    Derek.F @droftarts
                    last edited by

                    @droftarts Thanks for confirming and pointing me to the print area probe limit.
                    FYI, the code does already home before and after MBC.

                    Glad I was wrong - sorry for tea tea mess. ☹

                    Cheers,

                    Derek

                    Derek.Fundefined 1 Reply Last reply Reply Quote 0
                    • Derek.Fundefined
                      Derek.F @Derek.F
                      last edited by

                      @Derek-F Just to confirm, changing the T6000 to T18000 and the H10 to H5 has done exactly what I wanted and reduced the MBC to less than 1/3 of the original time. Thanks to all.

                      Cheers,

                      Derek

                      1 Reply Last reply Reply Quote 1
                      • Danny Jayundefined
                        Danny Jay
                        last edited by Danny Jay

                        Hey Guys,

                        I'm struggling with the same issue, my maximum axis speed is set to 36000mm/min which equals 600mm/s, but no matter what I input as T value it's still traversing at 33.3 mm/s which is awfully slow for 90 points one a 1000*1000 build plate.

                        https://youtube.com/shorts/EADCz_VwGls?si=ZgHFzYnbh_czCJaQ

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

                          Share your current config.g and any meshes being called before your leveling routine. homing files, mesh.gm etc.

                          Z-Bot CoreXY Build | Thingiverse Profile

                          Danny Jayundefined 2 Replies Last reply Reply Quote 0
                          • Danny Jayundefined
                            Danny Jay @Phaedrux
                            last edited by Danny Jay

                            This post is deleted!
                            1 Reply Last reply Reply Quote 0
                            • Danny Jayundefined
                              Danny Jay @Phaedrux
                              last edited by

                              @Phaedrux

                              Nevermind, stupid me found the issue while posting up the codes. I've adjusted the F value but not the T value. It now does indeed work 🙄

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