Homing of Z axis
-
When homing my Z axis, it starts by homing X and Y, there home is the front left corner of the build plate. When the Z axis starts to home, the print head goes all the way to the front right corner, is this normal? This is also where all my prints start. I was trying to get the Z axis to home in the middle of the bed if possible.
This is my current config file.
; Configuration file for Duet Maestro (firmware version 3)
; executed by the firmware on start-up
;
; generated by RepRapFirmware Configuration Tool v3.1.1 on Thu Jun 04 2020 09:32:59 GMT-0500 (Central Daylight Time); General preferences
G90 ; send absolute coordinates...
M83 ; ...but relative extruder moves
M550 P"My Printer" ; set printer name; Network
M552 P0.0.0.0 S1 ; enable network and acquire dynamic address via DHCP
M586 P0 S1 ; enable HTTP
M586 P1 S0 ; disable FTP
M586 P2 S0 ; disable Telnet; Drives
M569 P0 S0 ; physical drive 0 goes backwards
M569 P0 V30 ; Stealthchop2 till about 150 mm/sec
M569 P1 S1 ; physical drive 2 goes forwards
M569 P1 V30 ; Stealthchop2 till about 150 mm/sec
M569 P2 S1 ; physical drive 2 goes forwards
M569 P2 V30 ; Stealthchop2 till about 150 mm/sec
M569 P3 S1 ; physical drive 3 goes forwards
M569 P3 V30 ; Stealthchop2 till about 150 mm/sec
M584 X0 Y1 Z2 E3 ; set drive mapping
M350 X16 Y16 Z16 E16 I1 ; configure microstepping with interpolation
M92 X80.00 Y80.00 Z400.00 E90.00 ; set steps per mm
M566 X900.00 Y900.00 Z12.00 E120.00 ; set maximum instantaneous speed changes (mm/min)
M203 X300000.00 Y300000.00 Z6000.00 E216000.00 ; set maximum speeds (mm/min)
M201 X800.00 Y800.00 Z15.00 E1000.00 ; set accelerations (mm/s^2)
M906 X1000 Y1000 Z1000 E1000 I30 ; set motor currents (mA) and motor idle factor in per cent
M84 S30 ; Set idle timeout; Axis Limits
M208 X0 Y0 Z0 S1 ; set axis minima
M208 X200 Y200 Z200 S0 ; set axis maxima; Endstops
M574 X2 S1 P"!xstop" ; configure active-high endstop for high end on X via pin !xstop
M574 Y1 S1 P"!ystop" ; configure active-high endstop for low end on Y via pin ystop
M574 Z1 S2 ; configure Z-probe endstop for low end on Z; Z-Probe
M950 S0 C"^zprobe.mod" ; create servo pin 0 for BLTouch
M558 P9 C"zprobe.in+zprobe.mod" H5 F120 T6000 ; set Z probe type to bltouch and the dive height + speeds
G31 P500 X0 Y0 Z2.5 ; set Z probe trigger value, offset and trigger height
M557 X15:200 Y15:195 S20 ; define mesh grid; Heaters
M308 S0 P"bedtemp" Y"thermistor" T100000 B4138 ; 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
M307 H0 B1 S1.00 ; enable bang-bang mode for the bed heater and set PWM limit
M140 H0 ; map heated bed to heater 0
M143 H0 S120 ; set temperature limit for heater 0 to 120C
M308 S1 P"e0temp" Y"thermistor" T100000 B4138 ; 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
;M307 H0 M307 H1 A306.3 C136.3 D4.5 B0 ; This is to prevent heater fault; Fans
M950 F0 C"fan0" Q500 ; create fan 0 on pin fan0 and set its frequency
M106 P0 S0 H-1 ; set fan 0 value. Thermostatic control is turned off
M950 F1 C"fan1" Q500 ; create fan 1 on pin fan1 and set its frequency
M106 P1 S1 H1 T45 ; set fan 1 value. 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; Custom settings are not defined
; Miscellaneous
M911 S10 R11 P"M913 X0 Y0 G91 M83 G1 Z3 E-5 F1000" ; set voltage thresholds and actions to run on power loss
T0 ; select first tool -
@yagodajm
You need to tell it where you want to home in your homeall.g and homez.gAdd something like
G1 X100 Y100
Before the line that says G28 ZAlso you have no probe offset configured in config.g
G31 P500 X??? Y??? Z2.5
You need to do this for mesh compensation.
After doing that, if you want to probe the centre of the bed, you’ll need to adjust the G1 X100 Y100 by the offset values.https://duet3d.dozuki.com/Wiki/Test_and_calibrate_the_Z_probe
-
Owen, thanks for your help, I don't have a G28 Z in either my homeall.g or homez.g, but I do see the line that has G1 X15 Y15, I guess I can just replace that with the G1 X100 Y100. So knowing this, I guess my X0 Y0 is in the front left of the bed.
; homez.g
; called to home the Z axis
;
; generated by RepRapFirmware Configuration Tool v3.1.1 on Thu Jun 04 2020 15:18:57 GMT-0500 (Central Daylight Time)
G91 ; relative positioning
G1 H2 Z5 F6000 ; lift Z relative to current position
G90 ; absolute positioning
G1 X15 Y15 F6000 ; go to first probe point
G30 ; home Z by probing the bed; Uncomment the following lines to lift Z after probing
;G91 ; relative positioning
;G1 Z5 F100 ; lift Z relative to current position
;G90 ; absolute positioningYes, I was also working on the offsets too, I need to get them set. I just got to start back up with my 3d printer since it was in storage for about 6 months while we were moving. I just upgraded the firmware to 3.1 and had to redo the whole configuration.
thanks again for you help, I will make these changes in the morning.
Justin
-
@OwenD said in Homing of Z axis:
Before the line that says G28 Z
Maybe if the homeall only calls the other homing files. If the homeall has it's own homing moves you'd need to position the probe before the G30.
; homeall.g ; called to home all axes ; ; M561 ; clear height map M400 ; wait for movement queue to empty M913 X45 Y45 Z45 ; Reduce motor currents for homing M400 G91 ; relative positioning G1 H2 Z3 F600 ; lift Z relative to current position G1 H1 X-250 Y-250 F4000 ; move quickly to X and Y axis endstops and stop there (first pass) G1 X5 Y5 F4000 ; go back a few mm G1 H1 X-240 Y-240 F360 ; move slowly to X and Y axis endstops once more (second pass) G90 ; absolute G1 X159 Y142 F6000 ; move probe to bed center M558 F600 A1 ; Dive fast once G30 ; probe Z M558 F100 A10 ; Slow second dive with more accuracy G30 ; probe z again G29 S1 ; Load heightmap and enable mesh grid compensation G1 X10 Y10 Z10 F6000 ; return head to park position M400 M913 X100 Y100 Z100 ; Return motor currents to normal M400
Also, remove
+zprobe.mod
from your m558 line in config.g.And as @OwenD says you must provide the X Y offset of the probe from the nozzle in G31.
See here: https://duet3d.dozuki.com/Wiki/Test_and_calibrate_the_Z_probe
-
@Phaedrux , thanks for your help, does the
+zprobe.mod,
do anything? I used the reprap config tool and that is what is generated. No biggy, just wanted to know for reference.thanks,
Justin -
it's for probes that require modulation. It's selected by default in the configurator, but it shouldn't really be.
-
@yagodajm said in Homing of Z axis:
Owen, thanks for your help, I don't have a G28 Z in either my homeall.g or homez.g, but I do see the line that has G1 X15 Y15, I guess I can just replace that with the G1 X100 Y100. So knowing this, I guess my X0 Y0 is in the front left of the bed.
Apologies
As @Phaedrux has said, G30 is correct and reflects what you have.