This Maker will never have to think about leveling or Z height again.
3D printers are great pieces of Maker equipment, but they don’t work so well if the bed is not level with the extruder. Aligning these two elements together is commonly known as “bed leveling” or “tramming,” and, although simple in theory, needs to be highly accurate. Jeremie Francois decided to combine automating this process with setting the Z-axis offset (important when using multiple extruder heads) using a bed supported by lead screws on three stepper motors.
The motors that Francois used came pre-assembled with a lead screw, and throwing conventional wisdom aside, chose to use the screws to both drive and guide the bed. These “multi-use” lead screws are then independently controlled to touch a force sensitive resistor attached to the extruder head in different positions in order to level the bed. You can see the procedure in the video below, where he manually adjusts the bed into an offset position. The stepper motors then automatically adjust the bed in calibration mode.
Once this is done, the Z-axis can be controlled in “transparent mode” where all three steppers rotate in unison. This allows the calibration motors to act like a normal Z-axis when using the main Arduino Mega (ATmega2560) to control a print. If you’d like to get a better look at the code for this project, be sure to check out Francois’ GitHub page.