Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

homing order configuration option #25

Closed
mhv-shared opened this issue Jul 9, 2017 · 9 comments
Closed

homing order configuration option #25

mhv-shared opened this issue Jul 9, 2017 · 9 comments

Comments

@mhv-shared
Copy link

On my corexy, Y must be homed before X, otherwise it won't hit the stop.

Obviously I can use G28 Y G28 X G28 Z, but it would be nice if G28 or G28 XYZ would function safely as well, in case a misconfigured slicer was used.

It looks like this will be a simple change, if you agree it's worthwhile I'll open a PR.

@KevinOConnor
Copy link
Collaborator

I have no objection to supporting it. Is there a similar feature in Marlin? If you have code available, I'd like to see it.

Thanks,
-Kevin

@mhv-shared
Copy link
Author

I think this is the relevant code in Marlin: MarlinFirmware/Marlin#1957

I opened a PR #27.

@KevinOConnor
Copy link
Collaborator

Thanks. That PR looks like it changes the default homing order, but doesn't prevent an invalid homing operation. If your printer doesn't home Y before X, does the head crash into the frame? I'd be more concerned about verifying that a crash wont happen then making the G28 more user friendly.

Also, I think some users have printer that can only home the Z with a bed probe, and thus they have to move their X and Y to a set coordinate before homing Z. I wonder if a similar mechanism could be used to support that setup.

-Kevin

@KevinOConnor
Copy link
Collaborator

I've created a new test branch ( work-homing-override-20180116 ) that will allow one to define a series of g-code commands to run in place of G28 commands found in the normal input stream. It's activated by a new [homing_override] config section - see config/example-extras.cfg on the new branch for details.

I'd like to get feedback on this code.

git fetch ; git checkout origin/work-homing-override-20180116 ; sudo service klipper restart

@KevinOConnor
Copy link
Collaborator

I've merged the work-probe-20170609 branch (which includes the work-homing-override-20180116 changes) into the master branch.

@StefanMeGit
Copy link

Sorry i still have a question about this...

How is to use this? I tried a lot combinations like:

[homing_override]
gcode: G28Y \nG28X

or

[homing_override]
gcode: G28Y G28X

But nothing gives me the Y before X homing. What did i wrong here?

@mmone
Copy link

mmone commented May 12, 2018

Had the same issue. Put each GCODE command in a separate line. And for some reason a whitespace is needed in front of every new line.

Like that:

[homing_override]
gcode:
 G28 Y0
 G28 X0
 G28 Z0

@StefanMeGit
Copy link

ahhhh i tried this also, but without space in front. Thanks! I ll try it.

trevjonez pushed a commit to trevjonez/klipper that referenced this issue Nov 14, 2018
@Spartacus1066
Copy link

I did this in printer.cfg to lift the head 5mm then home as normal. If I have to cancel a print, I can quickly HOME the printer while nozzle is still hot and not bonding to my print. If you use the menu or send G28 via terminal.

#Sets immediate position to 0 on all axes, G91 relative pos, lift Z 5mm, G90 absolute pos, normal G28
[homing_override]
set_position_x: 0
set_position_y: 0
set_position_z: 0
gcode:
 G91
 G1 Z5
 G90
 G28

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

5 participants