Herr Sanladerer performed a serious testing run with 12 automobiling sensors and made a video with the results.
Tested sensors were:
M8, 2mm inductive sensor (5V)
M12, 4mm inductive sensor
M16, 8mm inductive sensor
M16, adjustable distance capacitive sensor
M16, 20mm capacitive sensor
David Crocker's IR sensor
SHARP analog sensor
Microswiches
BLTouch
Here is the testing video:
The conclusions were:
If you have an aluminum bed, I'd go for the 2mm inductive type
For a glass-only bed, the BLTouch is a good option
With a PEI sheet or other stick-on bed surface, David Crocker's differential IR sensor is also a great alternative
The capacitive sensors are too sensitive to use seriously, and the SHARP type is not precise enough.
Inductive sensors with larger trigger distances also work really well, but will need circuitry for adapting to 5V and are much larger than the 2mm type.
Detailed report with many interesting details can be found at:
Jeremie Francois developed his own method of automatic print bed leveling and calibration by using some force sensors, Arduino to communicate with modified Marlin firmware and three Z-axis lead screws.
Njal Brekke developed a high accuracy and very low cost automatic bed leveling solution with piezo discs. You can easily build it yourself for around 20 USD.
He describes his project as:
Auto Bed Leveling using piezo electric discs for very high sensitivity. Mounted between the bed springs and the z-stage, any force down on the bed can be registered and used as a probe signal. Hence one can measure when the hot-end touches the bed surface. No modification to the hot-end or carriage is therefore needed, and the probe is insensitive to temperature.
This is still a work in progress, so although it is working for me in it's current form, it needs constant tuning as the circuit is not yet perfected, and the mechanical mounts have some known issues. A new circuit and new mounts have been designed but not yet tested.
So far, I've tried to only use parts available from sparkfun. I'm guessing a total cost for all parts of less than $20 USD.
Video of the setup in action:
You can find full description and how to guide at:
You want to put your 3d printer to the hard torture test? Now there is a free high grade model and website for it: the 3DBenchy. It has a specially designed boat model that has all the different parts to test all various aspect of your machine.
3DBenchy model
3DBenchy models printed by +BjörnMarl to benchmark the left sliced with Kisslicer, on the right with Slic3r. He writes: "Both are within specs by 0.05mm, but the surface looks quite different. Also with Kisslicer the name on the rear of the boat is almost readable, no chance for that with Slic3r."
Here is a description from the site:
What is #3DBenchy? #3DBenchy is a 3D model specifically designed for testing and benchmarking 3D printers. It is a small recognizable object that you can download for free, make and share.
On a personal note: first thing that came to my mind was "This is so great and useful how come I didn't think of this and maid it myself!" Kudos to the developers!
Don Leo posted this calibration result :-) great work Don! ... on the image, calibration will need some tweaking ;-) I feel for you man. We have all been there ....
He uses some sort of Delta 3d printer with 175 PLA and his slicer settings are:
3D Proto, creator of dual parking extruder, made an excellent video about how to install and use inductive distance sensor with Mk3 aluminum hot bed. This combination enables you to reach much better quality of ABS prints. With inductive distance sensor bed leveling you can:
Save lot of time by not having to have to mess with springs and screws on your print bed. Run the auto leveling routine before every print or just one time for each start-up of the printer.
Less issues related to non level print beds like parts coming up on one corner and nozzles jamming because the print started too close.
Inductive distance sensors are very cheap so it makes me wonder why are they not used by more 3d printers for automatic bed leveling? If you wont to see full guide on how to install and use it with Marlin go to:
GuruBrew has published this excellent video tutorial on how to make your own automatic print bed leveling. It looks easy and it will help you with your calibration and improve print quality. It takes a normally closed micro switch and a small RC servo, customized Marlin firmware and 3d printed probe mechanism.
Great guide by electronhacks where he explains how to setup Repetier-Host and Slic3r for first print on Kossel 3d printer. It deals with many uncertainties that beginners have when setting up the machine first time. It is great learning resource for other similar 3d printer setups.
Here is Steve Graber showing us how to calibrate an extruder on Cebrerus Pup 170 delta 3d printer. Methodology can be also used on other machines. Good learning material.
Here is a collection of filament diameter (width) sensors for your 3d printer which will enable you to compensate for variations in filament and get better print quality. You can make them with some basic electronics skills.
Thomas Sanladerer designed, printed and tested this filament diameter sensor. It could be used on filament making extruders as a control sensor, or in 3d printers to get better printout results. The work on it is in progress, further accuracy improvements are needed but the current results look promising.
This is a proof-of-concept filament diameter sensor, currently intended for an extruder making filament. The filament centerline is 90mm above the mounting surface. It picks up the filament's diameter between two bearings, amplifies it via the lever by a factor of 3.6, which moves a magnet in front of the hall sensor. The hall sensor's depth is adjustable and is locked into place via the M3 bolt. Bend the hall sensor's leads 90° to the back and place the sensor in recessed spot. Lead the wires out to the front.
The 6x2mm magnet goes into the matching hole in the lever. The second hole intended for a ballpen spring, which is not needed in most use cases. For testing, upload the included sketch to an Arduino, connect the hall sensor to 5V, ground and hook the signal pin up to A1 on the Arduino. Connect via serial at 115200 baud, it will start spitting out two values each line, the first one is the smoothed ADC value, the second one the calculated diameter.
To calibrate, insert a test object with the maximum diameter you want to measure between the bearings and move the hall sensor carriage until the ADC value just reaches a maximum. Lock the carriage in place and use that value along with the diameter of the object as the last entry in the Arduino's lookup table. Insert two (or more, if you increased NUMTEMPS) more objects of varying sizes (for example the shafts of drill bits) and fill out the lookup table. Use the idle position without anything inserted for the zero-diameter position.
Support might be required for the files as they contain 30° overhangs. If you use Slic3r, you're better off with no support material.
Here is a different project which is more heavily developed and has extensive video tutorial: the Filament Width Sensor by flipper for Lyman extruder or stand-alone applications with a voltmeter
Width sensor project description:
The idea is that with a real-time width measurement the 3D printer could compensate the extruded flow for changes in filament width. Also if there is variation between spools of filament, there is no need to calibrate for that when slicing. The g-code is independent of the filament diameter.
For filament extruders, the measured width can be used as feedback in the extrusion process.This version includes a custom designed pc board as well as a housing. A version of Marlin is modified to use the sensor data.
The sensor outputs a voltage in milimeters (3v=3mm) that is shown on the voltmeter. I made some changes to Marlin to read the filament diameter real-time and compensate the extrusion rate. Code uses a buffer to manage the transit delay between the sensor measurement and the nozzle.
All the files, code and instructions can be found at:
There is a version of a diameter sensor based on hacked digital calipers developed by Wei-Hsiung Huang. It has several issues related to digital caliper precision and internal workings but it is a good learning project with some usefulness.
You can find all the instructions, code and build guide at:
Tips include proper nozzle removal, reducing extrusion filament issues as the human eye may not be able to see 75 micron layers coming out and filament flow can seize, and knowing that the "calibration print" is a super useful "hacking tool" for accomplishing all of this.
Looks like the video is down. Here is a different video: