Upgraded Ender 3 Pro

I had wanted a BLTouch 3D printer, I felt like the bed leveling would reduce the amount of fiddling per print. I chose to upgrade the motherboard to get something with a native BLTouch port, as the way to achieve it.

Introduction

I spent maybe an hour on the motherboard upgrade, and another 20 hours on the BLTouch. I wanted to document the process so the next guy can avoid some of the pitfalls I ran into. I burned a lot of time because I didn’t know Marlin, bed-leveling processes, or how the BLTouch was supposed to be working. This led down many dead ends because without knowing how it should work it is hard to troubleshoot.

How To Use This Guide

I’m trying to make this guide as short as possible, but also include depth to aid in troubleshooting. To that end, I’m trying to group things into sections, so you can skip quickly to the information you need.

I’m inexperienced with the BLTouch, but I’m going to write with authority. If you notice anything that doesn’t seem right, or if you know something I’ve said is wrong, please let me know so I can understand and correct it.

Overview

The following are the high level steps of what I had to do to upgrade the Ender 3 Pro (purchased in early 2020), with an SKR Mini E3 V2.0 and BLTouch sensor:

Background on Purchasing the Parts

Originally I ordered the Creality BLTouch upgrade kit, but I cancelled it when I realized that for around $20 more I could get a new motherboard as well.

Benefits:

Drawbacks:

Purchasing the Parts

You will need:

Printing the BLTouch Mount

I printed a mount from Thingiverse: “BLTouch Mount for Ender 3 (remix) by registeredthing”

This mount worked very well for the stock printer head, though it is a little difficult to get to the lower fan shroud screw with this installed.

Print this before you take apart your printer.

Swap the motherboard

Mostly I followed the “BigTreeTech Replacement Guide”

With these notes:

Connecting BLTouch Extension Cable

While I was replacing the boadr I went ahead and connected the board end of the BLTouch cables and run it through the cable loom up to the hot end.

The steps:

Do a Firmware Update

The board ships with firmware, so this is optional, but I ended up grabbing it.

Reset the board to Defaults and Save

When I first booted the new motherboard, the display showed “TMC Connection Error”. It eventually went away, probably because of loading the defaults, but they recommend loading the defaults:

Test Print, Manual Bed Leveling

Before putting on the BLTouch, do a test print to make sure everything is good so far. Level the bed as you normally would, using a sheet of paper and the leveling wheels.

Install the BLTouch

Install the BLTouch Firmware

You will need a firmware that has BLTouch enabled.

Manually Level the Bed

Some people replace the bed leveling springs with hard stand-offs, but I haven’t done that yet. I just wanted to start off with the bed in a known position, though the bed leveling should handle it not being leveled.

Set Up Slicer to Level Bed

The BLTouch documentation lists some GCODE that needs to be sent as part of the print start to get the BLTouch going. This GCODE comes from the “BLTouch Homepage”

In your slicer you need to add a “G29” code to the start up code. For Cura:

References

“BLTouch Manual”