From 629d262ed35843818c1f0298d46b72b0cf215fae Mon Sep 17 00:00:00 2001 From: Scott Lahteine Date: Sat, 8 Nov 2025 18:00:06 -0600 Subject: [PATCH] fix and clean up --- Marlin/src/inc/SanityCheck.h | 6 ++--- Marlin/src/lcd/e3v2/proui/dwin.cpp | 27 +++++++++++-------- .../src/lcd/extui/anycubic_vyper/dgus_tft.cpp | 8 +++--- .../dgus_e3s1pro/DGUSReturnKeyCodeHandler.cpp | 10 ++++--- .../lcd/extui/dgus_reloaded/DGUSRxHandler.cpp | 8 ++++-- Marlin/src/lcd/menu/menu_bed_tramming.cpp | 7 ++--- 6 files changed, 39 insertions(+), 27 deletions(-) diff --git a/Marlin/src/inc/SanityCheck.h b/Marlin/src/inc/SanityCheck.h index ce5955a9c7..b20d3dfd68 100644 --- a/Marlin/src/inc/SanityCheck.h +++ b/Marlin/src/inc/SanityCheck.h @@ -1660,10 +1660,8 @@ static_assert(NUM_SERVOS <= NUM_SERVO_PLUGS, "NUM_SERVOS (or some servo index) i #elif ENABLED(SENSORLESS_PROBING) #error "BED_TRAMMING_USE_PROBE is incompatible with SENSORLESS_PROBING." #endif - #else - #ifndef BED_TRAMMING_INSET_LFRB - #error "LCD_BED_TRAMMING requires BED_TRAMMING_INSET_LFRB values." - #endif + #elif !defined(BED_TRAMMING_INSET_LFRB) + #error "LCD_BED_TRAMMING requires BED_TRAMMING_INSET_LFRB values." #endif static_assert(BED_TRAMMING_Z_HOP >= 0, "BED_TRAMMING_Z_HOP must be >= 0."); #elif ANY(DGUS_LCD_UI_RELOADED, DGUS_LCD_UI_E3S1PRO) diff --git a/Marlin/src/lcd/e3v2/proui/dwin.cpp b/Marlin/src/lcd/e3v2/proui/dwin.cpp index 0d29eb45e2..fa6943b296 100644 --- a/Marlin/src/lcd/e3v2/proui/dwin.cpp +++ b/Marlin/src/lcd/e3v2/proui/dwin.cpp @@ -200,7 +200,7 @@ typedef struct { select_t select_page{0}, select_print{0}; #if ENABLED(LCD_BED_TRAMMING) && DISABLED(BED_TRAMMING_USE_PROBE) - constexpr float bed_tramming_inset_lfbr[] = BED_TRAMMING_INSET_LFRB; + constexpr float bed_tramming_inset_lfrb[] = BED_TRAMMING_INSET_LFRB; #endif bool hash_changed = true; // Flag to know if message status was changed @@ -2433,30 +2433,35 @@ 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() + 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 }; + constexpr float slop = 0.01f; + float bed_tramming_inset_lfrb[] = { + (X_MIN_BED) + probe.min_x() + slop, + (Y_MIN_BED) + probe.min_y() + slop, + (X_MAX_BED) - probe.max_x() - slop, + (Y_MAX_BED) - probe.max_y() - slop + }; #endif switch (point) { case 0: LCD_MESSAGE(MSG_TRAM_FL); - x = bed_tramming_inset_lfbr[0]; - y = bed_tramming_inset_lfbr[1]; + x = bed_tramming_inset_lfrb[0]; + y = bed_tramming_inset_lfrb[1]; break; case 1: LCD_MESSAGE(MSG_TRAM_FR); - x = X_BED_SIZE - bed_tramming_inset_lfbr[2]; - y = bed_tramming_inset_lfbr[1]; + x = X_BED_SIZE - bed_tramming_inset_lfrb[2]; + y = bed_tramming_inset_lfrb[1]; break; case 2: LCD_MESSAGE(MSG_TRAM_BR); - x = X_BED_SIZE - bed_tramming_inset_lfbr[2]; - y = Y_BED_SIZE - bed_tramming_inset_lfbr[3]; + x = X_BED_SIZE - bed_tramming_inset_lfrb[2]; + y = Y_BED_SIZE - bed_tramming_inset_lfrb[3]; break; case 3: LCD_MESSAGE(MSG_TRAM_BL); - x = bed_tramming_inset_lfbr[0]; - y = Y_BED_SIZE - bed_tramming_inset_lfbr[3]; + x = bed_tramming_inset_lfrb[0]; + y = Y_BED_SIZE - bed_tramming_inset_lfrb[3]; break; #if ENABLED(BED_TRAMMING_INCLUDE_CENTER) case 4: diff --git a/Marlin/src/lcd/extui/anycubic_vyper/dgus_tft.cpp b/Marlin/src/lcd/extui/anycubic_vyper/dgus_tft.cpp index af5e20d3a1..5678cb3d3f 100644 --- a/Marlin/src/lcd/extui/anycubic_vyper/dgus_tft.cpp +++ b/Marlin/src/lcd/extui/anycubic_vyper/dgus_tft.cpp @@ -1967,14 +1967,14 @@ namespace Anycubic { setSoftEndstopState(false); - z_off = getZOffset_mm() - 0.01f; + z_off = getZOffset_mm() - BABYSTEP_SIZE_Z; setZOffset_mm(z_off); sendTxtToTFT(ftostr52sprj(getZOffset_mm()) + 2, TXT_LEVEL_OFFSET); if (isAxisPositionKnown(Z)) { const float currZpos = getAxisPosition_mm(Z); - setAxisPosition_mm(currZpos - 0.01f, Z); + setAxisPosition_mm(currZpos - BABYSTEP_SIZE_Z, Z); } setSoftEndstopState(true); @@ -1985,14 +1985,14 @@ namespace Anycubic { setSoftEndstopState(false); - z_off = getZOffset_mm() + 0.01f; + z_off = getZOffset_mm() + BABYSTEP_SIZE_Z; setZOffset_mm(z_off); sendTxtToTFT(ftostr52sprj(getZOffset_mm()) + 2, TXT_LEVEL_OFFSET); if (isAxisPositionKnown(Z)) { // Move Z axis const float currZpos = getAxisPosition_mm(Z); - setAxisPosition_mm(currZpos + 0.01f, Z); + setAxisPosition_mm(currZpos + BABYSTEP_SIZE_Z, Z); } setSoftEndstopState(true); diff --git a/Marlin/src/lcd/extui/dgus_e3s1pro/DGUSReturnKeyCodeHandler.cpp b/Marlin/src/lcd/extui/dgus_e3s1pro/DGUSReturnKeyCodeHandler.cpp index a072b9730f..a643e4078c 100644 --- a/Marlin/src/lcd/extui/dgus_e3s1pro/DGUSReturnKeyCodeHandler.cpp +++ b/Marlin/src/lcd/extui/dgus_e3s1pro/DGUSReturnKeyCodeHandler.cpp @@ -396,13 +396,17 @@ void DGUSReturnKeyCodeHandler::Command_SettingsMenu(DGUS_VP &vp, void *data) { static void _gotoTrammingPoint(unsigned char point) { #if ENABLED(BED_TRAMMING_USE_PROBE) - float lfrb[4] = {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 lfrb[4] = { + (X_MIN_BED) + probe.min_x(), + (Y_MIN_BED) + probe.min_y(), + (X_MAX_BED) - probe.max_x(), + (Y_MAX_BED) - probe.max_y() + }; #else constexpr float lfrb[4] = BED_TRAMMING_INSET_LFRB; #endif - float x, y; + float x, y; switch (point) { default: return; case 1: x = X_CENTER; y = Y_CENTER; break; diff --git a/Marlin/src/lcd/extui/dgus_reloaded/DGUSRxHandler.cpp b/Marlin/src/lcd/extui/dgus_reloaded/DGUSRxHandler.cpp index 62bb6a551a..ad800a9451 100644 --- a/Marlin/src/lcd/extui/dgus_reloaded/DGUSRxHandler.cpp +++ b/Marlin/src/lcd/extui/dgus_reloaded/DGUSRxHandler.cpp @@ -469,8 +469,12 @@ void DGUSRxHandler::moveToPoint(DGUS_VP &vp, void *data_ptr) { const uint8_t point = ((uint8_t*)data_ptr)[1]; #if ENABLED(BED_TRAMMING_USE_PROBE) - float lfrb[4] = {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 lfrb[4] = { + (X_MIN_BED) + probe.min_x(), + (Y_MIN_BED) + probe.min_y(), + (X_MAX_BED) - probe.max_x(), + (Y_MAX_BED) - probe.max_y() + }; #else constexpr float lfrb[4] = BED_TRAMMING_INSET_LFRB; #endif diff --git a/Marlin/src/lcd/menu/menu_bed_tramming.cpp b/Marlin/src/lcd/menu/menu_bed_tramming.cpp index dae8bdc773..38be8871f4 100644 --- a/Marlin/src/lcd/menu/menu_bed_tramming.cpp +++ b/Marlin/src/lcd/menu/menu_bed_tramming.cpp @@ -90,7 +90,7 @@ constexpr int center_index = TERN(BED_TRAMMING_INCLUDE_CENTER, available_points #if DISABLED(BED_TRAMMING_USE_PROBE) constexpr float inset_lfrb[4] = BED_TRAMMING_INSET_LFRB; constexpr xy_pos_t lf { (X_MIN_BED) + inset_lfrb[0], (Y_MIN_BED) + inset_lfrb[1] }, - rb { (X_MAX_BED) - inset_lfrb[2], (Y_MAX_BED) - inset_lfrb[3] }; + rb { (X_MAX_BED) - inset_lfrb[2], (Y_MAX_BED) - inset_lfrb[3] }; #endif static int8_t bed_corner; @@ -99,8 +99,9 @@ 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() + 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 }; + constexpr float slop = 0.01f; + const xy_pos_t lf = { (X_MIN_BED) + probe.min_x() + slop, (Y_MIN_BED) + probe.min_y() + slop }, + rb = { (X_MAX_BED) - probe.max_x() - slop, (Y_MAX_BED) - probe.max_y() - slop }; #endif xy_pos_t corner_point = lf; // Left front