|
|
@ -4031,7 +4031,11 @@ inline void gcode_G28() { |
|
|
|
|| left_probe_bed_position != bilinear_start[X_AXIS] |
|
|
|
|| front_probe_bed_position != bilinear_start[Y_AXIS] |
|
|
|
) { |
|
|
|
// Before reset bed level, re-enable to correct the position
|
|
|
|
planner.abl_enabled = abl_should_enable; |
|
|
|
// Reset grid to 0.0 or "not probed". (Also disables ABL)
|
|
|
|
reset_bed_level(); |
|
|
|
|
|
|
|
#if ENABLED(ABL_BILINEAR_SUBDIVISION) |
|
|
|
bilinear_grid_spacing_virt[X_AXIS] = xGridSpacing / (BILINEAR_SUBDIVISIONS); |
|
|
|
bilinear_grid_spacing_virt[Y_AXIS] = yGridSpacing / (BILINEAR_SUBDIVISIONS); |
|
|
@ -4040,6 +4044,7 @@ inline void gcode_G28() { |
|
|
|
bilinear_grid_spacing[Y_AXIS] = yGridSpacing; |
|
|
|
bilinear_start[X_AXIS] = RAW_X_POSITION(left_probe_bed_position); |
|
|
|
bilinear_start[Y_AXIS] = RAW_Y_POSITION(front_probe_bed_position); |
|
|
|
|
|
|
|
// Can't re-enable (on error) until the new grid is written
|
|
|
|
abl_should_enable = false; |
|
|
|
} |
|
|
|