Tuning of Sensorless Homing
BenNorton01 last edited by
I am trying to set up the sensor-less homing on my Duet 2/Duex5 controlled printer and am so far have had some issues in that the bed drives into the ends of the Z-Axis assemblies and skips steps but does not sense them.
I am wanting to use the sensor-less homing to do a 'gross' homing of the ball-screw driven Z-Axis actuators which are prone to falling under the weight of the bed when the motors are idled which leaves the bed on a bad angle. This does not cause any damage as the bed is mounted with ball and socket joints. After this gross homing is completed, the printer will then use the BL-Touch probe and the independently driven Z-Axis actuators to to the more accurate bed levelling (G32).
I have setup a testing macro that is essentially a modified 'homeall' sequence. The G32 would be added in later.
G91 ; relative positioning G1 Z10 F6000 S2 ; lift Z relative to current position G1 S1 X480 Y475 F9000 ; move quickly to X and Y axis endstops and stop there (first pass) G1 X-5 Y-5 F6000 ; go back a few mm G1 S1 X480 Y475 F360 ; move slowly to X and Y axis endstops once more (second pass) M400 ; make sure everything has stopped before we make changes M915 P2:5:6 S-30 F0 H250 R0 ; Configure Z-Axis Stall Detection M584 X0 Y1:7 Z2 U5 V6 E3 P5 ; Separate Z-Axis Lead screws and drive independently M913 Z50 U50 V50 ; Lower motor current by 50% M574 Z1 U1 V1 S3 ; Configure Z-Axis stall detection homing G91 ; relative positioning G1 S1 Z-650 U-650 V-650 F500 ; Home Z-Axis actuators independently M400 ; make sure everything has stopped before we make changes M913 Z100 U100 V100 ; Reset motor current M584 X0 Y1:7 Z2:5:6 U5 V6 E3 P3 ; Reset drive mapping M574 Z1 S2 ; Reset Z-Axis to be controlled by probe G90 ; absolute positioning G1 Z10 F6000 S2 ; lift Z relative to current position G1 X220 Y197.5 F9000 ; go to first bed probe point M558 F400 ; adjust first probe speed G30 ; home Z by probing the bed M558 F120 ; reset probe speed G30 ; home Z by probing the bed
My config configures the rest of the U and the V axes:
; Drives M569 P0 S0 ; X drive goes backwards M569 P1 S0 ; Y1 drive goes backwards M569 P2 S0 ; Z1 drive goes backwards M569 P3 S1 ; E0 drive goes forwards M569 P5 S0 ; Z2 drive goes backwards M569 P6 S0 ; Z3 drive goes backwards M569 P7 S1 ; Y2 drive goes forwards M584 X0 Y1:7 Z2:5:6 U5 V6 E3 P3 ; Apply custom drive mapping, U is a dummy Axis and P3 is setting the number of visible axes M671 X222:-10:520 Y581:25:25 S10.0 ; leadscrews at rear middle, front left and rear right M350 X16 Y16 Z16 U16 V16 E16 I1 ; Configure microstepping with interpolation M92 X160 Y80 Z320.00 U320.00 V320.00 E946.00 ; Set steps per mm M566 X900.00 Y900.00 Z12.00 U12.00 V12.00 E120.00 ; Set maximum instantaneous speed changes (mm/min) M203 X10000.00 Y10000.00 Z400.00 U400.00 V400.00 E1200.00 ; Set maximum speeds (mm/min) M201 X1000.00 Y1000.00 Z20.00 U20.00 V20.00 E250.00 ; Set accelerations (mm/s^2) M906 X1000.00 Y1500.00 Z1500.00 U1500.00 V1500.00 E1200.00 I100 ; Set motor currents (mA) and motor idle factor in per cent M84 S0 ; Set idle timeout (0 is disable a time out, always on ) ; Axis Limits M208 X0 Y0 Z-0.5 U-0.5 U-0.5 S1 ; Set axis minima M208 X470 Y465 Z650 U650 V650 S0 ; Set axis maxima ; Endstops M574 X2 Y2 S1 ; Set active high endstops ; Z-Probe M574 Z1 S2 ; Set endstops controlled by probe M307 H3 A-1 C-1 D-1 ; Disable heater on PWM channel for BLTouch M558 P9 H5 F120 T9000 X0 Y0 Z1 ; Set Z probe type to bltouch and the dive height + speeds G31 P500 X25.4 Y0.2 Z0.847 ; Set Z probe trigger value, offset and trigger height M557 X25.4:435 Y10.2:440 P5 ; Define mesh grid
Any help would be greatly appreciated
BenNorton01 last edited by
Is anyone able to weigh in on this issue?
What is the lead of your ball screws?
Stall detection on the Z axis is difficult even under ideal circumstances.
There needs to be enough back EMF to trigger the stall so the dive speed needs to be frighteningly high.
You may have better luck with RRF3 as it has an additional multi motor stall option.
Try lowering the motor current even further than 50%. Lower is as low as you can go and still get reliable movement.
Increase the dive speed from 500mm/min you have now.
And play with the sensitivity.
zapta last edited by
After this gross homing is completed, the printer will then use the BL-Touch probe
Since you have BLTouch, have you considered using it for Z homing?
You can still do dual speed homing since the BLTouch extends and is thus triggered before the bed hits the nozzle.