After trying to implement auto bed leveling feature with a retractable switch, I decided to use a small induction sensor. I experienced poor mechanical reliability with the retractable switch mostly because the PLA bracket was melting when the 2 extruders were hot.
I have modified the original hot end holder design by Ultimaker so that a support plate for the induction sensor can be tightly screwed.
Here is the original design compared to the new one
The induction sensor is a TL-Q5MC1-Z from Omron. Even it is rated for 10 to 30 VDC power supply, it works very well down to 2.5V, including the embedded red LED indicator. The detection distance of the aluminum plate is about 2mm. So I have replaced the 3mm glass plate by kapton tape to accommodate this short detection range.
The sensor is connected to GND, +5V and Pin13 of the Ultimaker controller board so that the ZMIN endstop switch is still active. Keeping the ZMIN endstop is useful for security reason in situation where the induction sensor does not work anymore, or the aluminum bed is not present.
I have modified the Marlin firmware as below:
- Activation of the 3 points bed leveling feature
- Optimization of G28 and G29 sequences
- Support of a sensor connected to the Pin 13 of the controller board
The project resources are available here:
- Hot-end holder 3D model in STEP format
- Omron sensor Mounting plate 3D model in STEP format
- Modified Marlin firmware
- Ultimaker forum interesting technical discussion