When I try to print, the nozzle is a few mm above the print surface so the filament is extruded into air. This is a new behavior that I am having trouble tracking down. The printer was working well, but I made some changes, so I’m sure I screwed something up. I changed the nozzle, and added some gcode to Octoprint GCODE Scripts, which I subsequently removed due to this issue.
It appears that there is some sort of Z offset in place, but I did not intentionally set one (it is definitely set to 0 mm in Slic3r, and I don’t think I accidentally set one in the firmware). I also don’t see anything in the gcode file that would cause the print head to extrude into air. I calibrated the Z axis several times, but the offset is still there.
For completeness, to calibrate the Z axis, I first set the Z position_endstop to 0 in the config file and do a firmware_reset. After homing, I then move the nozzle over the print surface and lower it as close as possible. Then I use a 0.2 mm feeler gauge to level the bed. Then I use M114 to get the position of the print head and calculate the exact value of the z position_endstop (-z + 0.2) . I update the config file with the new value and do another firmware_reset. This Z axis calibration usually gives me very good results and I never use a Z offset.
Are all printer options saved in the config file? Is it possible that I could have accidentally saved an offset somewhere? Any suggestions as to how to debug this mystery offset?