Join GitHub today
GitHub is home to over 36 million developers working together to host and review code, manage projects, and build software together.Sign up
Is M425 available for new calibration feature? #10826
The short version is we would like to use "M425" for backlash compensation and we wanted to ask whether this could conflict with any future planned uses. If so, whether there would be a better choice. The second question is whether there is an interest in incorporating this feature upstream.
The long version is that our Mini 2 uses belts for the Z axis and despite our best efforts to reduce backlash to the minimum, we found that the backlash is sufficient to cause noticeable thickness inconsistencies in the first layer. We believe that this problem will always be present in designs that use belts on the Z axis. We devised a routine for measuring Z backlash automatically during G29 and found that software backlash compensation does wonders for the first layer. However, this comes at the expense of artifacts on the rest of the print. In particular, any rapid motions of the motor to try to take up any backlash will inevitably create a small pause and vibration, leading to a seam in the print. We devised a smoothing algorithm that allowed backlash correction to be gradually applied over a distance, this eliminated any harsh transitions, which again lead to a huge improvement. Alas, we learned that the feature was very sensitive to the variances in the printer build, working amazingly well in some cases, but leading to a degraded quality other printers. This perhaps is a feature that could be used by someone who wished to hand tune the algorithm, but not something we could use in a mass produced printer.
Our current best solution is to simply apply the feature on the first layer, where it makes a huge difference on the first layer quality, while turning it off for subsequent layers where quality isn't guaranteed.
Our current implementation works as such:
We want to add this feature to our FW and to our slicer, but ideally in a way that won't cause future conflicts with the choice of "M425".
Please let me know if anything else would be better! Thank you for any feedback!