Checking & Matching Your Z-Axis Stepper Motors:
Your Z-Axis has two stepper motors, one on each lead screw.
Since they are both stepper motors, they should always be in sync.
When the motors or the supply are “off”, they can be moved, and they may get a few steps off. Shipping is a good example.
These are also “open loop” stepper motors, so a dropped count will go unnoticed by the controller.
The best way to check if they are fairly close is to print a 100mm x 100mm box on the print bed, and watch the Z-Axis motors as it moves in both X and Y directions. Slight motion is normal, but if your steppers are out of sync, you may see it compensating as it moves across.
Since the motors are on opposite sides of the X-Axis, this is the most likely part you will need to correct.
Using Cura, load any simple model, launch Control, and use the position Z, Y, and X to bring the print head down on the near-left zeroing pad.
(Note: clean off any boogers from the print nozzle as needed so you can get a clean contact) Get it close with Z, then adjust X and Y until it is where it would normally touch down during an automatic bed leveling process. Then bring Z down in small steps, 0.1mm at a time. Watch both the contact point and the Cura screen. When the print tip touches the leveling disc, the next step will report that it is at a limit, and you won’t hear it move. Back up and re touch several times. Then raise up 1 mm by hitting the up-Z 1mm button. Then move X across to the other leveling disc. Repeat the approach process using the down 0.1mm button until you get more limit reports. Compare what the numbers were (in the Cura GUI) from the left disc to the right disc. Your goal is to get them nearly perfectly matched, but if it’s off by 0.2 I wouldn’t worry much. Cura will report the position in hundredths, you will be moving in tenths (of millimeters). The counts should be fairly repeatable, but if they aren’t, clean your nozzle and try again.
To correct any difference, note how much of a rotation of the Z axis flex coupling is needed to move the amount of your error. Then do a “Motors off” button push (in Cura) so the steppers won’t try to hold their position. Rotate the appropriate shaft to remove this error and recheck your alignment. This is the tricky part - trying to determine which way your Z axis needs to rotate. Make small changes and take notes until you are sure you are moving in the correct direction. Pressing Z-up or Z-down will turn the motors back on in Cura. You will need to do a “Motors off” button push each time before you try to rotate the shaft.
You can check the front to back Y-Axis tilt the same way. If it’s off, you will probably need to shim the mounting brackets to correct it. Mine was very close in Y, but my X was off about 0.5mm, or about 1/4 turn of the shaft. I used the right shaft to make corrections as it was easier to reach. I can barely see my Z axis move as it traverses across the bed while printing now.
When you’re done, print your 100mm x 100mm square again and note how little the Z axis moves now.
If your bed is extremely tilted, you may have excessive mechanical load on the motors, or other issues.
Hope this helps! Please let me know what I may have missed. Thanks.
Here’s a sample from my Cura GUI, and the bottom two numbers are after I changed the Z-Axis ever so slightly on the RH lead screw:
< echo:endstops hit: Z:-155.00
< echo:endstops hit: Z:-155.00
< echo:endstops hit: Z:-155.02
< echo:endstops hit: Z:-155.00
< echo:endstops hit: Z:-155.00
< echo:endstops hit: Z:-154.95 <-- Multiple touches of the left front disc
< echo:endstops hit: Z:-154.95
< echo:endstops hit: Z:-154.95
< echo:endstops hit: Z:-154.95
< echo:endstops hit: Z:-154.95
< echo:endstops hit: X:117.29 <-- This is when I moved to the other side (right front disc)
< echo:endstops hit: Z:-154.75
< echo:endstops hit: Z:-154.76
< echo:endstops hit: Z:-154.76
< echo:endstops hit: Z:-154.79 <-- Multiple touches of the right front disc
< echo:endstops hit: Z:-154.79
< echo:endstops hit: Z:-154.79
< echo:endstops hit: Z:-154.97 <-- Result of my slight adjustment, happy with that.
< echo:endstops hit: Z:-154.98 <-- Again, to show repeatability