Posted on June 8, 2018
3D Printer Auto-Calibration
So, I built my 3D printer several years ago when SainSmart offered to sponsor my build with their new line electronics. They sent me a RAMPS
1.4 board, Arduino Mega 2560, endstop switches, Smart LCD control panel, and four A4988 cards.
I opted to build the more rigid Ord Bot Hadron because I like the stability and the design. I found the mechanical frame on eBay for $25 from Switzerland and some NEMA 17 stepper motors from the US for $7 each.
I wanted to get fancy and make a dual-extruder printer. At the time, dual extrusion wasn’t quite as common. I designed an adapter plate that allowed me to mount the two extruders to the carriage and spent some time adjusting the Z position on both to keep them even. I had to tweak the Marlin firmware and do some calibration, but I got it to work.
This was great, but I found that the build-plate adjustments were very crucial. Finally, four years later, I decided to put in an auto calibration function to eliminate the need for tweaking the level adjustment of the build plate. I’ve done a lot of research on sensors and considering the fact that I have a mirror as my build plate, I opted for a micro-switch attached to a servo. I also decided to remove one of the extruders to reduce the weight, which allows for faster print speeds.
I picked up a cheap MK8 extruder on eBay and installed it. I grabbed one of my cheap 9g servos that I had laying around and designed a switch mounting bracket that fit one of my spare micro-switches and the servo horn. I had to be careful to keep it slim enough to mount near the extruder without hitting anything. I have posted the .dxf file here for anyone that has access to a laser cutter and want to make one of their own. Servo micro switch mount (76 downloads)
For testing, I mounted the servo to the underside of the carriage and played with the position values to figure out the correct value for the switch to be stowed and the correct value for the switch to be deployed for sensing. I found this video to be VERY helpful…
I then mounted the servo using a metal 9g servo mounting bracket I had left over from my GPS AdventureBox Kickstarter project and dialed in the correct Z probe offset. The first layer of my prints are fantastic now!