-
-
Notifications
You must be signed in to change notification settings - Fork 190
BLTouch Installation (english)
-
BL Touch Sensor (if possible an original and not a China clone, as these work significantly worse and can show extreme deviations over time, so that the bed or the mesh hangs "crooked" afterwards)
-
1x 100 cm servo cable extension
-
1x 50 cm servo cable extension
-
Soldering iron
-
PC with USB + Pronterface
-
Some time
First you need a bracket for the sensor. It doesn't really matter where it is attached, it should just be as close as possible and as far away as necessary from the nozzle. I decided to fit it directly into the original hotend housing and used this bracket for this purpose:
https://www.thingiverse.com/thing:2824005
The offset of the sensor is X=-2 Y=-25 and Z=0. These values are already set as a standard. For other BLTouch mounts like the X-Carriage the values would be e.g. X=29 Y=-15 and Z=0. However, all of this can be adjusted later via GCODE.
The wiring is comparatively simple, since the i3 Mega (M/S/X) already has an unused sensor pin. Since ground can also be tapped, you only need two soldering points on the small hotend board. Here you can simply solder the supplied 2-pin header.
The following diagram comes not from me, but from a user in some forum. unfortunately I don't know who the author is and I just hope that I can use the diagram like that. (To the author of the diagram : If that's not okay, please contact me)
One of the servo extensions is led out past the top of the board. So that nothing gets stuck. There is enough space in front of the connector for the cable. The circuit board can then be screwed tight:
The long cables can either be shortened or tamed with a cable tie ;)
And this is what it should look like when you have installed the board with the new pin header:
When routing the cables to the hotend you have to be careful not to tear off the heating cartridge:
When the sensor is properly seated, the retracted tip should look like this. When extended, it must protrude less than the nozzle.
And this is how it looks assembled. We simply put the servo cable into the black guide tube...
...where it comes out at the end:
The three wires of the BL Touch sensor control the servo, which can extend and retract the tip. These must be plugged correctly onto the pins of the Trigorilla mainboard. It is important to note which board you have (TRIGORILLA_14 v1.0 or v1.1), since the pin assignment has changed here. So please don't just plug it in and hope, but check very carefully whether the pins are correct and you have selected the right board.
The second servo extension is laid into the printer and connects the first extension to the mainboard. You can pull it directly between the sockets on the Anycubic Hub board without change:
And then put it up under the mainboard to the servo port:
Correct polarity is important! The plug must not simply be plugged in. The pins must first be removed from the connector and then reinserted in the order described above. +5V is down, ground in the middle and the servo pin up.
If you now switch on the printer, the tip of the sensor should move in and out a few times every second. If it doesn't, there is something wrong with the servo connection.
The installation can be done as usual via Cura. If you're not sure which board you have, try the 1.0 (_10 mark) first from here: https://github.com/knutwurst/Marlin-2-0-x-Anycubic-i3-MEGA-S/#download
Start the BLTouch leveling via the special menu. After moving to Home, the nozzle lifts up and moves to the first point at X40 Y40 and should then extend the tip of the sensor. If that doesn't happen IMMEDIATELY switch off the printer and try the firmware with the _11 mark. If it still doesn't work, the wiring is incorrect.
For the next steps we need the printer, a PC and Pronterface
- Heat up the bed
- G28
- G90
- G1 Z10
- G1 X40 Y40 F4000
- M280 P0 S10
- G91
- Slowly lower the nozzle with G1 Z-1 or G1 Z-0.1 or G1 Z-0.02 until the sensor is triggered. NOT FURTHER!
- If the sensor has triggered and flashes: M280 P0 S160
- M114 = Current position of the nozzle -> note! (e.g. Recv: X:40.00 Y:40.00 Z:1.30 E:0.00 Count X:3200 Y:3200 Z:520)
- G90
- G1 X42 Y65 F4000 (values from point 10 + offset of the sensor, i.e. X=40+2 and Y=40+25)
- G91
- Place a sheet of paper under the nozzle
- Slowly lower the nozzle with G1 Z-1 or G1 Z-0.1 or G1 Z-0.02 until the paper is difficult to move.
- M114 = Current position of the nozzle -> note! (e.g. Recv: X:42.00 Y:65.00 Z:0.70 E:0.00 Count X:3200 Y:3200 Z:520)
- Subtract the Z value from point 16 from that from point 10 -> 1.30 - 0.7 = 0.6 mm -> This is our Z offset.
- M851 Z-0.6
- M500
- Carry out BL Touch leveling again via the display. Finished.
From now on you never have to change anything again. Autoleveling can be carried out at any time. After the successful run, the created mesh is automatically saved.
In order to load and "observe" the mesh leveling before printing, the following must be added in the start code after the G28: M420 S1
That's it
Here is the auto-leveling in action:
If everything appears correct and the automatic leveling starts, but stops at the second measuring point and the error message "Probing Failed" appears in Pronterface, this is an indication that the Z-offset was not set correctly and the sensor suddenly reaches a point which is below the height of the nozzle.
If your sensor is in a different place, you can change not only the Z, but also the X and Y offset with the Gcode M851. (See: https://marlinfw.org/docs/gcode/M851.html )
In addition, my version of the installation is only one of many. If you're using the servo port for something else, you can also use an adjacent pin. Of course, it has to be adjusted in the firmware. My precompiled firmware versions always refer to the pin assignment I suggested.
*Es muss jetzt keine großzügige Spende sein. Ein paar Cent reichen um mir zu zeigen, wer überhaupt Interesse daran hat und wem die Weiterentwicklung wichtig ist. So bleibt die Motivation da und ich weiß einfach, dass ich nicht für die Tonne programmiere ;)
*It doesn't have to be a generous donation. A few cents are enough to show me who is interested in further development. So the motivation stays and I just know that I am not programming for the bin ;)