Ender 3 RRF v1.1 setting up BLtouch
-
Hello everyone, I come to you in a time of great need.
I started installing a Bigtreetech E3 RRF v1.1 into my Creality Ender 3 about 14 hours ago. To get the printer working with RepRap 3.3.0 took about 3 hours, including swapping the board. (I'm a novice in 3D printing) Everything played along nicely so far, I was able to configure the boards wifi, so I can access its controls from my browser. I did every PID testing and modified the config file accordingly. However...
BLtouch. I have been sitting in front of my computer almost 10 hours straight and I can not for the love of god find out how to get this cursed thing to work properly. Maybe I'm just tired or can't think straight, but I'm really desperate at this point. I read many forum posts regarding bltouch, watched about 4 youtube videos, looked up a bunch of documentation regarding the subject, however, I'm just as lost as in the beggining.
I'm willing to provide anything, any config file or setting to make things work, just please help me get this menacing device to cooperate and be able to finally print again.
Thank you.
-
@re_tour I don't know anything about that board but do you know the names of the servo pin and the sensor pin?
Does the BLTouch glow red?
Does it deploy and stove the pin a couple of times when starting up?
-
@gixxerfast The servo pin is PB0 and the sensor is PC5.
The bltouch glows red indeed, and when I turn the printer on it pushes the sensor pin out and retracts it two times. -
In your config.g, do you have something like this:
M950 S0 C"io2.out" ;<-- Servo pin M558 P9 C"io2.in" H5 F300:120 A3 T6000 ;<-- Sensor pin G31 P500 X37.1 Y9.25 Z4.370 ; set Z probe trigger value, offset and trigger height
I don't know what the pins are called in RRF when you have a non duet board, are they just PB0 and PC5 or are they "translated" ?
-
OK, should be like this as far as I can see:
M950 S0 C"servo0" ;<-- Servo pin M558 P9 C"^probe" H5 F300:120 A3 T6000 ;<-- Sensor pin G31 P500 X37.1 Y9.25 Z4.370 ; set Z probe trigger value, offset and trigger height
Then you should have a file in the sys folder called deployprobe.g:
M280 P0 S10 ; deploy BLTouch
And another file called retractprobe.g:
M280 P0 S90 ; retract BLTouch
I don't know if you've seen this but TeamGloomy got a lot of documentation for the STM and LPC based boards:
https://teamgloomy.github.io/skr_rrf_e3_general.html -
@gixxerfast
I have this in my config.g:; Z-Probe M950 S0 C"servo0" ; create servo pin 0 for BLTouch M558 P9 C"^probe" H5 F120 T6000 ; set Z probe type to bltouch and the dive height + speeds G31 P500 X117.5 Y117.5 Z2.5 ; set Z probe trigger value, offset and trigger height M557 X15:215 Y15:195 S20 ; define mesh grid
deployprobe.g looks like this:
; deployprobe.g ; called to deploy a physical Z probe ; ; generated by RepRapFirmware Configuration Tool v3.3.1-LPC-STM32+2 on Tue Dec 28 2021 01:07:55 GMT+0100 M280 P0 S10 ; deploy BLTouch
and retractprobe.g like this:
; retractprobe.g ; called to retract a physical Z probe ; ; generated by RepRapFirmware Configuration Tool v3.3.1-LPC-STM32+2 on Tue Dec 28 2021 01:07:55 GMT+0100 M280 P0 S90 ; retract BLTouch
-
@re_tour So if you do a manual G30 it deploys and probes?
Or if you just try this: M280 P0 S10 manually
?
-
@gixxerfast well it ejected the probe and now its flashing red.
-
@re_tour When you did what?
-
@gixxerfast sent M280 P0 S10 in the console to the printer
-
@re_tour OK, should not flash. Did it have room (in z) to fully deploy without hitting the bed?
-
@gixxerfast Not really
-
@gixxerfast okay so I raised the head and tried again, now the probe is extended and the red led is not on at all.
Sent out the M280 P0 S90 command, now the pin went back to its place and the red LED glows constantly. -
@re_tour Good, then that works.
EDIT: Not needed as you did it above ^
Retract the probe withM280 P0 S90
Then when the probe is above the bed, do a
G30
-
@gixxerfast After doing a G30 the probe extended, the head started going down on the Z axis very slowly until the probe pin reached the bed, when that happened it retracted the probe and the whole rig went up a bit faster.
-
@re_tour Great. Then all works as it should and what you now want is to configure your homez.g and your homeall.g
Look here for examples of that:
https://teamgloomy.github.io/skr_rrf_e3_bltouch.htmlJust make sure to modify the x and y coordinates so that you probe wherever you want. (middle of the bed)
I am now assuming you have working homex.g and homey.g in your /sys directory
-
@gixxerfast Yeah, about that, I already did that.
Here's my homez.g:; ################# Home Z Preparation ################ G91 ; Relative mode G1 H2 Z5 F6000 ; Lower the bed G90 ; Back to absolute positioning G1 X117.5 Y117.5 F10000 ; Move to the center of the bed. Adjust to the co-ordinates required for the centre of your bed ; ################# Home Z Preparation ################ M558 F250 ; Set the probing speed G30 ; Probe a single point M558 F30 ; Set a slower probing speed G30 ; Probe a single point
and my homeall.g:
; homeall.g ; called to home all axes ; ; generated by RepRapFirmware Configuration Tool v3.3.1-LPC-STM32+2 on Tue Dec 28 2021 01:07:55 GMT+0100 (közép-európai téli idő) G91 ; relative positioning G1 H2 Z5 F6000 ; lift Z relative to current position G1 H1 X-240 Y-240 F1800 ; move quickly to X and Y axis endstops and stop there (first pass) G1 H2 X5 Y5 F6000 ; go back a few mm G1 H1 X-240 Y-240 F360 ; move slowly to X and Y axis endstops once more (second pass) G1 H1 Z-265 F360 ; move Z down stopping at the endstop G90 ; Back to absolute positioning G1 X117.5 Y117.5 F10000 ; Move to the center of the bed. Adjust to the co-ordinates required for the centre of your bed ; Uncomment the following lines to lift Z after probing ;G91 ; relative positioning ;G1 Z5 F100 ; lift Z relative to current position ;G90 ; absolute positioning
Problem is I don't know what I did wrong. It could be the order or something.
-
@re_tour
Your homeall.g is missing stuff but this is how I do it and it's not perfect and my Ender so modified now I don't really know what it is any longer but it should work fairly OK:homeall.g:
; homeall.g ; called to home all axes ; M98 P"/sys/homex.g" M98 P"/sys/homey.g" M98 P"/sys/homez.g"
homex.g:
; homex.g ; called to home the X axis ; G91 if !move.axes[1].homed ; raise Z a bit G1 H2 Z5 G1 H2 Z5 F6000 ; lift Z relative to current position G1 H1 X-240 F3000 ; move quickly to X axis endstop and stop there (first pass) G1 H2 X5 F6000 ; go back a few mm G1 H1 X-240 F240 ; move slowly to X axis endstop once more (second pass) G90 ; absolute positioning
homey.g:
; homey.g ; called to home the Y axis ; G91 if !move.axes[0].homed ; raise Z a bit G1 H2 Z5 G1 H1 Y-240 F3000 ; move quickly to Y axis endstop and stop there (first pass) G1 H2 Y5 F6000 ; go back a few mm G1 H1 Y-240 F240 ; move slowly to Y axis endstop once more (second pass) G90 ; absolute positioning
and finally homez.g
; homez.g ; called to home the Z axis ; do nothing if XY is not homed yet if !move.axes[0].homed || !move.axes[1].homed echo "XY are not homed yet. Aborting" abort ;end if G91 G1 H2 Z5 F6000 G90 G1 X130 Y160 F6000 G30 K0 Z-99999 ; Probe the Z pin at the back G1 Z10 F9000
Also you cab define two speed probeing with this in your config.g:
M558 P9 C"io2.in" H5 F300:120 A3 T6000 ; See the F300:120 first speed 300 second 120
When all this is done do a, in order, to test:
g28 x g28 y g28 z g28
-
@gixxerfast Okay, after doing everything, during the testing all axises find their homes and the Z homing does 3 probing and then stays in place, in the middle. bltouch red led is on constantly.
-
@re_tour Good, then all works as expected.
What you want to do now is calibrate your Z offset.
I usually do the paper friction thing and just home z and then lower it slowly by G1 Z-0.2 (DON'T FORGET THE G91 before that) (or less) until it's right. Then I adjust the offset in the G31 in config.g