-
-
Notifications
You must be signed in to change notification settings - Fork 19.7k
Description
Did you test the latest bugfix-2.0.x code?
Yes, and the problem still exists.
Bug Description
Hi
I enabled POWER_LOSS_RECOVER_ZHOME while enabling Z_SAFE_HOMING which caused this error POWER_LOSS_RECOVER_ZHOME cannot be used with Z_SAFE_HOMING.
So I understand that these settings can't be enabled simultaneously because the printer can't ensure that the Z homing will not collide with the model, unfortunately for my setup enabling these settings at the same time is necessary because my X gantry always falls a few millimeters down after the power is lost which causes wrong z height when the print resumes.
So I changed the homing positions to a safe position where it doesn't collide with the model
#define Z_SAFE_HOMING_X_POINT 0
#define Z_SAFE_HOMING_Y_POINT 10
And disabled that error in the SanityCheck.h file
The firmware compiles fine now, but the resume function doesn't work properly:
After triggering the power loss function using the POWER_LOSS_PIN the printer homes two times(which is weird) and then the print starts from a higher layer than what it was before power loss (i.e if the printer stopped at 0.2 z height it would resume at 0.6 z height)
Bug Timeline
not sure
Expected behavior
I would expect the printer to home once and then continue the print exactly where it left of in X, Y, Z axis.
Actual behavior
The printer is resuming the print job where it left of in the X and Y axis but is the position is not correct in regards to the Z axis
Steps to Reproduce
1- enable the POWER_LOSS_RECOVERY settings as follows:
#define POWER_LOSS_RECOVERY
#if ENABLED(POWER_LOSS_RECOVERY)
#define PLR_ENABLED_DEFAULT true
#define BACKUP_POWER_SUPPLY
#define POWER_LOSS_ZRAISE 5
#define POWER_LOSS_STATE HIGH
#define POWER_LOSS_PULLDOWN
#define POWER_LOSS_PURGE_LEN 10
#define POWER_LOSS_RETRACT_LEN 10
#define POWER_LOSS_MIN_Z_CHANGE 0.05
#define POWER_LOSS_RECOVER_ZHOME
#if ENABLED(POWER_LOSS_RECOVER_ZHOME)
#define POWER_LOSS_ZHOME_POS { 0, 10 }
#endif
#endif
2- enable Z_SAFE_HOMING and set the safe position similar to POWER_LOSS_ZHOME_POS, also comment out this line to be able to compile.
3- Start a print job and when it starts printing trigger the power loss by shorting the POWER_LOSS_PIN to vcc(take note of the current Z height before triggering the power loss)
4- Restart the printer and click resume
5- You will notice that the printer homes twice and and start printing in the wrong height.
Version of Marlin Firmware
Marlin bugfix-2.0.x (Sep 12 2021 21:53:19)
Printer model
Creality Ender 3
Electronics
BigTreeTech SKR 1.4 with TMC 2209s
Add-ons
BLTOUCH
Bed Leveling
UBL
Your Slicer
Cura
Host Software
OctoPrint