Install BL-Touch on Ender 3 V2 Oct 11th 2020 Words: 465
This post is created a year ago, the content may be outdated.

Recently I bought an Ender 3 V2, it is the first 3D printer in my life and I quickly fall to the 3D printing world with infinite possibility.

One problem is the Ender 3 does not come with auto bed leveling (ABL), which means I have to use a piece of paper to level the bed every time before printing. This quickly becomes annoying. Luckily, the main board has reserved the port for BL-Touch, the level sensor, and the community has also worked out the BL-Touch compatible firmware. It is time to have the printer upgraded!

The guide I am following is Ender 3 V2 BLTouch Firmware Installation Guide by


The BL-Touch site is made by ANTCLAB official site

However, there is another option available. 3D-Touch is the sensor function exact same as the BL-Touch, but has a much favorable price. 3D-Touch is the sensor I choose.

The sensor will need a place to hang besides the nozzel, thus a mount is required. I found this model on thingiverse suits perfectly for my Ender 3 V2.

Combine the components with M2 screws.


The jumper wire extender (male to female cable) needs to be at least 80cm long to connect the sensor to the main board.

There’s no need to switch the cable in my case, just plug in the cable pin to pin.

Here’s the image from because I forgot to take the picture in this step.


Copy the latest firmware from this post to the root of the sdcard, then reboot to flash it.

First shot

Preheat the nozzle, and use the AUX leveling option in the menu to corner the nozzle, then use a piece of paper and the four knobs to level the bed manually.

Click the auto level in the root menu, and the printer should be probing level data using the BL-Touch.


In Cura’s printer setting, add BL-Touch related code at the beginning of the starting code. I’m using G29 instruction so the ABL will start before each print.

; Ender 3 Custom Start G-code

G92 E0 ; Reset Extruder

M280 P0 S160 ; BLTouch alarm release
G4 P100 ; delay for BLTouch
G28 ; Home all axes
G29 ; Auto Leveling

G1 Z2.0 F3000 ; Move Z Axis up little to prevent scratching of Heat Bed
G1 X0.1 Y20 Z0.3 F5000.0 ; Move to start position
G1 X0.1 Y200.0 Z0.3 F1500.0 E15 ; Draw the first line
G1 X0.4 Y200.0 Z0.3 F5000.0 ; Move to side a little
G1 X0.4 Y20 Z0.3 F1500.0 E30 ; Draw the second line
G92 E0 ; Reset Extruder
G1 Z2.0 F3000 ; Move Z Axis up little to prevent scratching of Heat Bed
G1 X5 Y20 Z0.3 F5000.0 ; Move over to prevent blob squish