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

    Mesh Calibration Issues (Duet Maestro 1.0, FW 2.02, BLTouch)

    Scheduled Pinned Locked Moved
    Tuning and tweaking
    4
    28
    1.9k
    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.
    • grizewaldundefined
      grizewald @ClassicStyle
      last edited by grizewald

      @classicstyle

      G32 causes the macro 'bed.g' to be called. There's nothing that requires you to perform a mesh levelling before every print, that's the whole idea with having a command to load a saved mesh.

      This is what my bed.g looks like:

      ; bed.g
      ; called to perform automatic bed compensation via G32
      ;
      M561 ; clear any bed transforms to start levelling from scratch
      G28 ; Home all
      G29 S1 ; Load heightmap.csv and activate it

      That's it! I create a new levelling mesh every once in a while via a separate macro which warms up the bed and print head to 60C/130C before it probes a grid of 196 points.

      My homeall.g macro, which is called when G28 is run, performs a lead screw compensation after the initial homing of X, Y and Z. Once the lead screw compensation is done, it levels Z again, just in case the lead screw compensation changed the Z homing height.

      So, my slicer's start code contains a G32, but the macro only loads and activates a previously created mesh rather than creating a new one.

      Oh, one last thing. My slicer's start code also warms up the bed and print head to 60C/130C before the G32 is executed. That way, everything is set up to match the conditions under which I created the stored mesh.

      After returning from the G32, the start code then sets the bed and print head to the actual printing temperatures before the print itself starts.

      ClassicStyleundefined 1 Reply Last reply Reply Quote 1
      • ClassicStyleundefined
        ClassicStyle @grizewald
        last edited by

        @grizewald said in Mesh Calibration Issues (Duet Maestro 1.0, FW 2.02, BLTouch):

        @classicstyle

        G32 causes the macro 'bed.g' to be called. There's nothing that requires you to perform a mesh levelling before every print, that's the whole idea with having a command to load a saved mesh.

        That's the piece I was mentally missing, thank you! I added the G32 to the start code and have the G29 S1 added to bed.g. Wish me luck! Or don't, in any case I'm going to give it a go shortly!

        Thanks again for the generous information @grizewald!

        grizewaldundefined 1 Reply Last reply Reply Quote 0
        • ClassicStyleundefined
          ClassicStyle
          last edited by

          Someone mentioned an image of my calibration. I upped the sample count to 225, and here's what I got:
          0_1565935642756_50801fb9-f0af-407a-b7df-4173c88f3624-image.png

          1 Reply Last reply Reply Quote 0
          • Vetiundefined
            Veti
            last edited by

            that is not a good base. nearly a mm difference between highest and lowest point.

            1 Reply Last reply Reply Quote 0
            • grizewaldundefined
              grizewald @ClassicStyle
              last edited by

              @classicstyle said in Mesh Calibration Issues (Duet Maestro 1.0, FW 2.02, BLTouch):

              @grizewald said in Mesh Calibration Issues (Duet Maestro 1.0, FW 2.02, BLTouch):

              @classicstyle

              G32 causes the macro 'bed.g' to be called. There's nothing that requires you to perform a mesh levelling before every print, that's the whole idea with having a command to load a saved mesh.

              That's the piece I was mentally missing, thank you! I added the G32 to the start code and have the G29 S1 added to bed.g. Wish me luck! Or don't, in any case I'm going to give it a go shortly!

              Thanks again for the generous information @grizewald!

              No problem and good luck! Looking at your height map, you'll need it.

              My bed is far from flat, but it's nowhere near as bad as yours.

              Height map

              1 Reply Last reply Reply Quote 0
              • ClassicStyleundefined
                ClassicStyle
                last edited by

                Yeah, my build surface is about as smooth as 80 grit sandpaper, which really sucks cause I honestly thought it was very flat.

                Has anyone ever tried floating out the surface of an aluminum build plate with some catalyzed resin-like products, then polishing it?

                1 Reply Last reply Reply Quote 0
                • ClassicStyleundefined
                  ClassicStyle
                  last edited by

                  Is there a way to verify that mesh compensation is occurring? (besides it just working)?

                  Also, I'm hoping this is the case, but does compensation interpolate between data points?

                  grizewaldundefined Phaedruxundefined 2 Replies Last reply Reply Quote 0
                  • grizewaldundefined
                    grizewald @ClassicStyle
                    last edited by

                    @classicstyle It does interpolate, which is why a large number of points is a good idea.

                    To see if mesh compensation is being used, you can:

                    a. Issue an M122 command at the console after finishing a print. The report that comes back will tell you if mesh compensation is active.
                    b. Watch the Z steppers as you print. You should see them moving to adjust the Z height on longer moves.

                    Looking at how your bed is below the zero point at three corners, are you sure there is not more you can do mechanically to level the bed? How is the bed attached to your Z axis?

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

                      @classicstyle said in Mesh Calibration Issues (Duet Maestro 1.0, FW 2.02, BLTouch):

                      Is there a way to verify that mesh compensation is occurring? (besides it just working)?

                      Print an STL like this once with mesh disabled and once with it enabled. That will show how effective it is.

                      0_1566148941064_bedlevel_nozzle_0.4_200x200-0.3-0.8.stl

                      Z-Bot CoreXY Build | Thingiverse Profile

                      1 Reply Last reply Reply Quote 1
                      • ClassicStyleundefined
                        ClassicStyle @grizewald
                        last edited by

                        @grizewald Thanks for the clarity about m122.

                        I actually have been trying things most of the night and this morning. It seems like every time the wind changes direction, the corners that are above or below zero change. I'm running a dual-z hypercube with 4 12mm guides. I think I'm going to have to figure out a pilot bearing for the top of the cube to make the lead screws more stable cause they do allow the build plate to wobble some.

                        1 Reply Last reply Reply Quote 0
                        • grizewaldundefined
                          grizewald
                          last edited by

                          As an example, this is what my levelling mesh looks like:

                          alt text

                          Not too pretty considering the bed is a 310mm square Anycubic Ultrabase on top of a 329mm square 3mm thick aluminium plate.

                          I'm considering heating it up as high as my heater will go (around 120C) to see if it might release the stress which seems to have formed after I mounted the glass plate.

                          I see the Hypercube uses a similar, brain dead, way of mounting the print bed as my V-Core printer. Fixing a plate at four points is just plain dumb. It should be fixed at three points in a triangle only. That way, you can adjust for roll and then adjust for pitch without ruining the first roll adjustment.

                          I don't know if you're using springs like I see on the Thingiverse page for the Hypercube, but I don't use springs on either of my printers. All I use is nylock nuts to fix the height and keep it fixed. My V-Core's mountings are actually free to move in certain directions to prevent any problems when the bed expands due to heating.

                          ClassicStyleundefined 1 Reply Last reply Reply Quote 0
                          • ClassicStyleundefined
                            ClassicStyle @grizewald
                            last edited by

                            @grizewald Thanks for all the insight about 3-point mounting. Something I had definitely never realized. I actually have a Tronxy XY-2 as my first printer and went through the 4-sprung corner madness and said "no thanks, this sucks" to repeating that for my hypercube. I'm solid mounted to a 6-bar 2020 frame. Essentially it's a square frame of 4x2020 extrusion, then two 2020 extrusions are laid across the frame, resting on top of it. It's then solid mounted to the frame, and the bed is solid mounted to those two 2020s via v-nuts. I know it sounds overly complex, but I wanted a lot of adjustability while I dialed in the machine.

                            You reminded me that my 90 degree frame-to-2020 mounts are slotted, so I've been trying to dial that in since about 2 messages ago, starting with a simple 9-point grid to rough-in the level, then I'll up the resolution once I have all four corners roughly leveled and as close to 0.00 Z as possible. Getting closer....
                            0_1566153576290_cf7b7386-de93-43fe-bf15-c6fc4eaacc86-image.png

                            For the moment I'm ignoring the middle blue points because I can actually see the swale in aluminum from where I'm sitting. 😞 I have a mirror on the way to hopefully help this problem long term.

                            1 Reply Last reply Reply Quote 0
                            • ClassicStyleundefined
                              ClassicStyle
                              last edited by ClassicStyle

                              I don't know why it took me so long to realize I should be using my feeler gauges to level the platform. 😥 But here's the latest. Now that it's mostly flat, I'll worry about raising it to 0-ish tonight. Now time to start increasing resolution.
                              0_1566159053849_13c36638-2a4e-4f5c-ac40-e7d0b04362fb-image.png

                              Edit: ugh, just re-homing the Z should get it to zero-ish. I'm clearly firing on all cylinders today.

                              1 Reply Last reply Reply Quote 1
                              • grizewaldundefined
                                grizewald
                                last edited by

                                That looks very nice indeed!

                                Progress at last eh? 😉

                                1 Reply Last reply Reply Quote 0
                                • ClassicStyleundefined
                                  ClassicStyle
                                  last edited by

                                  Indeed.

                                  I did a test print of that stl Phaedrux provided. It failed to print well directly on aluminum, but I did have M122 added to the end of the gcode. Here's the relevant portion:

                                  Bed compensation in use: mesh
                                  Bed probe heights: 0.000 0.000 0.000 0.000 0.000

                                  I don't understand the purpose behind the probe heights line - I only have g28 hitting Z probe at one coordinate - the middle of the print bed. Anything to be concerned about?

                                  1 Reply Last reply Reply Quote 0
                                  • grizewaldundefined
                                    grizewald
                                    last edited by

                                    That doesn't look right. All I see if I run M122 is:

                                    Bed compensation in use: mesh, comp offset 0.000

                                    My Z-Probe configuration section looks like this:

                                    ; Z-Probe
                                    M574 Z1 S2 ; Z end stop is probe at low value
                                    M558 P8 R0.4 I1 H5 F360 T6000 ; Set Z probe type to inverted, unfiltered piezo and the dive height + speeds
                                    G31 P500 X0 Y0 Z-0.02 ; Set Z probe trigger value, offset and trigger height
                                    M557 X5:285 Y5:275 P14 ; Define mesh grid

                                    Your output looks like maybe it's set up to do manual probing. Hopefully someone will recognise what your output means. I'm pretty sure it's nothing to do with homing. I have one homing point which is in the middle of the bed at the same Y point as my two Z axis lead screws are mounted.

                                    ClassicStyleundefined 1 Reply Last reply Reply Quote 0
                                    • ClassicStyleundefined
                                      ClassicStyle
                                      last edited by

                                      My Z Probe section:

                                      ; Z-Probe
                                      M574 Z1 S2 ; Set endstops controlled by probe
                                      M558 P9 H1.5 F120 T6000 ;A5 B1 ; Set Z probe type to bltouch and the dive height + speeds
                                      G31 P500 X-25.3 Y0 Z0.675 ; Set Z probe trigger value, offset and trigger height
                                      M557 X25:200 Y25:200 S20 ; Define hi-res mesh grid <-- OMG I didn't know about the "P" argument... So many maths could have been saved 😖
                                      ;M557 X35:365 Y35:365 S330 ; Define low-res mesh grid

                                      1 Reply Last reply Reply Quote 1
                                      • ClassicStyleundefined
                                        ClassicStyle @grizewald
                                        last edited by

                                        @grizewald I updated my firmware to latest, that made my results look much more like yours.

                                        Bed compensation in use: mesh, comp offset 0.000

                                        Going to try re-printing now, even though my bed is still unlevel af.
                                        0_1566279007062_b17509d7-31c2-42ee-9c8a-8d90ac75eaba-image.png

                                        Here's hoping. Well, here's hoping the mirror gets here soon so I can clamp it to the bed and be done with this stupidness. 😌

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

                                          That mesh isn't really all that bad. It's only 0.5mm difference between lowest and highest spot. The compensation should be able to take care of that easily.

                                          Z-Bot CoreXY Build | Thingiverse Profile

                                          ClassicStyleundefined 1 Reply Last reply Reply Quote 1
                                          • ClassicStyleundefined
                                            ClassicStyle @Phaedrux
                                            last edited by

                                            @phaedrux I'm so frustrated cause I feel what you're saying, but nothing frigging sticks!!!

                                            Blue painter's tape? Yup, tried it. Half the 400mm^2 bed is covered in it, and glue stick, and hair spray. 😠 Obviously I didn't do them all in one go, but one after another. Throw the tape away, try another round. I can barely get one line to stick, but the second the nozzle changes directions, the print lifts off the surface. I've tried print temps from 190-210, and bed temps from 45-65. 🆘 Last resort is glass. If that doesn't work, not sure what I'm going to do.

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