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

    mesh results inconsistent with leveling

    Scheduled Pinned Locked Moved
    Tuning and tweaking
    6
    29
    2.2k
    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.
    • jltxundefined
      jltx
      last edited by

      I have a 3 stepper Z axis and run a bed level before running mesh probe. The leveling shows 0.002mm variance between leveling points. After the mesh probe, if I look at the equivalent points in the mesh they are way larger, like 0.05mm or more. The same gantry and probe are doing both leveling and mesh so I can't figure out why I am seeing this discrepancy. They run in the same macro, back to back, at the same temp. What should I check?

      jltxundefined zaptaundefined 2 Replies Last reply Reply Quote 0
      • jltxundefined
        jltx @jltx
        last edited by

        @jltx Is there any way to adjust the individual Z steppers?

        martin7404undefined 1 Reply Last reply Reply Quote 0
        • martin7404undefined
          martin7404 @jltx
          last edited by

          @jltx The reason might be your bed have some warping. I have 600x450 bed that after trmaing 3 points with 3 mottors gives 0.002 and g29 gives within 0.07 to 0.1.
          When I made 3 poi t leveling and then just check 3 diferent places on bed there is diference upmto 0.1.
          My bed is 10 mm alu with kinematic coupling and PEI on steel sheet.
          I mesured tje bed with dial indicator and in fact at working temp tjere is 0.08 deviation

          Muldex IDEX Duet2+Duex5
          Custom CoreXY 600x400 Hemera , Duet3+Toolboard+1HCL closed loop
          Sapphire Pro with Duet2, with closed-loop motors
          custom high temp E3D tool changer with Duet2+Duex

          jltxundefined 1 Reply Last reply Reply Quote 0
          • jltxundefined
            jltx @martin7404
            last edited by

            @martin7404 a warped bed will still attempt to level at the 3 pivot points. When you mesh there will be many points that are off due to the warp, but the same pivot points should line up the same way bed leveling left them. Mine don’t. I’m not changing temperature in between.

            martin7404undefined gloomyandyundefined 2 Replies Last reply Reply Quote 0
            • martin7404undefined
              martin7404 @jltx
              last edited by

              @jltx are the 3 points off the same 0.05

              Muldex IDEX Duet2+Duex5
              Custom CoreXY 600x400 Hemera , Duet3+Toolboard+1HCL closed loop
              Sapphire Pro with Duet2, with closed-loop motors
              custom high temp E3D tool changer with Duet2+Duex

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

                Please post an image of the heightmap and your printer. Also post your config, homing files, and bed.g. What firmware version?

                Z-Bot CoreXY Build | Thingiverse Profile

                jltxundefined 1 Reply Last reply Reply Quote 0
                • gloomyandyundefined
                  gloomyandy @jltx
                  last edited by

                  @jltx It might also help if you post the output from your bed.g when performing bed levelling.

                  jltxundefined 1 Reply Last reply Reply Quote 0
                  • jltxundefined
                    jltx @Phaedrux
                    last edited by

                    @phaedrux I'm now on 3.4b7 but saw this with b6 initially.

                    pivot points circled
                    height.png

                    bed.g config-2.g

                    1 Reply Last reply Reply Quote 0
                    • jltxundefined
                      jltx @gloomyandy
                      last edited by jltx

                      @gloomyandy c4ebb993-f7ff-4d34-bde5-5b840bbe7702-image.png

                      this is not the exact one run before the above HeightMap but the results are typical.

                      jltxundefined gloomyandyundefined 2 Replies Last reply Reply Quote 0
                      • jltxundefined
                        jltx @martin7404
                        last edited by jltx

                        @martin7404 no, see output I added. large variation at the pivot points.

                        1 Reply Last reply Reply Quote 0
                        • jltxundefined
                          jltx @jltx
                          last edited by

                          @gloomyandy here is the HeightMap.csv

                          RepRapFirmware height map file v2 generated at 2021-12-19 03:27, min error -0.056, max error 0.175, mean 0.051, deviation 0.081
                          axis0,axis1,min0,max0,min1,max1,radius,spacing0,spacing1,num0,num1
                          X,Y,25.00,275.00,25.00,275.00,-1.00,125.00,125.00,3,3
                          0.161, 0.072, 0.014
                          0.114, -0.010, -0.050
                          0.175, 0.036, -0.056

                          jltxundefined 1 Reply Last reply Reply Quote 0
                          • jltxundefined
                            jltx @jltx
                            last edited by

                            @jltx Hold on, I'm investigating something...

                            jltxundefined 1 Reply Last reply Reply Quote 0
                            • gloomyandyundefined
                              gloomyandy @jltx
                              last edited by

                              @jltx What point are you using to set set your z=0 in the height map (it looks like it is the centre of the bed from your height map)?

                              Looking at the bed.g output it looks like a plane passing through your 3 selected probe points does not also pass through your z=0 point. Because of this even when your bed is level there will be an offset and so all of the motors will be driven a small amount up/down to try and correct this offset. You can see this in the bed.g motor correction output with all being moved a similar amount in the same direction. Because of this I'd expect that same offset (about 0.02) to be shown at the the same points in your height map. I've had similar issues.

                              There are a couple of possible fixes you could try:

                              1. When running bed.g perform an additional G30 at one of the selected probe points (probably first is best) to set a z=0 point that coincides with the plane you using to perform the bed levelling.
                              2. Probe more than the minimum of three points and include the point you home to as one of the extra points. I use this method and actually probe the four corners of the bed (well just in from them) and the centre point (that I use for homing). In this case the plane will be over constrained and RRF will use a best fit mechanism to define it.

                              Method 1 should remove the offset from the bed.g output, but because your z home point will still not be on that plane you will continue to see an offset in your height map, that is basically the difference between your z=0 height and the plane through your pivot points.

                              Method 2 is not mentioned in the Duet guides but is what I've been using for some time. Personally I think it gives better results as it takes into account more of the bed and not just the pivot points. In this case your bed.g output and your height map will probably continue to show and offset (but probably a smaller one than you are seeing now). Again this offset will be the difference between the Z=0 height and the best fit plane applied to your bed.g points.

                              Oh and in both cases make sure that you re-home Z afer your bed.g adjustments.

                              Hope the above makes some sort of sense. If you try the above make sure you are ready to emergency stop things the first few times you try it. It can be easy to get the points and/or the correction wrong!

                              Having said all of that your posted bed map seems to show a slope from one side to the other which I would not expect to see if bed.g has done its job correctly.

                              Can you post your bed_probe_points.g so that we can see the actual points being probed when running bed.g.

                              jltxundefined 1 Reply Last reply Reply Quote 1
                              • jltxundefined
                                jltx @jltx
                                last edited by jltx

                                @jltx crap. I forgot I had moved my leveling points outboard a bit to get closer to the pivot points and this moved them a few mm off from my mesh points. But I thought I can't be off >0.1mm Z in just a few mm, so I took a higher resolution mesh and see that I have a horribly distorted bed. So the actual level points are much closer together in Z but if you move in just a bit you will get a large Z variation. However, the (now) precise leveling points are still not within the tolerance that leveling established. I'm seeing 0.013 delta (much better than 0.1) which is higher than the 0.001 coming out of leveling. But it doesn't rally matter when the bed is so bad. I'm not sure what happened to the plate. It used to be very flat and I treated it very gently during the rebuild.

                                1c1beacf-d03f-4c17-8686-0068614f672f-image.png

                                1 Reply Last reply Reply Quote 0
                                • jltxundefined
                                  jltx @gloomyandy
                                  last edited by jltx

                                  @gloomyandy Is it important to re-zero the Z to the level point? I assumed this would all be compensated correctly. My Z endstop is not a Z=0 so I adjust for that in my G31. If I run a G30 and this changes where Z=0 is on every run due to temp variation, etc. won't that screw up my offset? I need to mull on that.

                                  So over sampling the bed in leveling is ok? The algorithm with do a good job averaging? I can try that. I think I will avoid the far left edge since it is such an outlier.

                                  gloomyandyundefined 1 Reply Last reply Reply Quote 0
                                  • gloomyandyundefined
                                    gloomyandy @jltx
                                    last edited by

                                    @jltx Is there a reason why you don't use your probe to set z=0? Unless you have a very good reason not to (like maybe a tool changer or something) then I'd say that using the probe to set z=0 is a good idea especially so since you are using the probe to level the bed.

                                    I'd not go overboard on the number of points you use in your bed.g routine, I've certainly never tested more than 5 points (which is what I use, close to the bed corners plus centre).

                                    jltxundefined 1 Reply Last reply Reply Quote 0
                                    • jltxundefined
                                      jltx @gloomyandy
                                      last edited by jltx

                                      @gloomyandy I got bootstrapped from someone else’s config and they did not have that. So no good reason. Are you saying doing a G30 S-2 at one of the leveling points?

                                      I tried to do 5 points and unfortunately my bed is so whacked it cannot find a solution within 0.02.

                                      fcwiltundefined 1 Reply Last reply Reply Quote 0
                                      • fcwiltundefined
                                        fcwilt @jltx
                                        last edited by fcwilt

                                        @jltx said in mesh results inconsistent with leveling:

                                        @gloomyandy I got bootstrapped from someone else’s config and they did not have that. So no good reason. Are you saying doing a G30 S-2 at one of the leveling points?

                                        I tried to do 5 points and unfortunately my bed is so whacked it cannot find a solution within 0.02.

                                        There is a process called Setting the Z=0 Datum. This involves moving the probe to a fixed XY location, like the center of the bed, and then executing a single G30.

                                        This process needs to be done:

                                        • after leveling the bed with G32
                                        • before creating a height map with G29 S0
                                        • before loading that height map with G29 S1

                                        Bed leveling can be done multiple times as needed. Using the conditional code features of firmware 3.3 and later you can put code into bed.g that will run the leveling process until specified degree of levelness is obtained.

                                        Frederick

                                        Printers: a E3D MS/TC setup and a RatRig Hybrid. Using Duet 3 hardware running 3.4.6

                                        jltxundefined 1 Reply Last reply Reply Quote 1
                                        • jltxundefined
                                          jltx @fcwilt
                                          last edited by

                                          @fcwilt said in mesh results inconsistent with leveling:

                                          @jltx said in mesh results inconsistent with leveling:

                                          @gloomyandy I got bootstrapped from someone else’s config and they did not have that. So no good reason. Are you saying doing a G30 S-2 at one of the leveling points?

                                          I tried to do 5 points and unfortunately my bed is so whacked it cannot find a solution within 0.02.

                                          There is a process called Setting the Z=0 Datum. This involves moving the probe to a fixed XY location, like the center of the bed, and then executing a single G30.

                                          This process needs to be done:

                                          • after leveling the bed with G32
                                          • before creating a height map with G29 S0
                                          • before locating that height map with G29 S1

                                          OK. I did not see that documented in https://duet3d.dozuki.com/Wiki/Bed_levelling_using_multiple_independent_Z_motors
                                          I have been printing just fine without doing that. But I will update my macro. Thanks.

                                          Bed leveling can be done multiple times as needed. Using the condition code features of firmware 3.3 and later you can put code into bed.g that will run the leveling process until specified degree of levelness is obtained.

                                          right, I do exactly this. See my bed.g posted above.

                                          Frederick

                                          1 Reply Last reply Reply Quote 0
                                          • jltxundefined
                                            jltx
                                            last edited by

                                            @gloomyandy @fcwilt I’m still not clear on the purpose of the Z=0. Maybe the confusion is I have a Voron with a mechanical Z end stop that is used to set the tool Z relative to bed. The inductive probe is only used to level the bed and probe a mesh for bed correction. All of that is relative. Do I need this extra step of Z=0? What exact command would that be? Since I’m not currently doing that, what bad things might happen? I appreciate the help.

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