Duet 3 mini 5+ sensorless homing will not work
-
just replace the iap file linked in the thread and update the firmware again.
-
@Veti I have uploaded that file to my card and managed to update I believe. But why does it have to be manually fixed? Not everyone goes to the forum and look on that thread. I downloaded 3.2 a week ago and assumed it was working fine cause I got no error. Just by luck did I see it still said beta when looking around in the menus. I then redownloaded the needed files but it was still on beta.
-
This might be one thing that cause my issue. Changed to X2 and Y2 and it seem to work.
; Endstops M574 X1 S3 ; configure sensorless endstop for low end on X M574 Y1 S3 ; configure sensorless endstop for low end on Y M574 Z1 S2 ; configure Z-probe endstop for low end on Z
-
All these posts and we forgot to verify what firmware you were using?
That's a bit embarrassing.
Frederick
-
@fcwilt not firmware issue it was endstop issues. Card was on rc2 when it came, sensorless homing worked then.
I had this code though M574 X1 S3 but it should be M574 X2 S3. Now it homes x and y. Still get G28 homing failed though. After X and y it just sits there. Will not issue a move to center of the plate. So if you have any input on my z homing sequence that would be awesome. Z axis is reported as homed though. -
@Alucardi said in Duet 3 mini 5+ sensorless homing will not work:
So if you have any input on my z homing sequence that would be awesome. Z axis is reported as homed though.Do you still have this line of code:
G30 P0 G1 X167.5 Y167.5
Frederick
-
@fcwilt yes i do.
-
@Alucardi said in Duet 3 mini 5+ sensorless homing will not work:
@fcwilt yes i do.
OK then that is likely the problem.
You need to use G30 by itself.
Unfortunately G30 without a P parameter does not respect the X and Y parameters.
So you have to precede the G30 with a G1 command to move the probe to the correct XY location.
For my printer X=0 and Y=0 is the center of the bed so I can simply use the following G1 command:
G1 X{-sensors.probes[0].offsets[0]}, Y{-sensors.probes[0].offsets[1]}, F6000
to move the probe to the center of the bed.
A somewhat more complicated formula can be constructed for printers where X=0 and Y=0 is NOT the center of the bed.
Frederick
-
@fcwilt I did add and try this. But it just sit at 0 and then say z is homed. It does not even push the probe out.
G1 H1 X167.5 Y167.5 G30 P0 ; home Z by probing the bed
-
@Alucardi said in Duet 3 mini 5+ sensorless homing will not work:
@fcwilt I did add and try this. But it just sit at 0 and then say z is homed. It does not even push the probe out.
G1 H1 X167.5 Y167.5 G30 P0 ; home Z by probing the bed
Remove the H1 and the P0
Frederick
-
@fcwilt I works kinda, not moving the axis though.
-
@Alucardi said in Duet 3 mini 5+ sensorless homing will not work:
@fcwilt I works kinda, not moving the axis though.
You mean it is not moving the probe to the center of the bed?
I'm guessing X167.5 and Y167.5 are the center.
Does the bed get probed?
Thanks.
Frederick
-
@fcwilt Whit this code it will just sit in the back corner where i home the printer:
G1 X167.5 Y167.5 F5000 G30 ; home Z by probing the bed G90 ; absolute positioning M400 ; finishes all current moves and and thus clears the buffer M569 P0.0 D2 ; restore default for motor M569 P0.1 D2 ; restore default for motor M913 X100 Y100 ; return current to 100% M400 ; finishes all current moves and and thus clears the buffer
With this code it will at least move the Y axis and deploy the probe. But it will not detect that probe is activated. If i add - to X it will not move
G1 X167.5 Y-167.5 F5000 G30 ; home Z by probing the bed G90 ; absolute positioning M400 ; finishes all current moves and and thus clears the buffer M569 P0.0 D2 ; restore default for motor M569 P0.1 D2 ; restore default for motor M913 X100 Y100 ; return current to 100% M400 ; finishes all current moves and and thus clears the buffer
On my old setup it homed up in the back left corner but 0 was in the closest left corner. Not sure how to set this up. That might be why coordinates do not work as they used to. I will add my old home all and config for you to compare if you want.
mini 5+ homeall.g mini 5+ config.g Duet 2homeall.g Duet 2config.g
-
OK to be safe move the G90 to BEFORE the G1
And use X167.5 and Y167.5 as in the first example you posted.
Then try again.
Frederick
-
@fcwilt Using this code with or without a - sign makes it just sit in the corner and motor just rams the corner. I also edited my other post. Please read it.
G90 ; absolute positioning G1 X167.5 Y167.5 F5000 G30 ; home Z by probing the bed
-
@Alucardi said in Duet 3 mini 5+ sensorless homing will not work:
@fcwilt Using this code with or without a - sign makes it just sit in the corner and motor just rams the corner. I also edited my other post. Please read it.
When trying to move to X167.5 Y167.5 has the motor current perhaps been set so low that it is not adequate to run the steppers?
A more basic question is have G1 moves ever worked correctly? Do the move in the expected direction?
I downloaded the files but it will take sometime to compare them.
I did notice that for the Duet2 you defined the X and Y endstops to be at the low end of the axes which you changed for the Duet3 to be at the high end.
Was the intentional?
-
@fcwilt did not work until I did that. As soon as I switched to high it worked for x and y axis.
It was such a long time since I compiled the configs I don’t remover all I did. I have not updated to 3.0. Prolly over a year since I did that config. -
@Alucardi said in Duet 3 mini 5+ sensorless homing will not work:
@fcwilt did not work until I did that. As soon as I switched to high it worked for x and y axis.
OK I can see that happening.
Back to the other question: Ignoring the homing issue for now - do basic G1 moves work as expected?
I ask because in your Duet 3 config.g file you have this:
; Endstops
M574 X2 S3 ; configure sensorless endstop for low end on X
M574 Y2 S3 ; configure sensorless endstop for low end on YBut X2 and Y2 specify high end - which is fine and perhaps just the comment is wrong.
However in your Duet 3 homeall.g file you have these lines:
G1 H1 X-400 F3000 ; move to X
G1 H1 Y400 F3000 ; move to Y
If the M574s are correct both G1 moves should be toward the high end but the X move is toward the low end.
That doesn't seem correct.
Can you use the X and Y jog buttons on the DWC to verify that + and - moves are in the right direction?
Frederick
-
@fcwilt it is just the text that is wrong. I have not not spent time cleaning it all up until i get it to work as it should.
After running M564 H0 i can jog the axis around. Looking at the printer in the far back left corner is where it homes. Jogging -x it moves to the left and jogging y- it moves towards me.
-
@Alucardi said in Duet 3 mini 5+ sensorless homing will not work:
@fcwilt it is just the text that is wrong. I have not not spent time cleaning it all up until i get it to work as it should.
After running M564 H0 i can jog the axis around. Looking at the printer in the far back left corner is where it homes. Jogging -x it moves to the left and jogging y- it moves towards me.
OK good - if the jogging works then the basic kinematics are correct.
However as to the homing...
When, say, a G1 H1 Xnnn is used to move toward an endstop when the endstop is activated the current position of the X axis is set to the axis min or max depending on the specified location of the endstop, low end or high end.
With a physical endstop sensor if the G1 moved in the wrong direction the endstop sensor would never be activated and it would just reach the limit of motion and probably make unpleasant noises.
But with sensorless endstops you effectively have a sensor at either end of the axis since the movement can reach the limit in either direction and generate the stall condition.
So you have the X endstop set for the high end (M574 X2 S3) but you are moving towards the low end (G1 H1 X-400)
Perhaps the firmware doesn't notice this and when it stalls at the low end it sets the X position to X max?
Can you jog X and Y to the middle of the bed and home just X? I want to see what the result is. Does it home and stall as expected? Does it set the X position to X min or X max?
Thanks.
Frederick