From 439d7b40489366600ae6f43212d36158d25bca3c Mon Sep 17 00:00:00 2001 From: pedro Date: Mon, 14 Jun 2021 23:20:49 +0100 Subject: [PATCH] Fix and improve bed sensing Fixing: * bed screws location * bed screws order * X max 510 -> 500 Improvements: * Probing points * Home all speed * Probing speed (decreased speed for increased accuracy) --- bed.g | 11 ++++++----- config.g | 11 ++++++----- homeall.g | 14 +++++++++----- homex.g | 2 +- homey.g | 2 +- homez.g | 2 +- macros/Calibration/Reset BLTouch.g | 1 + 7 files changed, 25 insertions(+), 18 deletions(-) create mode 100644 macros/Calibration/Reset BLTouch.g diff --git a/bed.g b/bed.g index 1bbacbf..b5cce00 100644 --- a/bed.g +++ b/bed.g @@ -2,12 +2,13 @@ ; so if G31 P500 X-30 Y-15 Z1.7 then first probe will be at ; X30 Y20 (when G30 P0 X0 Y5) -M280 P0 S160 ; clear and reset BL touch + M561 ; clear any bed transform -G30 P0 X25 Y25 Z-99999 ; probe near a leadscrew -G30 P1 X250 Y475 Z-99999 ; probe near a leadscrew -G30 P2 X475 Y25 Z-99999 S3 ; probe near a leadscrew and calibrate 3 motors +G30 P0 X20 Y20 Z-99999 ; probe near a leadscrew +G30 P1 X250 Y480 Z-99999 ; probe near a leadscrew +G30 P2 X480 Y20 Z-99999 S3 ; probe near a leadscrew and calibrate 3 motors -G29 ; probe the bed and enable compensation +M280 P0 S160 ; clear and reset BL touch +;G29 ; probe the bed and enable compensation diff --git a/config.g b/config.g index 2efb558..03fddb3 100644 --- a/config.g +++ b/config.g @@ -27,7 +27,7 @@ M84 S30 ; Set idle timeout ; Axis Limits M208 X0 Y0 Z0 S1 ; set axis minima -M208 X510 Y500 Z500 S0 ; set axis maxima +M208 X500 Y500 Z500 S0 ; set axis maxima ; Endstops M574 X1 S1 P"io2.in" ; configure active-high endstop @@ -36,14 +36,15 @@ M574 Y2 S1 P"io1.in" ; configure active-high endst ; Z-Probe M950 S0 C"io7.out" ; create servo pin 0 for BLTouch -M558 P9 C"^io7.in" H3 F500 T12000 ; set Z probe type to bltouch and the dive height + speeds +M558 P9 C"^io7.in" H3 F250 T12000 ; set Z probe type to bltouch and the dive height + speeds ;; Pay special attention to the values bellow on G31, the Z value needs to be validated for your printer ;; Start with something like 0.5 ;; Documentation available: https://duet3d.dozuki.com/Wiki/Test_and_calibrate_the_Z_probe -G31 P500 X-28 Y-13 Z2.225 ; set Z probe trigger value, offset and trigger height +G31 P500 X-28 Y-13 Z2.210 ; set Z probe trigger value, offset and trigger height ;; -M671 X-4.5:250:504.5 Y-4.52:505:-4.52 S5 ; define positions of Z leadscrews or bed levelling screws -M557 X25:475 Y25:475 P10 ; define 10x10 mesh grid +M671 X506.5:250:-2.5 Y0:508.5:0 S6 ; define positions of Z leadscrews or bed levelling screws + +M557 X25:475 Y25:475 P15 ; define 15x15 mesh grid ; Heaters ;; BED diff --git a/homeall.g b/homeall.g index 22ddf85..379dbba 100644 --- a/homeall.g +++ b/homeall.g @@ -2,19 +2,23 @@ ; called to home all axes ; +; BLTouch +M280 P0 S160 ; Precautionary alarm release +M280 P0 S90 ; Ensure the pin is raised +; M280 P0 S160 ; Reset probe G91 ; relative positioning G1 H2 Z5 F6000 ; lift Z relative to current position -G1 H1 X-625 Y625 F1800 ; move quickly to X and Y axis endstops and stop there (first pass) -G1 H1 X-625 F900 ; move quickly to X axis endstops and stop there (first pass) -G1 H1 Y625 F900 ; move quickly to Y axis endstops and stop there (first pass) -G1 H2 X5 Y-10 F1800 ; go back a few mm +G1 H1 X-625 Y625 F3600 ; move quickly to X and Y axis endstops and stop there (first pass) +G1 H1 X-625 F1800 ; move quickly to X axis endstops and stop there (first pass) +G1 H1 Y625 F1800 ; move quickly to Y axis endstops and stop there (first pass) +G1 H2 X20 Y-20 F6000 ; go back a few mm G1 H1 X-625 Y625 F256 ; move slowly to X and Y axis endstops once more (second pass) G1 H1 X-625 F256 ; move slowly to X axis endstops once more (second pass) G1 H1 Y625 F256 ; move slowly to Y axis endstops once more (second pass) G90 ; absolute positioning -G1 X250 Y250 F10000 ; go to first probe point +G1 X275 Y250 F10000 ; go to first probe point G30 ; home Z by probing the bed G91 ; relative positioning diff --git a/homex.g b/homex.g index 046aa4c..e62dd21 100644 --- a/homex.g +++ b/homex.g @@ -7,6 +7,6 @@ G1 H2 Z2 F10800 ; lift Z relative to current position G1 H1 X-625 F3600 ; move quickly to X axis endstop and stop there (first pass) G1 H2 X5 F6000 ; go back a few mm G1 H1 X-625 F360 ; move slowly to X axis endstop once more (second pass) -G1 H2 Z-2 F10800 ; lower Z again +;G1 H2 Z-2 F10800 ; lower Z again G90 ; absolute positioning G1 X10 F6000 ; move forward 10mm diff --git a/homey.g b/homey.g index 5c1fd70..45f65c0 100644 --- a/homey.g +++ b/homey.g @@ -7,6 +7,6 @@ G1 H2 Z2 F10800 ; lift Z relative to current position G1 H1 Y625 F3600 ; move quickly to Y axis endstop and stop there (first pass) G1 Y-10 F6000 ; go back a few mm G1 H1 Y625 F360 ; move slowly to Y axis endstop once more (second pass) -G1 H2 Z-2 F10800 ; lower Z again +;G1 H2 Z-2 F10800 ; lower Z again G90 ; absolute positioning G1 Y-10 F6000 ; move forward 10 mm diff --git a/homez.g b/homez.g index 0e3f3e5..06f9426 100644 --- a/homez.g +++ b/homez.g @@ -6,7 +6,7 @@ M280 P0 S160 ; Reset probe G91 ; relative positioning G1 H2 Z5 F10800 ; lift Z relative to current position G90 ; absolute positioning -G1 X250 Y250 F10800 ; go to first probe point +G1 X275 Y250 F10800 ; go to first probe point G30 ; home Z by probing the bed ; Uncomment the following lines to lift Z after probing diff --git a/macros/Calibration/Reset BLTouch.g b/macros/Calibration/Reset BLTouch.g new file mode 100644 index 0000000..0b453c5 --- /dev/null +++ b/macros/Calibration/Reset BLTouch.g @@ -0,0 +1 @@ +M280 P0 S160 ; clear and reset BL touch