Message "Error: Homing failed" even though homing worked
-
your home scripts are more complicated than they need to be
i would suggest that you start off with the homing scripts that the configurator creates.
i.e. you home z contian M401 and M402 which are not required on P9
-
I'm following the instructions here:
https://duet3d.dozuki.com/Wiki/Connecting_a_Z_probeWhich suggests the following for homez.g:
; homez.g ; called to home the Z axis G91 ; relative positioning G90 ; absoute position M401 ; deploy probe G1 X163 Y129 F1800 ; move to middle of bed plus probe offsets G30 ; home z0 M402 ; retract probe
Are you saying that is incorrect?
I'll agree they are a bit complicated. Some of that is due to sensorless homing, some due to me wanting to offset coordinates by a few mm. I don't see how that would be causing the error.
I commented out M401 and M402. It still works, but the result (error message) is the same.
-
you mean the examples for the Touch-Mi probe which is a different probe to the bltouch?
-
Typically in your homeall file, you call the macro using M98 P"homez.g" rather than using G28 X
-
@jay_s_uk said in Message "Error: Homing failed" even though homing worked:
Typically in your homeall file, you call the macro using M98 P"homez.g" rather than using G28 X
This fixed the issue. I appreciate the response.
While searching, I came across this post as well:
https://forum.duet3d.com/topic/10468/homeall-g-content-cleanup
It seems using "G28" within homeall.g isn't really allowed (despite it working fine save the error message). I don't really agree with that implementation choice, but it is what it is. On to the next issue.
-
Technically if you leave homeall.g blank it will then just execute homex homey and homez macros. Same goes for if it only homes 1 or 2 axis in homeall it will then call the homing file of whatever axis is not yet homed.
Calling G28 from within G28 can become recursive, so I guess it's not allowed.
-
@Phaedrux said in Message "Error: Homing failed" even though homing worked:
Technically if you leave homeall.g blank it will then just execute homex homey and homez macros. Same goes for if it only homes 1 or 2 axis in homeall it will then call the homing file of whatever axis is not yet homed.
This isn't the behavior I see. If I leave homeall.g blank, it does not execute any action and simply returns the error message "Error: Homing failed".
-
@Phaedrux said in Message "Error: Homing failed" even though homing worked:
Calling G28 from within G28 can become recursive, so I guess it's not allowed.
That's correct. RRF uses a global variable to track which axes need to be homed, so G28 may not be used recursively.
-
@TDK said in Message "Error: Homing failed" even though homing worked:
Same goes for if it only homes 1 or 2 axis in homeall it will then call the homing file of whatever axis is not yet homed.
Well at least I'm sure this part is correct. I extrapolated to it homing all axis if the file was empty. I'll have to do some testing.
-
@Phaedrux said in Message "Error: Homing failed" even though homing worked:
@TDK said in Message "Error: Homing failed" even though homing worked:
Same goes for if it only homes 1 or 2 axis in homeall it will then call the homing file of whatever axis is not yet homed.
Well at least I'm sure this part is correct. I extrapolated to it homing all axis if the file was empty. I'll have to do some testing.
If I put only
M98 P"homex.g"
in thehomeall.g
file, then it does home the Y and Z axes after the X. So it seems you need to home at least something. And in this case, no error message is generated.I guess this scheme makes sense if you want to combine X and Y homing into one operation in
homeall.g
, but then don't want to duplicate thehomez.g
code.