Skip to content

[BUG] (UBL 3-point mesh leveling 'broken') #24665

@titanrw

Description

@titanrw

Did you test the latest bugfix-2.1.x code?

Yes, and the problem still exists.

Bug Description

G29 J seems to 'mess up' an already correct ubl grid.

This is on an ender 5 plus running mainboard 'BTT_SKR_MINI_E3_V2_0'

I was previously on 2.0.9.2, and everything worked correctly.

I upgraded to 2.1.1, and rebuilt the UBL grid, as I had to initialize eeprom. Saved grid to eeprom and verified it survives power cycles. This is the initial grid:

Send: G29 T
Recv: 
Recv: Bed Topography Report:
Recv: 
Recv:     (  1,359)                                      (359,359)
Recv:         0       1       2       3       4       5       6
Recv:  6 | -0.16  -0.05  +0.01 [-0.01] -0.09  -0.20  -0.25
Recv:    |
Recv:  5 | -0.27  -0.20  -0.17  -0.17  -0.19  -0.24  -0.22
Recv:    |
Recv:  4 | -0.26  -0.20  -0.22  -0.20  -0.20  -0.19  -0.13
Recv:    |
Recv:  3 | -0.27  -0.26  -0.22  -0.24  -0.17  -0.22  -0.01
Recv:    |
Recv:  2 | -0.26  -0.22  -0.30  -0.27  -0.21  -0.23  -0.03
Recv:    |
Recv:  1 | -0.26  -0.25  -0.30  -0.34  -0.29  -0.28  -0.06
Recv:    |
Recv:  0 | -0.27  -0.27  -0.30  -0.33  -0.30  -0.26  -0.07
Recv:         0       1       2       3       4       5       6
Recv:     (  1,  1)                                      (359,  1)

Max spread about 0.3mm. Decently good for a 350x350 bed I think?

My normal start g-code is:

G28 
G29 L1
G29 A
G29 J

I was doing the G29 J tilting correction, as the 5 plus has independent z-screws that are not 'belted' together. I try to align them as close as possible every time I power on the printer, but just in case they aren't exactly the same, I was using the mesh tilting to compensate.

However with 2.1.1 this is the mesh after the G29 J:

Recv:     (  1,359)                                      (359,359)
Recv:         0       1       2       3       4       5       6
Recv:  6 | +0.85  +0.72  +0.55  +0.29  -0.02  -0.37  -0.65
Recv:    |
Recv:  5 | +0.63  +0.47  +0.26  +0.03  -0.23  -0.51  -0.73
Recv:    |
Recv:  4 | +0.54  +0.36  +0.11  -0.11  -0.34  -0.57  -0.74
Recv:    |
Recv:  3 | +0.42  +0.20  +0.00  -0.25  -0.42  -0.70  -0.73
Recv:    |
Recv:  2 | +0.33  +0.13 [-0.18] -0.39  -0.56  -0.82  -0.85
Recv:    |
Recv:  1 | +0.22  -0.00  -0.29  -0.56  -0.75  -0.97  -0.99
Recv:    |
Recv:  0 | +0.10  -0.13  -0.39  -0.66  -0.86  -1.06  -1.10
Recv:         0       1       2       3       4       5       6
Recv:     (  1,  1)                                      (359,  1)

This now has a spread of about 2mm. The z-screws are definitely not that far off. Not realizing this messed up the mesh, I damaged the build surface as the printer applied a -1mm offset when it was originally measured as almost 0.

As a work around for now, I've commented out the G29 J tilting, and it's printing ok with UBL on. When I get a chance, I'll try -bugfix. I also might just run 2.0-lts.

Bug Timeline

2.0.9.2 didn't exhibit the issue.

Expected behavior

UBL mesh correctly modified for slight z-screw tilt.

Actual behavior

UBL mesh multiplied almost 10-fold.

Steps to Reproduce

Run 'G29 J' after UBL mesh populated and active.

Version of Marlin Firmware

2.1.1

Printer model

Ender 5 plus

Electronics

Stock other than BTT SKR Mini E3 2.0

Add-ons

No response

Bed Leveling

UBL Bilinear mesh

Your Slicer

Cura

Host Software

OctoPrint

Don't forget to include

  • A ZIP file containing your Configuration.h and Configuration_adv.h.

Additional information & file uploads

Configs, and bed visualizer images below:

2.1.1-configs.zip
Before G29 J:
before-j1
After G29 J:
afterj1

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions