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

    Update mesh tilt on every print?

    Scheduled Pinned Locked Moved
    Firmware wishlist
    3
    12
    1.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.
    • osteracundefined
      osterac
      last edited by osterac

      Hi all
      Can I have G29 probe many points (to make a new mesh, 99 for me) and G32 probe 3 points to update the tilt of the mesh? This would be like the ā€œG29 Jā€ function of UBL on marlin. Is there any way to do this on a duet? I want to do this because my bed is adjusted by spring loaded knobs so removing prints can push the bed side to side and mess everything up. When I was using marlin, this 3 point tilt update worked very well. I have a Duet 2 wifi BTW, Firmware 2.04, server 1.23, DWC 2.0.4. My printer is CoreXY.
      config.g
      bed.g
      homeall.g
      heightmap.csv
      (heightmap is a bit tilted, as you can see. It happens often and is a bit of a pain to fix - I usually end up turning the number of probe points down temporarily until I get it dialed in)

      Thanks!
      PS the printer would probe 3 out of the 4 corners of the bed to update the tilt.

      1 Reply Last reply Reply Quote 0
      • gtj0undefined
        gtj0
        last edited by

        You probably don't need to re-run the G29 for the 99 points every time unless you think that removing the print might actually change the surface profile more than just the tilt and you probably don't want to probe the 99 points with G32 to re-level the bed so...

        Instead of running a plain "G29" in your bed.g (which will use the 99 points from M557), use "G30" to probe the 3 points. Here's my bed.g...

        G30 P0 X0 Y13 Z-99999 ; probe near first leadscrew
        G30 P1 X238 Y450 Z-99999 ; probe near second leadscrew
        G30 P2 X460 Y13 Z-99999 S3 ; probe near third leadscrew
        

        Now when you run G32, it'll run bed.g and just probe the 3 points and you can do the adjustment based on the results. If you actually have 3 leadscrews, you can just roughly re-position the build plate after removing a print, then let the firmware make the adjustments for you.

        1 Reply Last reply Reply Quote 0
        • gtj0undefined
          gtj0
          last edited by

          Oh, here are the wiki pages that cover manual and automatic levelling:

          https://duet3d.dozuki.com/Wiki/Using_the_manual_bed_levelling_assistant
          https://duet3d.dozuki.com/Wiki/Bed_levelling_using_multiple_independent_Z_motors

          1 Reply Last reply Reply Quote 0
          • osteracundefined
            osterac
            last edited by osterac

            So what you are saying is to manually adjust the bed after each print to get it to once again match the height map?
            What I'm trying to to is get the printer to automatically update the height map before each print. If you have your printer probe the bed in the same place as the outer 3 corners of your height map, you can then update the tilt of the height map if your print bed has become tilted (like mine does). The topography of your bed isn't likely to change from print to print, but the tilt can. Marlin's UBL has this feature. This is how it is described (here) :

            [J < int >] 	
            
            Grid (or 3-Point) leveling:
            
                These options calculate a plane and adjust the existing mesh to the bed tilt.
                If a value is provided, probe a grid with the given number of points, squared.
                With no value, probe 3 points to find the plane of the bed.
            
            
            1 Reply Last reply Reply Quote 0
            • osteracundefined
              osterac
              last edited by

              So is there a feature like this or should I make a feature request?
              Thanks for the help.

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

                Moved to firmware wishlist as I don't think there is anything quite like this currently implemented.

                It's not uncommon to use true bed leveling or physical tilt correction using 2 or 3 motors, but I don't think there is anything currently that allows for adjusting the tilt of the heightmap itself in software. @dc42

                Z-Bot CoreXY Build | Thingiverse Profile

                1 Reply Last reply Reply Quote 0
                • gtj0undefined
                  gtj0
                  last edited by

                  The documentation isn't very clear on this but I thought G30 and G32 store the tilt and if there's no auto correction available, applies the tilt as a transform.

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

                    @gtj0 I'm not too sure about that. I think G30 just returns the position of a single point. G32 just calls bed.g. I don't think anything else special happens with either. But I don't know that for certain.

                    Z-Bot CoreXY Build | Thingiverse Profile

                    1 Reply Last reply Reply Quote 0
                    • gtj0undefined
                      gtj0
                      last edited by

                      If you look at the docs for G32...

                      S3 Transformation matrix is stored. Z bed height not calculated.
                      

                      That would imply that something is stored.

                      I might have to test this myself.

                      1 Reply Last reply Reply Quote 0
                      • gtj0undefined
                        gtj0
                        last edited by

                        I wonder what would happen if you did an M557 with 4 points, renamed bed.g to something else, then did a G32 S3.

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

                          Is that the old 5-point G32 matrix that has been deprecated?

                          Z-Bot CoreXY Build | Thingiverse Profile

                          1 Reply Last reply Reply Quote 0
                          • gtj0undefined
                            gtj0
                            last edited by

                            Beats me šŸ™‚ I've always used the 3 screw auto levelling.

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