Assuming that the model is sliced correctly, not scaled (by looking into the G-code you can find out if it is sliced correctly, look up the last layer move G1 Zxx.xx
, xx.xx
should be the height of the model). If that is correct, then your Z might have a problem in that the steps per mm are set incorrectly, or your Z stepper is missing steps.
As Marlin is used as printer firmware, you can check and change the configuration of the Z steps per mm. When using a console you are able to communicate with the printer and see output return.
With G-code M92
you get a report of the current settings. These should be verified with the mechanics (e.g. gearing) and electronics used (e.g. micro stepping value).
In firmware configuration this is found in file Configuration.h (note: this is an example and may differ from your values!):
/**
* Default Axis Steps Per Unit (steps/mm)
* Override with M92
* X, Y, Z, E0 [, E1[, E2...]]
*/
#define DEFAULT_AXIS_STEPS_PER_UNIT { 80, 80, 4000, 500 }
The third value is the setting for the Z axis. Your value is too low and should be increased according to the fore mentioned mechanics and electronics.
By sending the command M92 Zxxx
(where xxx denotes the value you calculated) will update the steps per mm.
There are online calculators that can help you calculate the correct value.
As an example, a very common lead screw is the trapezoid Tr8x8(p2). Assuming that you have normal 200 steps/rev steppers and use 16 micro steps and have the fore mentioned lead screws with a 2 mm pitch, the Z requires 1600 steps per mm.
You should check your hardware, stepper, screw and driver. Note that 8000 is a strange value, your Z axis is only about 10 % off, if 8000 value is correct for 200 (1.8°), 1/32, 0.8 pitch, but also for 400 (0.9°), 1/16, 0.8 pitch (M5).
Considering you are losing about 10 % it can also be that the Z stepper is missing some steps. Increasing the Vref of the stepper motor drivers may help with that.