-
-
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
[FR] Backlash compensation for IDEX #23325
Comments
The backlash code is currently incompatible with IDEX and implementing this support will require some study. CC: @marciot |
I think basklash make problems when print several output that separate from each other. |
This might be fixed by #23814. Not certain of this but the toolchange code does call sync_plan_position() which is fixed in that PR. So worth testing again. |
Layer shift still exist when IDEX. |
Now that #23814 is merged, please download the latest |
Tested using bugfix-2.0.x from 2022-04-03. |
I have a simple test way My Marlin Ver. "Marlin-2.1.1" Annotation of pictures
=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-= When in IDEX mode |
My suggestion is... when nozzle change, last direction bits has to be changed forcibly. void Backlash::add_correction_steps(const int32_t &da, const int32_t &db, const int32_t &dc, const uint8_t dm, block_t * const block) { static uint8_t last_direction_bits; And if X1 motor and X2 motor are separated, each motor has different distance_mm value.(but maybe 2 value is almost same) |
Did you test the latest
bugfix-2.0.x
code?Yes, and the problem still exists.
Bug Description
I want to use backlash compensation on a dual-X-axis printer. With backlash compensation set to 0 it works fine. For values greater than zero, each layer starts a bit more towards the home position of the axis. It seems as if the backlash value is subtracted at every "tool-change" (moving X-axis 1 to home position, move X-axis2 to print position).
Bug Timeline
Old one. Found it already in 2.0.5.3, but ignored it until I was sure it is a Marlin issue.
Expected behavior
Switching on the backlash compensation with the right value should produce a vertical wall where a vertical wall is designed.
Actual behavior
Switching on the backlash compensation with a value > 0 produce a sloping wall where a vertical wall is designed.
Here a photo of two waste towers of the same object. Left one without backlash compensation, right one with compensation.
.
Steps to Reproduce
2.put M425 X0.08 Y0.05 Z0.01 and M425 F1 S0 in Start-GCode (Set backlash to specific values for all axis and switch it on).
Version of Marlin Firmware
2.0.9.2
Printer model
ZIDEX (Zabex own IDEX; constructed by myself)
Electronics
Bigtree SKR pro V1.1
Add-ons
none
Bed Leveling
UBL Bilinear mesh
Your Slicer
Cura
Host Software
Repetier Host
Additional information & file uploads
Configuration.zip
Log files shows no difference between good and bad objects.
Here the Startup-GCode that is executed before the object is printed. In this version
StartupGCode.zip
This code produces good objects. Please remove Line 44 (the last line) to see the erroneous result.
The text was updated successfully, but these errors were encountered: