diff --git a/Marlin/src/inc/SanityCheck.h b/Marlin/src/inc/SanityCheck.h index e86c88978a..57d2e47c68 100644 --- a/Marlin/src/inc/SanityCheck.h +++ b/Marlin/src/inc/SanityCheck.h @@ -1543,6 +1543,7 @@ static_assert(NUM_SERVOS <= NUM_SERVO_PLUGS, "NUM_SERVOS (or some servo index) i #else #ifndef BED_TRAMMING_INSET_LFRB #error "LCD_BED_TRAMMING requires BED_TRAMMING_INSET_LFRB values." + #endif #endif #endif diff --git a/Marlin/src/lcd/e3v2/proui/dwin.cpp b/Marlin/src/lcd/e3v2/proui/dwin.cpp index f3515bc752..33f2baf9ad 100644 --- a/Marlin/src/lcd/e3v2/proui/dwin.cpp +++ b/Marlin/src/lcd/e3v2/proui/dwin.cpp @@ -2389,8 +2389,8 @@ void setFlow() { setPIntOnClick(FLOW_EDIT_MIN, FLOW_EDIT_MAX, []{ planner.refres void tramXY(const uint8_t point, float &x, float &y) { #if ENABLED(BED_TRAMMING_USE_PROBE) - float bed_tramming_inset_lfbr[] = {X_MIN_BED + probe.min_x(), Y_MIN_BED + probe.min_y(), - X_MAX_BED - probe.max_x(), Y_MAX_BED - probe.max_y() }; + float bed_tramming_inset_lfbr[] = {X_MIN_BED + probe.min_x() + 0.01f, Y_MIN_BED + probe.min_y() + 0.01f, + X_MAX_BED - probe.max_x() - 0.01f, Y_MAX_BED - probe.max_y() - 0.01f }; #endif switch (point) { diff --git a/Marlin/src/lcd/extui/ui_api.cpp b/Marlin/src/lcd/extui/ui_api.cpp index a2cb354ac7..2f7ca4b426 100644 --- a/Marlin/src/lcd/extui/ui_api.cpp +++ b/Marlin/src/lcd/extui/ui_api.cpp @@ -933,7 +933,7 @@ namespace ExtUI { #if HAS_BED_PROBE float getProbeOffset_mm(const axis_t axis) { return probe.offset.pos[axis]; } void setProbeOffset_mm(const_float_t val, const axis_t axis) { probe.offset.pos[axis] = val; } - float[4] getBedProbeLimits() {return {probe.min_x(), probe.min_y(), probe.max_x(), probe.max_y()};} + probe_limits getBedProbeLimits() {return (probe_limits){probe.min_x(), probe.min_y(), probe.max_x(), probe.max_y()};} #endif #if ENABLED(BACKLASH_GCODE) diff --git a/Marlin/src/lcd/extui/ui_api.h b/Marlin/src/lcd/extui/ui_api.h index d71a92879c..dd9d6f789d 100644 --- a/Marlin/src/lcd/extui/ui_api.h +++ b/Marlin/src/lcd/extui/ui_api.h @@ -74,6 +74,7 @@ namespace ExtUI { #if ENABLED(MPC_AUTOTUNE) enum mpcresult_t : uint8_t { MPC_STARTED, MPC_TEMP_ERROR, MPC_INTERRUPTED, MPC_DONE }; #endif + struct probe_limits { float pos[4];}; constexpr uint8_t extruderCount = EXTRUDERS; constexpr uint8_t hotendCount = HOTENDS; @@ -367,7 +368,7 @@ namespace ExtUI { #if HAS_BED_PROBE float getProbeOffset_mm(const axis_t); void setProbeOffset_mm(const_float_t, const axis_t); - float[4] getBedProbeLimits(); + probe_limits getBedProbeLimits(); #endif // Backlash Control diff --git a/Marlin/src/lcd/menu/menu_bed_tramming.cpp b/Marlin/src/lcd/menu/menu_bed_tramming.cpp index 34e5142811..e344a28d43 100644 --- a/Marlin/src/lcd/menu/menu_bed_tramming.cpp +++ b/Marlin/src/lcd/menu/menu_bed_tramming.cpp @@ -106,8 +106,8 @@ static int8_t bed_corner; */ static void _lcd_goto_next_corner() { #if ENABLED(BED_TRAMMING_USE_PROBE) - xy_pos_t lf = {X_MIN_BED + probe.min_x(), Y_MIN_BED + probe.min_y() }, - rb = {X_MAX_BED - probe.max_x(), Y_MAX_BED - probe.max_y() }; + xy_pos_t lf = {X_MIN_BED + probe.min_x() + 0.01f, Y_MIN_BED + probe.min_y() + 0.01f }, + rb = {X_MAX_BED - probe.max_x() - 0.01f, Y_MAX_BED - probe.max_y() - 0.01f }; #endif xy_pos_t corner_point = lf; // Left front