kkessler wrote:I just got a new M2 yesterday, upgrading from a Makerfarm Prusa i3 I had for about a year and a half. While the Makerfarm isn't 1/10th the printer the M2 is, I don't regret starting there, because I learned so much from the constant calibration and tweaking I needed to get the thing to print.
I started by setting the Z Stop and bed leveling, and, after struggling with getting at the Z Stop screw, I was able to set the bed gap to 0.15 mm using a feeler gauge. I then printed the 2mm calibration block as described in the the forum post, and my block was about 2.15 mm high, which would see what I would expect to see. When I read the text of the instructions, though, I see a comment that I should readjust the Z Stop if the difference is greater than 0.1mm from 2 mm, and I see comments in the tread to the effect that the Z Offset makes up for errors and thermal variability of the Z Stop. I don't understand this expectation. If the print head is .15mm above the bed when the printer is zeroed on the Z axis, and the first step in the gcode is Z0.2 before it starts printing, the print head should be 0.35 mm above the bed when the first layer prints, and 9 more 0.2mm layers would make the block 2.15 mm tall. Why would I expect the calibration block to be 2mm unless I set the Z Stop so that the print head just touches the bed? Is there some sort of built-in Z Offset in firmware that is assuming a 0.15mm gap, and the Z0.2 gcode command just moves the hot end 0.05mm up, so that it is really 0.2mm above the bed?
Well, since we're talking theory:
(Katie bar the door.....)
Practically versus theoretically, you
can't set the actual Z-Home at zero, you would smack the nozzle into the plate, burn any tape or surfacing material on it, and if there is any leftover filament on the nozzle, you've got trouble. So the starting point
has to be set physically lower than the tip of the nozzle. The nozzle then tries to " Fill the Gap" underneath it with liquid plastic.
If the gap is too large, the plastic falls uncontrolled for the first layer and isn't squished enough to cause it to stick to the plate. If the gap is too small, the first layer gets smeared out over the plate. And since every layer builds on the first layer, problems can crop up later if the first layer doesn't go down correctly.
The ideal gap size (from 0.15 mm to 0.20 mm) is almost too small to see on a pair of calipers, and because there is some play and bounce in the switch for the Z-Stop, (and the bed has springs under it), it's very difficult to get the gap perfect the first time, even with a feeler gauge.
So we use a 2-step process to fine-tune the gap and give us better prints.
1. First step is setting the
Z-Stop, using the 0.15 mm feeler gauge
while the nozzle and bed are at temperature. That gets the bed close to the correct starting point. But even if you were to hit the nail on the head, if you use a different filament with different temperatures, that gap between the bed and the nozzle is going to be off. So you would theoretically have to re-set the
Z-Stop every time you change filaments. (Which would be a huge PITA.) That's where the second step comes in with the printed squares calibration.
2. We know that if the
Z-Stop is set 100% correctly, then printing a square that is designed to be exactly 2.00 mm tall, will print a square that is exactly 2.00 mm tall.
But we know that if the printed square comes out to ...say... a measured 2.04 mm tall, then the
Z-stop, as it is currently set, is 0.04 mm too low. The plastic squirted out to fill the volume, but the first layer is going to be taller than the subsequent layers, and the thread will be narrower.
So what? It still bonded to the next layer going up, right?
A difference of 0.04 probably wouldn't make much of a difference - true, but more than that will start to show up as a stringy surface on the bottom of your print. You will start to see separate threads that don't bond
to each other on the bottom of the print, and when you lift the print off the bed, it will have a ruined bottom.
(2.00 mm ideal - 2.04 mm actual =
-0.04 mm Z-Offset)
The
Z-Offset is a global fudge factor that we put into the software that moves the bed up or down by a fraction for the entire print. It's just a way of correcting for a small variance in the starting point of the bed. You cannot physically make an adjustment that small, but the software can, and the difference in print quality is significant.
You subtract the measured value from 2.00 mm, and not the other way around, because the resultant is going to give you the correct
Z-Offset number, whether positive or negative, to correct the position of the bed relative to the nozzle. A negative
Z-Offset number moves the bed closer to the nozzle. A positive
Z-Offset number moves the bed farther away from the nozzle, so the thread isn't so smashed.
3. Having the
Z-Offset number fall within half of a layer height (-0.10 to +0.10) is just good practice, it is
not a requirement. You
can use the
Z-Offset number to correct for numbers outside of that range. (For that matter, most calipers do not measure particularly accurately, especially the $30 ones most people have on hand.)
After you determine what the
Z-Offset is, you drop that number into the
Global Z-Offset slot in the slicer software and you don't have to re-set the
Z-Stop. (I find it much easier to do it in the software.)
But..... there are a couple of guys here who successfully turn the
Z-Stop bolt by a certain number of flats to adjust the bolt as needed for each spool, because they know how many turns it takes to move the bed up or down by a certain amount, and if you are more comfortable doing it that way, that is always an option. (
jimc understands that method if that is what you would rather do.)
Hope that helped to explain it for any other folks who might want more information on why we do this. Taking the time to set the
Z-Offset makes for smooth prints that stick just right. I just set the
Z-Stop once, then print a few cubes for each type of filament and I save the profiles with the correct
Z-Offsets for each filament. (And I don't have to mess with setting
Z-Offsets again until I try a new filament.)
Coming from a different 3D printer, you know how important it is to get the calibration correct. This is just an easy way to do it once, set it, and forget it. It will print the same way for that filament from then on.
Okay, I'm done now. (Luv them theoretical discussions!)
