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

Maybe Bug: Redoing height maps add sometimes random offsets

Scheduled Pinned Locked Moved
Tuning and tweaking
4
10
568
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.
  • undefined
    dgrat
    last edited by dgrat 5 Jan 2022, 11:12 1 May 2022, 08:36

    I think this is a firmware bug, I noticed already since a while. It is still present in 3.4.
    When I redo height maps the height maps shift sometimes by a constant amount.
    Here I played with a z-offset of 1.9 mm and 1.95 mm. The offset became quiet drastic (+/- up to 0.5 mm).
    I noticed that behavior on all my printers. This behavior is rather random. Sometimes the height maps are fine.

    The trigger height seems always correct and does not change, because the reported z-value upon triggering is always the same value.
    Seems like the firmware is adding a random number to the height estimate.
    After powering off the printer entirely (no reset via firmware), I often get a correct height map again.

    Any ideas?

    Steps to reproduce:
    Duet Wifi 2
    call: G31 P500 X-25.5 Y37 Z1.95

    Example shows a G29 after a print I ended.

    1_9.png 1_95_ii.png 1_95.png

    And here just after redoing after soft-reset which disappeared only after head-reset

    8651ad51-98af-4f44-ac1a-b83c8ed731c5-grafik.png

    undefined undefined 2 Replies Last reply 1 May 2022, 08:47 Reply Quote 0
    • undefined
      dgrat @dgrat
      last edited by 1 May 2022, 08:47

      This post is deleted!
      1 Reply Last reply Reply Quote 0
      • undefined
        fcwilt @dgrat
        last edited by 1 May 2022, 14:02

        @dgrat

        Are you setting the Z=0 Datum using a single G30 are the center of the bed or perhaps at one of the grid points?

        You have to do that when creating the height map and when loading the height map.

        Frederick

        Printers: a small Utilmaker style, a small CoreXY and a E3D MS/TC setup. Various hotends. Using Duet 3 hardware running 3.4.6

        undefined 1 Reply Last reply 2 May 2022, 11:31 Reply Quote 0
        • undefined
          dgrat @fcwilt
          last edited by 2 May 2022, 11:31

          @fcwilt
          I thought that is only necessary before starting a print?
          Where is written that G29 requires that and why the offset changes?

          undefined 1 Reply Last reply 2 May 2022, 12:50 Reply Quote 0
          • undefined
            bricor @dgrat
            last edited by 2 May 2022, 12:50

            @dgrat
            https://docs.duet3d.com/User_manual/Connecting_hardware/Z_probe_mesh_bed

            Partway down under the heading:
            Running bed mesh compensation

            Establish a Z=0 datum

            undefined 1 Reply Last reply 3 May 2022, 15:16 Reply Quote 1
            • undefined
              dgrat @bricor
              last edited by 3 May 2022, 15:16

              @bricor

              I wonder if G29 depends on another command e.g. g30 to create a datum.
              Shouldn't be heightmap creation defined in a gcode macro which the user defines?

              3150ee38-6477-45b3-9234-48da001003a9-grafik.png

              undefined undefined 2 Replies Last reply 3 May 2022, 15:21 Reply Quote -1
              • undefined
                Stephen6309 @dgrat
                last edited by Stephen6309 5 Mar 2022, 15:22 3 May 2022, 15:21

                @dgrat I use this for my mesh.g file, it makes sure the printer is homed, and load the heightmap.csv, if it doesn't exist, creates it:

                M561 ; clear any bed transform
                while iterations < #move.axes & move.axes[iterations].visible
                if !move.axes[iterations].homed
                G28
                break
                M290 R0 S0 ; clear baby stepping
                G29 S1
                if result > 1 ; if no heightmap.csv, make one
                G29 S0
                1 Reply Last reply Reply Quote 1
                • undefined
                  fcwilt @dgrat
                  last edited by 3 May 2022, 16:39

                  @dgrat said in Maybe Bug: Redoing height maps add sometimes random offsets:

                  @bricor

                  I wonder if G29 depends on another command e.g. g30 to create a datum.
                  Shouldn't be heightmap creation defined in a gcode macro which the user defines?

                  3150ee38-6477-45b3-9234-48da001003a9-grafik.png

                  G29 executes mesh.g if it exists, as it should.

                  The assumption is that mesh.g contains all the commands needed to create the desired height map.

                  And since you need to set the Z=0 Datum before creating/loading a height map mesh.g likely is going to include a G30 to set the Z=0 Datum.

                  Now some folks who home with a Z probe rely on that to set the Z=0 Datum. I simply include the G30 in the mesh.g file so I don't have to concern myself with what came before. Also mesh.g is going to work at the current bed temperature which might be different from the bed temperature when homing.

                  Frederick

                  Printers: a small Utilmaker style, a small CoreXY and a E3D MS/TC setup. Various hotends. Using Duet 3 hardware running 3.4.6

                  undefined 1 Reply Last reply 3 May 2022, 18:43 Reply Quote 2
                  • undefined
                    dgrat @fcwilt
                    last edited by 3 May 2022, 18:43

                    Thanks all for gcode and explanation

                    undefined 1 Reply Last reply 3 May 2022, 19:17 Reply Quote 0
                    • undefined
                      fcwilt @dgrat
                      last edited by 3 May 2022, 19:17

                      @dgrat said in Maybe Bug: Redoing height maps add sometimes random offsets:

                      Thanks all for gcode and explanation

                      Always glad to help if I can. If I cannot help I try very hard to not make things worse. 😉

                      Frederick

                      Printers: a small Utilmaker style, a small CoreXY and a E3D MS/TC setup. Various hotends. Using Duet 3 hardware running 3.4.6

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