How to calculate the proper layer height multiples?
We all know, that the best layer hight is, when you have multiples of full steps. If it is not, sometimes steps get skipped and end up bad layer-to-layer adhesion when one height step missed a tiny bit and then the next catches up, creating an extra-thick layer. For example, this was printed somewhat deliberately, and here, the extra spaced layers are perfect for delaminating the print with just a fingernail:
The Ender 3 I have uses the following Z-Rod:
- Diameter 8 mm
- 4 flutes
- ca 13 Threads per inch
- That is according to the table, a 2 mm pitch for one thread.
- As a result, it's an 8 mm pitch for each of the 4 threads.
The firmware (Marlin) I use claims in
configuration.h
that the NEMA17 motor would be using 400 Steps per mm in Z.configuration_adv.h
tells that the microsteps on the Z-axis motor are 16.In the printer's menu, Babystepping is in increments of 0.049 mm (though some rounding error seems to be there: 5 Babysteps are 0.250 mm).
Is the image in your question actually something you're having a problem with? It looks unrelated to layer height being a multiple of whole step, so aside from your question being valid and meaningful as stated, there may also be an XY problem here.
@Mark: Indeed, I switched to using multiples of 0.04 on my Ender 3, but I don't think it actually helped anything. As tested here, the A4988 stepper drivers which are stock on Ender 3 don't seem to have a serious problem with microstepping accuracy, and I think that's especially true if you're moving by more than 1-2 microsteps (typical layer move is between 35 and 100 microsteps) at a time. If there's interest I might do some test prints and post an answer (or a new Q & A) with the results.
@R.. the picture was created by purposefully setting the layer hight to accumulate an error that ticks over.
@Trish: You mean something like 0.2-0.04/16? I'd like to try to reproduce it. Do you perhaps have a really early Ender 3 that had bad stepper drivers or had them in the wrong mode? I seem to recall that being an issue they fixed early on. The test print looks like it has more problems going on than just inconsistent layer height.
@R.. 0.2125 layer height (+1/4 microstep) and doing all the movements in *absolute* movements instead of *relative* forced the result, as the target heights were as a result at 0.2125 mm (for the stepper that's effectively a 0.2 mm), 0.425 (0.4), 0.675 (for the stepper that's, depending on rounding or truncting, 0.6 or 0.7), 0.9 (here they are both 0.9) and so on.
that the NEMA17 motor would be using 400 Steps per mm in Z.
configuration_adv.h
tells that the microsteps on the Z-axis motor are 16.Easy. There are 400 microsteps in a millimeter, and 16 microsteps in a full step. So, there are 400/16=25 full steps in a millimeter. So a full step is 1/25th of a millimeter, or 0.04 mm. Your layer height should be a multiple of this.
As your leadscrew has a lead of 8 mm (i.e., a full rotation will move the Z-axis by 8 mm), a full step is either 8/200=0.04 mm (for a 1.8 degree stepper) or 8/400=0.02 mm (for a 0.9 degree stepper). So, apparently, you have a 1.8 degree stepper (and this is the most common type of stepper).
This video explains it well, too: Better Quality 3D Prints Using MAGIC NUMBERS on ENDER 3, CR-10, A10
License under CC-BY-SA with attribution
Content dated before 7/24/2021 11:53 AM
Mark 2 years ago
Note that this is only an issue on printers without high-quality microstepping drivers for the motors.