What limits the homing feed rate?
Something is limiting my Z homing feed rate, and I can't figure out what. Is there anything other then the G0/G1 F argument or G203 that could do this? I made a macro that demonstrates my issue:
G91 G0 S1 Z100 F1000 ; This seems to run at about 500 mm/min G90 G0 Z0 F1000 G91 G0 Z100 F1000 ; This runs at full speed G90 G0 Z0 F1000
bearer last edited by
there is a lot of missing information but I'd start by replacing
and include your full config and firmware version
The only things that limit the homing speed are the F parameter in the G1 H1 (or G1 S1) commands, and the speed limit set by M203.
Beware, some slicers have unfortunately started putting M203 commands in the GCode files they generate. So if homing works at full speed until you try to print a file, that's where to look. You can usually turn this off in the slicer.
The behavior occurs if I run the macro after a reset, home Z, and execute a G0 Z10 to provide room for travel. Using H1 vs. S1 doesn't make a difference.
My firmware version is 2.02(RTOS) (2018-12-24b1)
; General preferences G90 ; send absolute coordinates... M83 ; ...but relative extruder moves M550 P"OwlFab1000" ; set printer name M667 S1 ; select CoreXY mode ; Network M552 S1 ; enable network M586 P0 S1 ; enable HTTP M586 P1 S0 ; disable FTP M586 P2 S0 ; disable Telnet ; Remove these for DHCP M552 S0 M552 S1 P192.168.0.10 ; Drives M569 P0 S1 M569 P1 S0 M569 P2 S1 M569 P3 S1 M569 P4 S1 M584 X0 Y1 Z2:4 E3 ; set drive mapping M350 X256 Y256 Z256 E16 I0 ; configure microstepping without interpolation M92 X2560.00 Y2560.00 Z25600.00 E268.63 ; set steps per mm M203 X9000.00 Y9000.00 Z1000.00 E3000.00 ; max speed (mm/min) M566 X800.00 Y800.00 Z150.00 E1500.00 ; jerk (mm/min) M203 X9000.00 Y9000.00 Z1000.00 E3000.00 ; max speed (mm/min) M201 X1000.00 Y1000.00 Z150.00 E1800.00 ; set accelerations (mm/s^2) M906 X800 Y800 Z1200 E1200 I30 ; set motor currents (mA) and motor idle factor in per cent ;M906 X500 Y500 Z600 E600 I30 ; stealth mode M84 S10 ; Set idle timeout ; Axis Limits M208 X0 Y0 Z0 S1 ; set axis minima M208 X250 Y195 Z268 S0 ; set axis maxima ; Endstops M574 X1 Y1 Z2 S1 ; set active high endstops ; Z-Probe M558 P0 H5 F120 T6000 ; disable Z probe but set dive height, probe speed and travel speed M557 X15:215 Y15:195 S20 ; define mesh grid ; Heaters M305 P0 T100000 B4138 R4700 ; set thermistor + ADC parameters for heater 0 M143 H0 S120 ; set temperature limit for heater 0 to 120C M305 P1 T100000 B4138 R4700 ; set thermistor + ADC parameters for heater 1 M143 H1 S280 ; set temperature limit for heater 1 to 280C ; Fans M106 P0 S0 I0 F500 H-1 ; set fan 0 value, PWM signal inversion and frequency. Thermostatic control is turned off M106 P1 S1 I0 F500 H1 T45 ; set fan 1 value, PWM signal inversion and frequency. Thermostatic control is turned on ; Tools M563 P0 D0 H1 F0 ; define tool 0 G10 P0 X0 Y0 Z0 ; set tool 0 axis offsets G10 P0 R0 S0 ; set initial tool 0 active and standby temperatures to 0C T0 ; select first tool M203 X9000.00 Y9000.00 Z1000.00 E3000.00 ; max speed (mm/min) ; Stall detection ; M915 X Y S5 R2 ; Pressure advance M572 D0 S1.
My Z home macro is:
; homez.g ; called to home the Z axis ; ; generated by RepRapFirmware Configuration Tool v2.1.8 on Tue Mar 31 2020 14:27:47 GMT-0700 (Pacific Daylight Time) G91 ; relative positioning ;G1 S2 Z5 F600 ; lift Z relative to current position G0 S1 Z295 F800 ; move Z up until the endstop is triggered G92 Z268 ; set Z position to axis maximum G1 S2 Z-5 F6000 G90 ; absolute positioning
Maybe I answered my own question. I'm going to upgrade the FW to 3.0 and see what happens.
bearer last edited by
@owlfab you can try it at 2.05.1 on your way as updating to 3.1.1 would require a few steps anyway?
M350 X256 Y256 Z256 E16 I0 ; configure microstepping without interpolation M92 X2560.00 Y2560.00 Z25600.00 E268.63 ; set steps per mm M203 X9000.00 Y9000.00 Z1000.00 E3000.00 ; max speed (mm/min)
You may be exceeding the step rate causing hiccups which is limiting the delivered speed. It's recommended you use x16 microstepping with interpolation enabled.
Thanks guys. I am running 3.1.1 now with 16x microstepping (with interpolation) and it is working fine. I noticed that this version can't handle full speed on X and Y at 256x microstepping like version 2.02 did, but it sounds like 16x is kind of the norm.
In retrospect, that was really old firmware. I just didn't think to check, since the board was a relatively new purchase.