After a recent hotend rebuild on an Ender-3/SKR 1.3/LPC1768
/TMC5160 build, I had to redo my BLTouch/probe offsets & I noticed that babystepping was no longer working with the latest bugfix-2.0.x
. The values on the "Probe Z Offset" screen increase and decrease as they should using the encoder, but moving through -5 to 5, the hotend doesn't raise or lower.
I tried enabling various options like BABYSTEP_ALWAYS_AVAILABLE
, INTEGRATED_BABYSTEPPING
as well as disabling software endstops completely (already disabled on Z) with no success.
Reverting to https://github.com/MarlinFirmware/Marlin/commit/189c101793c72780fdff2b8cd693d4a53040a0e8 with the same config, restores babystepping capability.
Expected behavior: Babystepping to work
Actual behavior: Babystepping does not work
I just rebased my MK3/BTT002 (STM32F407VET6
)/TMC2209 config on https://github.com/MarlinFirmware/Marlin/commit/75e3aa12c5e963345c533d8f191aba207bb4d2c1 and babystepping does not work anymore, so this is likely not an SKR 1.3/LPC1768
-specific bug.
Confirmed babystep not working with/without INTEGRATED_BABYSTEPPING. SKR1.3 TMC2208/9
Also confirmed babystep not working with/without INTEGRATED_BABYSTEPPING. SKR1.3 TMC2209
EDIT: Checked another machine, SKR 1.4 w/ 2209's, latest bugfix, also not working. (changing Z offset does nothing)
My Arduino Mega with Ramps setup is also affected. Z Babystepping is not possible, nothing happens. Enabling integrated baby stepping makes no difference.
Since 2.0.4
was released today, I tried the latest bugfix-2.0.x
(5d16497), but babystepping is still broken.
Shouldn't 2.0.4 be held back until Live Z is fixed? That's kind of a big deal. Pretty much can't use a probe without live Z changes.
Shouldn't 2.0.4 be held back until Live Z is fixed? That's kind of a big deal. Pretty much can't use a probe without live Z changes.
It'll get fixed soon, I'm sure. Scott's been busy improving Auto Build Marlin this week.
Thanks for keeping on this. I have been otherwise engaged. The issue should be patched now. Please confirm that it also works for you. Note that there is a known issue with babystepping on SKR boards with 2209 steppers where the stepper drivers can turn off. We're still experimenting to find a decent solution to that problem.
Thanks for keeping on this. I have been otherwise engaged. The issue should be patched now. Please confirm that it also works for you. Note that there is a known issue with babystepping on SKR boards with 2209 steppers where the stepper drivers can turn off. We're still experimenting to find a decent solution to that problem.
@thinkyhead: I can't get it to compile:
Marlin/src/module/stepper.cpp:2590:73: error: macro "BABYSTEP_AXIS" passed 4 arguments, but takes just 3
2590 | BABYSTEP_AXIS(Z, BABYSTEP_INVERT_Z, direction, (CORESIGN(1)<0));
| ^
Marlin/src/module/stepper.cpp:2512: note: macro "BABYSTEP_AXIS" defined here
2512 | #define BABYSTEP_AXIS(AXIS, INV, DIR) do{ \
|
Compiling .pio/build/LPC1768/src/src/sd/SdFile.cpp.o
Compiling .pio/build/LPC1768/src/src/sd/SdVolume.cpp.o
Compiling .pio/build/LPC1768/src/src/sd/cardreader.cpp.o
Compiling .pio/build/LPC1768/src/src/sd/usb_flashdrive/Sd2Card_FlashDrive.cpp.o
Compiling .pio/build/LPC1768/src/src/sd/usb_flashdrive/lib-uhs2/Usb.cpp.o
Compiling .pio/build/LPC1768/src/src/sd/usb_flashdrive/lib-uhs2/masstorage.cpp.o
Compiling .pio/build/LPC1768/src/src/sd/usb_flashdrive/lib-uhs2/message.cpp.o
Compiling .pio/build/LPC1768/src/src/sd/usb_flashdrive/lib-uhs2/parsetools.cpp.o
Compiling .pio/build/LPC1768/src/src/sd/usb_flashdrive/lib-uhs2/usbhost.cpp.o
Compiling .pio/build/LPC1768/lib0d2/Servo/Servo.cpp.o
Compiling .pio/build/LPC1768/libaba/LiquidCrystal/LiquidCrystal.cpp.o
Compiling .pio/build/LPC1768/lib839/U8glib-HAL_ID1932/U8glib.cpp.o
Compiling .pio/build/LPC1768/lib839/U8glib-HAL_ID1932/U8glibPrint.cpp.o
Compiling .pio/build/LPC1768/lib839/U8glib-HAL_ID1932/clib/chessengine.c.o
Compiling .pio/build/LPC1768/lib839/U8glib-HAL_ID1932/clib/u8g_bitmap.c.o
Compiling .pio/build/LPC1768/lib839/U8glib-HAL_ID1932/clib/u8g_circle.c.o
Marlin/src/module/stepper.cpp: In static member function 'static void Stepper::do_babystep(AxisEnum, bool)':
Marlin/src/module/stepper.cpp:2590:11: error: 'BABYSTEP_AXIS' was not declared in this scope
2590 | BABYSTEP_AXIS(Z, BABYSTEP_INVERT_Z, direction, (CORESIGN(1)<0));
| ^~~~~~~~~~~~~
Edit: It was just reported in #16920 as well.
This issue has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs.
Most helpful comment
Since
2.0.4
was released today, I tried the latestbugfix-2.0.x
(5d16497), but babystepping is still broken.