G30 will probe, and not change the Z, and report the location. So here we go. I just manually did this on the terminal of octoprint. Here’s what I did:
-
I turned on the serial log in octoprint. It records sent and received messages with their timestamps.
-
The bed was cool.
-
I turned off auto bed leveling (M420 S0)
-
I homed XYZ, and moved to X150 Y150
-
I sent G30 3x (It was easy enough to send in the terminal
<up><enter>
. -
I set the bed temperature to 65C
-
I sent G30 over and over again. I wouldn’t send the next one until the first one was finished moving.
- Timing doesn’t matter because the serial log will record the time of the response.
-
After a few minutes (apparently, it was 7 mins?), I stopped, and copied the serial.log to do some parsing.
-
I made two files, in one I used grep to only get the Bed: … Z: entries. The other only had the temperature reporting.
-
I then just used vim to edit the files so only the minutes, seconds, and data point were in the files.
-
I loaded it into google sheets, and found the appropriate Z value for each temperature point using VLOOKUP.
-
I checked G30 a while later (10 minutes, after I was done parsing this stuff), and it was still at 0.32mm.
-
I charted the results (X axis is minutes):
So, who guessed it would be wild and crazy right away, and then would level out? It looks like my wait needs to be about 2.5 mins, but I’ll leave it at 5 until it annoys me.
I’m interested in doing it again at different points on the bed, like right over a screw, or out on the corners. But for me to do it more than one more time, I think I would want to script it. I’m not that curious (ATM).
G30_middle.zip (4.6 KB)