Update from rrf2.03 to rrf3.4.5 weird homing behavior for z-axis
-
Hey,
I've just updated my rrf to 3.4.5 and have been converting all the gcode to be able to use the printer again. It's a custom corexy build. However, after updating, i'm not able to home z anymore. X/Y home perfectly fine and work like a charm.
When I send G1 H2 Z5 F900, everything works fine as well. The Z axis moves away from the nozzle to the bottom where the z endstop is.
However, if i send G1 H1 Z5 F900 for homing, the print head moves in the wrong direction (up). What's even more strange, is that the y motor is also moving...This should not be a wiring issues as everything worked fine before the update, and like i said G1 H2 Z5 works fine.
I really don't see what's wrong. Hopefully somebody can help.
(using a duet2 wifi)Config:
; Configuration file for Duet WiFi (firmware version 1.20 or newer) ; executed by the firmware on start-up ; ; Last edit by Niels 14/6/2023 ; General preferences G90 ; Send absolute coordinates... M83 ; ...but relative extruder moves M550 P"Itomec" ; set printer name M669 K1 ;Z1:0:-1 ; select CoreXY mode ; Network ;M552 S1 ; Enable network in client mode M552 S2 ; Enable network in AP mode M586 P0 S1 ; Enable HTTP M586 P1 S1 ; Disable FTP M586 P2 S0 ; Disable Telnet ; Drives M569 P0 S0 ; Drive 0 goes backwards M569 P1 S0 ; Drive 1 goes backwards M569 P2 S0 ; Drive 2 goes backwards M569 P3 S0 ; Drive 3 - extruder 0 M569 P4 S0 ; Drive 4 - extruder 1 M584 X0 Y1 Z2 E3:4 ; set drive mapping ;acceleration / microstepping M350 X16 Y16 Z16 E16:16 I1 ; Configure microstepping with interpolation M92 X118.6 Y118.6 Z1280 E837:837 ; Set steps per mm M203 X14000 Y14000 Z900 E9200:9200 ; Set maximum speeds (mm/min) M566 X600 Y600 Z200 E1800:1800 ; Set maximum instantaneous speed changes (mm/min) M201 X1200 Y1200 Z600 E4800:4800 ; Set accelerations (mm/s^2) M906 X1200 Y1200 Z1800 E1000:1000 I25 ; Set motor currents (mA) and motor idle factor in per cent M84 S30 ; Set idle timeout (s) ; Axis Limits M208 X-60 Y0 Z0 S1 ; Set axis minima M208 X514.5 Y500 Z500 S0 ; Set axis maxima ; Endstops M574 X1 S1 P"xstop" ; configure switch-type (e.g. microswitch) endstop for low end on X via pin xstop M574 Y2 S1 P"ystop" ; configure switch-type (e.g. microswitch) endstop for low end on Y via pin ystop M574 Z2 S1 P"zstop" ; configure switch-type (e.g. microswitch) endstop for low end on Z via pin zstop ; Heated bed M308 S0 P"bedtemp" Y"thermistor" T100000 B4138 C0 R4700 ; configure sensor 0 as thermistor on pin bedtemp M950 H0 C"bedheat" T0 ; create bed heater output on bedheat and map it to sensor 0 M140 H0 ; map heated bed to heater 0 M143 H0 S110 ; Set temperature limit for heater 0 to 110C ; Extruders M308 S1 P"e0temp" Y"thermistor" T100000 B4725 C7.06E-08 R4700 ; configure sensor 1 as thermistor on pin e0temp M950 H1 C"e0heat" T1 ; create nozzle heater output on e0heat and map it to sensor 1 M307 H1 B0 S1.00 ; disable bang-bang mode for heater and set PWM limit M143 H1 S280 M308 S2 P"e1temp" Y"thermistor" T100000 B4725 C7.06E-08 R4700 ; configure sensor 2 as thermistor on pin e1temp M950 H2 C"e1heat" T2 ; create nozzle heater output on e1heat and map it to sensor 2 M307 H2 B0 S1.00 ; disable bang-bang mode for heater and set PWM limit M143 H2 S280 ; set temperature limit for heater 2 to 280C ; Fans M950 F0 C"fan0" Q20000 M106 P0 S0 H-1 M950 F1 C"fan1" Q20000 M106 P1 S0 H-1 M950 F2 C"fan2" Q100 M106 P2 S0 H-1 ; Tools M563 P0 D0 H1 F0 ; Define tool 0 G10 P0 X0 Y0 Z0 ; Set tool 0 axis offsets (increase Z-offset to decrease distance to bed) G10 P0 R0 S0 ; Set initial tool 0 active and standby temperatures to 0C M572 D0 S0.05 ; Set pressure advance for extruder 0 M563 P1 D1 H2 F1 ; Define tool 1 G10 P1 X45.9 Y0 Z0 ; Set tool 1 axis offsets (increase Z-offset to decrease distance to bed) G10 P1 R0 S0 ; Set initial tool 1 active and standby temperatures to 0C M572 D1 S0.05 ; Set pressure advance for extruder 1 ; Miscellaneous M501 ; Read stored parameters from config.override.g ;M929 P"eventlog.txt" S1 ; Keep a log file
Homex:
; homex.g ; called to home the X axis; Y axis is homed first ; M98 P/sys/homey.g ; home Y G91 ; relative positioning G1 H1 X-574.5 F9000 ; move quickly to X axis endstop and stop there (first pass) G1 X5 F900 ; go back a few mm G1 H1 X-7 F900 ; move slowly to X axis endstop once more (second pass) G90 ; absolute positioning
Homey:
; homey.g ; called to home the Y axis ; ; last edit by MM, 15-09-2019 G91 ; relative positioning G1 H1 Y501 F9000 ; move quickly to Y axis endstop and stop there (first pass) G1 Y-5 F900 ; go back a few mm G1 H1 Y6 F900 ; move slowly to Y axis endstop once more (second pass) G90 ; absolute positioning
Homez:
; homez.g ; called to home the Z axis ; ; last edit by MM, 16-01-2019 G91 ; relative positioning G1 H1 Z500 F900 S1 ; move quickly to Z endstop and stop there (first pass) G1 H2 Z-5 F900 ; go back a few mm G1 H1 Z10 F200 S1 ; move slowly to Z axis endstop once more (second pass) G1 H2 Z-10 F900 ; move bed up 10 mm G90 ; absolute positioning
All help is really appreciated!
Kind regards -
@Niels-0 if you're trying to move down towards the endstop you'd need a negative move, so
G1 H1 Z-5
-
@Niels-0 said in Update from rrf2.03 to rrf3.4.5 weird homing behavior for z-axis:
G1 H1 Z500 F900 S1
And remove the S1 from your homing commands.
-
@Niels-0 have you tested the Z endstop, to check that it doesn't appear to be already triggered to RRF? If it appears to be triggered at the start of the Z homing move then RRF will skip the G1 H1 Z500 F900 move and proceed directly t the G1 H2 Z-5 move. You can check that Z endstop using either M119 or the object Model Browser in DWC.