Saturday, Feb 23 2019
The printer has an inductive sensor that checks nozzle height above the bed in 9 different spots. The firmware micro adjusts the height of the nozzle as it prints to account for a bed that isn’t perfectly flat. That’s good. Still, a flat bed is better than one that is warped.
Before plot
That is a plot of the bed on my MK3S. That particular measurement was taken with the bed cold. I expect minor differences when the bed is up to operating temperature. The raw numbers that make up that plot are:
Back
Middle
Front
-0.28
0.07
0.12
-0.02
0.00
0.09
0.12
0.15
0.25
The above measurements have been normalized to the center. The center is assumed to be zero. Other values are relative to the center point. As you can see my bed is warped by more than 0.5 mm between the back left corner and the front right corner. I’m going to try to make that better as soon as the M3 nylock nuts I ordered arrive.
Sunday, Feb 24 2019
The heated bed is held to the Y carriage by nine screws. The screws go through the bed, some spacers, and screw into the Y carriage. If the Y-carriage is perfectly flat, the spacers are exactly the same length, the heated bed is perfectly flat, and the screws are torqued to exactly the same value the print surface would be perfectly flat. None of those are true, thus the 0.5 mm difference across the bed seen above.
Heated Bed
I’m going to remove eight of the nine spacers. I’ll use nylock nuts to hold the screws in place on the bed. They are tightened just enough to allow the screws to turn. That’s what is pictured. The bed level can now be adjusted by how far the screws are threaded into the Y cariage.
I mostly followed the instructions found on github. This page helps convert the output of the M81 command to relative offsets. I used the OctoPrint Bed Visualizer plug-in because it didn’t need any extra software installed.
I first leveled the bed cold and after about half a dozen interations got it within 0.02 mm.
After plot, cold
Cold raw values
Back
Middle
Front
-0.00
-0.01
-0.0
-0.00
0.00
-0.01
-0.02
-0.01
0.00
The last few iterations were a waste of time. When I applied heat my supposedly flat bed looked like this:
Hot raw values before adjustment
Back
Middle
Front
-0.08
-0.11
-0.17
-0.07
0.00
-0.14
-0.21
-0.14
-0.14
The out-of-flatness went from 0.02 mm to over 0.20 mm, 10 times worse. It took another 4 or 5 adjustment iterations to finally get the values where I wanted them. My goal was a high/low difference of no more than 0.05 mm.
Hot raw values after adjustment
Back
Middle
Front
0.02
0.00
0.02
0.02
0.00
0.02
0.01
0.02
0.02
Goal met. I’m within 0.02 mm of having a perfectly flat bed (assuming the bed is flat between the nine measuring points). The Bed Visualizer shows almost a flat line when looking at an almost edge view.
After plot, hot