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

Another Mesh leveling thread…!

Scheduled Pinned Locked Moved
Tuning and tweaking
6
17
2.7k
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
    vonGreezly
    last edited by 25 Jan 2017, 06:57

    Hey All!

    I've got this thing mostly working, but kinda wanted to see if I could get some pointers / best practices…

    My printer is a CoreXY, 380^3 build envelope. DuetWifi, DC42 IR Probe.

    config.g:
    ; Z probe
    M558 P1 X0 Y0 Z1 ; Analog Z probe, also used for homing the Z axis
    G31 X9.6 Y17.5 Z1.81 P500 ; Set the probe height and threshold (put your own values here)

    ; The following M557 commands are not needed if you are using a bed.g file to perform bed compensation
    ;*** Adjust the XY coordinates in the following M557 commands to suit your build and the position of the Z probe
    M557 X15:365 Y15:365 S80 ; Define X and Y bed size, and size of area.

    bed.g
    ; Before running this, you should have set up your zprobe Z offset to suit your build, in the G31 command in config.g.

    M561 ; Clear Any Existing Bed Compensation
    G28 ; Home All
    G29 ; Probe Bed

    Everything stores great after the first probe, but it seems to disappear once I power down.

    Am I missing something somewhere to make this a permanent (until overwritten) compensation? Do I add a G29 to my starting GCode on a print?

    Any tips / pointers you guys could give me would be great. As of now, my first layers are super consistent, which makes printing with this combo a complete JOY. Just trying to work out bugs (which I'm sure are operator error..) when it comes to ALWAYS enabling mesh compensation.

    Thanks a bunch!,
    -Casey

    1 Reply Last reply Reply Quote 0
    • undefined
      dc42 administrators
      last edited by 25 Jan 2017, 07:57

      The bed height map is stored on the SD card when you run G29. If you want to reload it after powering off and on, use G29 S1.

      Duet WiFi hardware designer and firmware engineer
      Please do not ask me for Duet support via PM or email, use the forum
      http://www.escher3d.com, https://miscsolutions.wordpress.com

      1 Reply Last reply Reply Quote 0
      • undefined
        vonGreezly
        last edited by 25 Jan 2017, 20:06

        @dc42:

        The bed height map is stored on the SD card when you run G29. If you want to reload it after powering off and on, use G29 S1.

        Would it make sense to just call that in my starting gCode out of my slicer? so that it enables for every print?

        Thanks for your Help!,
        -Casey

        1 Reply Last reply Reply Quote 0
        • undefined
          DjDemonD
          last edited by 25 Jan 2017, 20:10

          I did think about doing that but in the end settled for having:

          G29 S1 ;load grid levelling mesh
          M376 H10 ;taper off compensation after 10mm
          M500

          At the end of my bed.g so it saves the calibration, and loads the grid and sets the taper off height. That way calibrations get progressively better. I just have to remember to run a grid levelling, which I have a macro for:

          G29 S2 ;clear height map
          M557 R140 S30 ;define levelling grid
          G29 ;probe levelling grid save height map
          G1 X0 Y0 Z100 F3000 ;reposition effector

          If I have moved the bed, or am running it at a different temperature etc…

          Simon. Precision Piezo Z-Probe Technology
          www.precisionpiezo.co.uk
          PT1000 cartridge sensors NOW IN, just attach to your Duet board directly!

          1 Reply Last reply Reply Quote 0
          • undefined
            dc42 administrators
            last edited by 25 Jan 2017, 20:25

            That looks good to me. The G29 S2 is not needed, but harmless.

            Duet WiFi hardware designer and firmware engineer
            Please do not ask me for Duet support via PM or email, use the forum
            http://www.escher3d.com, https://miscsolutions.wordpress.com

            1 Reply Last reply Reply Quote 0
            • undefined
              vonGreezly
              last edited by 25 Jan 2017, 22:13

              @DjDemonD:

              I did think about doing that but in the end settled for having:

              G29 S1 ;load grid levelling mesh
              M376 H10 ;taper off compensation after 10mm
              M500

              At the end of my bed.g so it saves the calibration, and loads the grid and sets the taper off height. That way calibrations get progressively better. I just have to remember to run a grid levelling, which I have a macro for:

              G29 S2 ;clear height map
              M557 R140 S30 ;define levelling grid
              G29 ;probe levelling grid save height map
              G1 X0 Y0 Z100 F3000 ;reposition effector

              If I have moved the bed, or am running it at a different temperature etc…

              Nice! I might borrow most (all) of this!

              I didn't even know that compensation taper existed… so there's that...

              Thanks!,
              -Casey

              1 Reply Last reply Reply Quote 0
              • undefined
                DjDemonD
                last edited by 25 Jan 2017, 22:51

                Your welcome, I borrowed it off someone else here at some point.

                Simon. Precision Piezo Z-Probe Technology
                www.precisionpiezo.co.uk
                PT1000 cartridge sensors NOW IN, just attach to your Duet board directly!

                1 Reply Last reply Reply Quote 0
                • undefined
                  vonGreezly
                  last edited by 26 Jan 2017, 05:55

                  Another Question!

                  Using G29 for bed leveling, does that move the Z physically like G32 does? Or does it handle the transform differently?

                  -Casey

                  1 Reply Last reply Reply Quote 0
                  • undefined
                    dc42 administrators
                    last edited by 26 Jan 2017, 08:35

                    Yes it moves the head in the Z direction to follow the contours of the bed.

                    Duet WiFi hardware designer and firmware engineer
                    Please do not ask me for Duet support via PM or email, use the forum
                    http://www.escher3d.com, https://miscsolutions.wordpress.com

                    1 Reply Last reply Reply Quote 0
                    • undefined
                      Lorclonil
                      last edited by 29 Jan 2017, 15:13

                      I'm curious about a couple things with mesh bed leveling.

                      Does it move the head up and down to account for bumps or is it just a plane correction?

                      If you have a slight effector tilt (that is compensated for via H adjustments in the bed.g), how does the G29 command adjust for this (if at all?)

                      Thanks!!

                      1 Reply Last reply Reply Quote 0
                      • undefined
                        dc42 administrators
                        last edited by 29 Jan 2017, 15:59

                        G29 compensation moves the head up and down to follow the contours of the bed. Long moves get segmented into shorter ones to make this possible.

                        If you have varying Z probe trigger height due to effector tilt or anything else, currently the only way to compensate for it is to edit the height map file and reload it.

                        Duet WiFi hardware designer and firmware engineer
                        Please do not ask me for Duet support via PM or email, use the forum
                        http://www.escher3d.com, https://miscsolutions.wordpress.com

                        1 Reply Last reply Reply Quote 0
                        • undefined
                          Lorclonil
                          last edited by 29 Jan 2017, 16:58

                          Would you do that the same way you do the h values in bed.g? For each point measured, calculate the difference from the center measurement and add/subtract it to the height map point?

                          1 Reply Last reply Reply Quote 0
                          • undefined
                            dc42 administrators
                            last edited by 29 Jan 2017, 20:43

                            Yes.

                            Duet WiFi hardware designer and firmware engineer
                            Please do not ask me for Duet support via PM or email, use the forum
                            http://www.escher3d.com, https://miscsolutions.wordpress.com

                            1 Reply Last reply Reply Quote 0
                            • undefined
                              minim
                              last edited by 29 Jan 2017, 22:27

                              If you taper off with 10mm does that mean that it starts allready on second layer and has zero compensation at 10mm?

                              I did a G29 today after i printet a part on glass bed with glue on it. I had a huge error of 0.5mm where the printed part was peeled off compared to the rest of the bed. Normally it is within 0.1mm. Is this normal? Does it mean I only should run G29 with a washed glass plate? Really annoying as I sometimes have to take glass on/off for removing print and then I'd like to run G29 again to be sure it's seated the same as last time. Now I have to wash between every print

                              1 Reply Last reply Reply Quote 0
                              • undefined
                                lolorc
                                last edited by 29 Jan 2017, 23:32

                                mesh leveling has caused me quite a lot of problems. I'm starting to wonder if it's really useful to me.

                                I've added G29 to my bed macro, and my slicer adds a G32 at the beginning of the gcode files.

                                Most of the time it works ok, but every now and then, at least once a day it fails. Probably because glass is not cleansed enough, or sometimes some bits of filament fell on the bed during the probes…

                                How about adding a new parameter to specify a acceptable deviation from G29 ?
                                My maximum deviations are often between -0.08 and 0.08. I'd love to be able to skip the whole G29 results if there are values outside of this range. (I guess I would also love RRP to cancel the print if G29 is triggered from a gcode file)

                                1 Reply Last reply Reply Quote 0
                                • undefined
                                  dc42 administrators
                                  last edited by 30 Jan 2017, 03:53

                                  Unless you are swapping bed plates around, why don't you use G29 S1 to load a known good height map instead of probing each time?

                                  Duet WiFi hardware designer and firmware engineer
                                  Please do not ask me for Duet support via PM or email, use the forum
                                  http://www.escher3d.com, https://miscsolutions.wordpress.com

                                  1 Reply Last reply Reply Quote 0
                                  • undefined
                                    lolorc
                                    last edited by 30 Jan 2017, 21:03

                                    yes, that's what I thought.
                                    I've been spending a lot of time playing with my duet, which is under the bed, so I decided to put G29 in bed macro. I guess I don't need it anymore.

                                    i guess I don't need to run G32 before every prints either.

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