Basic Information:
Printer Model: ULTrong Origee (dont bother looking, might as well be custom)
MCU / Printerboard: Mellow Fly C8 (not using onboard host)
Host / SBC: RPi4 MainsailOS (up to date)
klippy.log.2025-04-02.log.zip (2.2 MB)
klippy (14).log (290.7 KB)
After running G28 and Z_TILT_ADJUST the Z PROBE command returns approximately 0.8 to 0.9
Before running Z_TILT_ADJUST, z=0.31 and z1=0.68 and afterwards, its 0.9
Adjusting [stepper_z] position_endstop has no effect on the outcome. For example, I added 0.3 to position_endstop so z=0.003 & z1=0.35 but after running Z_TILT_ADJUST, itās still z=0.89
This printer has dual Z and dual Z endstops. The XY gantry is heavy and drops when Z motors are disabled, so you can often see a very obvious leveling step on a normal G28 Z command.
However, due to the placement of endstops, adjusting the endstop position is not possible. And Klipper wonāt accept an additional endstop offset for z1ā¦
Option āposition_endstopā is not valid in section āstepper_z1ā
- (I think this should be allowed, but understand it would require more dev work to accomplish)
And since it has dual z endstops, running G28 Z after a Z_TILT_ADJUST will just undo the tilt compensation. (based on recommendation seen on reddit)
The only workarounds I currently have are to use a bed mesh or manually set z_offset before I start a print. Mesh is OK, but if the offset changes (which it does when the screws get turned sometimes), then the relative bed mesh measurements are worthless and still require a manual z_offset.
So, I think Iām missing something⦠there should be an offset that will compensate for this without manual intervention.
My existing process:
To start with, I level my bed with the frame. This is the most important prerequisite of Z_TILT_ADJUST in my opinion. I just make sure the bed-to-frame measurement is equal on both sides before starting. Itās not a bed slinger, so I put the probe points in the middle of Y nearest the Z screws. And have to turn both front and back bed screws equally as I adjust the entire left, then right sides.
Then I run G28 and Z_TILT_ADJUST
Then I run the Bed Leveling macro from Klipper Screen (SCREWS_TILT_CALCULATE)
Then I check the bed-frame distances again. But itās not usually much different from before.
At this point, the PROBE command returns approximately 0.8 to 0.9
Iāve tried adjusting [stepper_z] position_endstop and even [bltouch] z_offset but neither have any effect on the outcome after Z_TILT_ADJUST
PROBE_ACCURACY returns a standard deviation of 0.005 to 0.01
Am I missing something or is Z_TILT_ADJUST just making up its own absolute Z?
Should it not be seeking z=0 as it adjusts both steppers?
Printer: ULTrong Origee (donāt bother looking, its a chinese ghost printer our parent company bought⦠and nearly impossible to google due to the similarity to an MCU character))
600x600x800 printable area
XY Gantry with independent dual Z leadscrews in middle of Y axis
dual z endstops
bltouch only used for Z_TILT and BED_MESH
600x600 bed on 4 springs with 4 screw adjustments
Came with Mellow Fly C8 but onboard host OS was unreliable, disabled and replaced with RPi 4 running MainsailOS (will be upgrading to BTT Octopus later this year)
mcu (stm32f407xx)
Version: v0.12.0-439-g1fc6d214f
Host (aarch64, 64bit)
Version: v0.12.0-474-g4b9add2fc
OS: Debian GNU/Linux 11 (bullseye)
Distro: MainsailOS 1.3.2 (bullseye)