-
-
Notifications
You must be signed in to change notification settings - Fork 19.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[BUG] Babystepping the Z-Offset uses the move axis step setting instead of the babystep setting #26896
Comments
Confirmed in the simulator |
I think im onto something. Try this diff (2 changed lines in Marlin/src/lcd/tft/ui_common.cpp) diff --git a/Marlin/src/lcd/tft/ui_common.cpp b/Marlin/src/lcd/tft/ui_common.cpp
index 944be77ab5..08fbabdfc6 100644
--- a/Marlin/src/lcd/tft/ui_common.cpp
+++ b/Marlin/src/lcd/tft/ui_common.cpp
@@ -71,7 +71,7 @@ void moveAxis(const AxisEnum axis, const int8_t direction) {
}
#endif
- const float diff = motionAxisState.currentStepSize * direction;
+ float diff = motionAxisState.currentStepSize * direction;
#if HAS_BED_PROBE
@@ -85,6 +85,7 @@ void moveAxis(const AxisEnum axis, const int8_t direction) {
, do_probe ? new_probe_offset : hotend_offset[active_extruder].z - bsDiff
, new_probe_offset
);
+ diff = 0;
if (WITHIN(new_offs, PROBE_OFFSET_ZMIN, PROBE_OFFSET_ZMAX)) {
babystep.add_steps(Z_AXIS, babystep_increment);
if (do_probe) Seems to work well in the sim My test configs for the sim, if anyone is interested. |
please note with your current settings you have |
Actually it is 410 for the E0 axis, for Z it is 400. After your last edit is it working or is it still moving double the distance? |
correct distance now. yes your correct its 400, its very late here, going a bit cross eyed. |
Applied the fix but it is still misbehaving during print, when I adjust the z-offset it seems to dig the hotend into the bed, and even lose control of the rest of the axis, I've seem it move back during a print move, do some sort of "layer skip", etc. The current version is unusable as it is for my printer. |
Had a similar problem. The above mentioned changes to the Marlin/src/lcd/tft/ui_common.cpp (using actual bugfix version) worke out fine. Thx a lot |
See #26896 (comment) Co-Authored-By: ellensp <[email protected]>
This may have been fixed in 489ef6e Please download |
See MarlinFirmware#26896 (comment) Co-Authored-By: ellensp <[email protected]>
Did you test the latest
bugfix-2.1.x
code?Yes, and the problem still exists.
Bug Description
My setup was working flawlessly one year ago on bugfix-2.1.x (commit 9e42480), last month I tried to update it to the latest of this branch and after manually migrating all the settings it was working but babystepping the Z Probe Offset was misbehaving.
As can be seem on the video below, when trying to move the Z Offset the display shows (correctly) that 0.01mm should be moved, but the actual move uses the 10mm step for axis move setting (as show in the screen) below.
VID_20240322_114242.mp4
I've tried to change every possible setting related to BABYSTEP and Z_PROBE without any luck. Since I just migrated the settings and the display correctly shows what should have happened, this must be a bug introduced in the last year.
Old settings (at 9e42480)
old_settings.zip
Current settings
current_settings.zip
Bug Timeline
It started at some point after commit 9e42480 from one year ago
Expected behavior
The hotend moves as indicated by the Z Probe Offset.
Actual behavior
The hotend moves by the step size for the axis move.
Steps to Reproduce
No response
Version of Marlin Firmware
bugfix-2.1.x
Printer model
Two Tress Bluer
Electronics
TMC2209 UART
LCD/Controller
MKS_ROBIN_TFT35
Other add-ons
BLTouch
Bed Leveling
ABL Bilinear mesh
Your Slicer
Cura
Host Software
OctoPrint
Don't forget to include
Configuration.h
andConfiguration_adv.h
.Additional information & file uploads
No response
The text was updated successfully, but these errors were encountered: