1 / 6
Auto bed-level for Ultimaker 2 with original Head — image 1
1 / 6

Auto bed-level for Ultimaker 2 with original Head

Order a print of this model

We calculate the final price from your selected file. You review and accept it before payment.

Saved on this device.

This solution uses a really cheap touch sensor for $0.13 as bed level sensor integrated on the free hole of the second…

Rating
0 / 5
Likes
5
Downloads
18
Makes
0
Views
1,222
Reviews
0

Updated at source:

Model information

Category
Accessories
License
Creative Commons — Attribution — Share Alike

This solution uses a really cheap touch sensor for $0.13 as bed level sensor integrated on the free hole of the second Nozzle.

I'll had some calibration "issues" with my Ultimaker 2 extended (clone). I'd had to repeat the calibration procedure every 1-2 Weeks. It was pretty annoying for me.

The generic sensors are pretty big and will result in loose of print space. Most of them are even to big to mount them inside the printing head.

As I'd like to have a reliable system i switched to Repetier Firmware which caused to loose the display, SD-Slot and rotary knob on the bottom, which i just used for bed calibration :). As i remember the original Ultimaker 2 Marlin firmware source does not support bed leveling or is at least broken.

I'll modified the firmware as like the sensor is turned on just before the auto bed leveling is started with G29. The Ultimaker 2 printing bed is on the bottom of the printer. The sensor will calibrate itself in air when it is turned on so i had no problems when starting the system in an unknown state.

Please don't use this sensor as reference for homing! The switching distance is just around ~2mm! I'm using the (mechanical) Z MAX sensor for homing ans Z MIN for bed leveling.

AliExpress: HAILANGNIAO TTP223

Video: YouTube

My Z_PROBE_Z_OFFSET is -2.2mm.

Pins i Used:

#define ORIG_Z_MIN_PIN 17

#define ORIG_Z_TOUCH_PROBE_PWR 16

.

.

.

I've changed in commands.cpp:

case 29: {

// START Xylen.C4 re-power Touch Sensor

pinMode(ORIG_Z_TOUCH_PROBE_PWR, OUTPUT);

digitalWrite(ORIG_Z_TOUCH_PROBE_PWR, HIGH);

// END Xylen.C4 re-power Touch Sensor

Printer::prepareForProbing();

.

.

.

// START Xylen.C4 turn off Touch Sensor

digitalWrite(ORIG_Z_TOUCH_PROBE_PWR, LOW);

// END Xylen.C4 turn off Touch Sensor

}

break;

case 30: {

Category: 3D Printer Accessories

Tags