David Terán (davidtgbe)
How to install bltouch on Anet ET series 3D printers
This tutorial covers the basic and necessary aspects to be able to install a bltouch in the Anet ET series. Aspects such as wiring routing will not be covered, leaving the user the solution that he deems most appropriate.
Not for production use. This mod requires some hardware modifications that will void your warranty. I am not responsible for what may happen to the motherboard or printer. Use only at your own risk.
There are no free exposed pins/expansion ports in the ET4/5 motherboard, so, we have to make do with what we have.
If we take a look to the Et4 interconnection board
And to the bltouch specs
It is clear we are going to need:
Bltouch needs to be feed with 5V, so we have to connect the step-down module to convert the 24V available on pin 2, to 5V. We can use a step-down converter like this one
and connect it as below
We can reuse Z-Limit (pin 11) for Z-min, and auto-level (pin 3) for the servo signal. However, as pin 3 is a sensor signal, it is designed as a pull-up.
Resistor normaly sets input signal to VCC, and, when the switch closes, it sets input to GND. We need to turn the input into an output, so, we need to let te signal be controlled dynamically by the MCU, avoiding to be pulled up or down by passive components. For this purpose, we need to remove capacitor and resistor, which, for the auto-level (pin 3), are serigrafiated on the motherboard as R40 and C37.
As I dont’t have a hot air gun to desolder the components, I have used two soldering irons, one on each pad of the component at the same time, trying to imitate this. There are other techniques and better tools which are not the target of this tutorial.
Once we have desoldered the resitor and capacitor, we need to wire all the things up.
We are going to need JST splitters (you can buy them or do it yourself), or employ any other solution which allows us to share an already used pin (like pin 2 (24V)) in the interconnection board.
You can take 24V and GND pins from whatever JST connector in the interconnection board. I would take 24V from BL or FAN connectors, since the hotend JST tends burn out as many users have reported.
Bltouch GND points for signal and power can be merged/shared. If you have interferences or mal functioning, use a standalone wire for each GND.
This is totally optional. Usually, a port protection network would be placed between the signal pin and the bltouch to avoid GPIO damages in case of wrong wiring. STM32F4 specs states that GPIOs can source/sink a max current of 25mA, so the min current limiting resistor value to be placed would have a value of 3.3V / 25 mA = 132 ohms. The 3.3V Zener diode clips over-voltage down to a safe 3.3V.
I’ve not used it, but, DOUBLE CHECK CONNECTIONS before turning on the printer.
You can find changed files in this link
Below are changed lines on configuration.h and pins_et4.h. If you want to take a look at the conversion table between the interconnection board and the MCU pin naming, take a look at pin mapping section here.
// Force the use of the probe for Z-axis homing
#define X_HOME_DIR -1
#define Y_HOME_DIR -1
#define Z_HOME_DIR -1
We are using:
#define X_STOP_PIN PC13
#define Y_STOP_PIN PE12
#define Z_MIN_PIN PE11
#define Z_MIN_PROBE_PIN PE11
#define SERVO0_PIN PC3
If you have any questions, please feel free to leave comments down below, our guys are waiting to help you. Joining our community is also a good idea, you can get information, model files, g-code files, tutorials and find the enthusiasts as you are. It’s a place where creative people gathered, just hit the link: https://forum.anet3d.com/