Skip to content

Add Support for Dogbone Homing#4009

Open
sundtek wants to merge 2 commits intoLinuxCNC:masterfrom
sundtek:master
Open

Add Support for Dogbone Homing#4009
sundtek wants to merge 2 commits intoLinuxCNC:masterfrom
sundtek:master

Conversation

@sundtek
Copy link
Copy Markdown
Contributor

@sundtek sundtek commented May 5, 2026

I'm retrofitting my Mitsubishi Meldas M65 based CNC, the homing switches are dogbone style switches.
The axis first approaches the endstop bar at coarse speed, then switches to a fine homing speed once the switch is triggered. When the switch is released again, the controller registers the axis as homed.

I have tested this behaviour with Linuxcnc 2.9.8

This patch introduces a new option HOME_DOGBONE = [bool] for the [JOINT_n] section. Default = off

@hansu
Copy link
Copy Markdown
Member

hansu commented May 5, 2026

What are dogbone style switches?

@BsAtHome
Copy link
Copy Markdown
Contributor

BsAtHome commented May 5, 2026

What are dogbone style switches?

If I understand it correctly from the PR description... The homing switch is of assert/deassert type, where you "roll over the switch" and the deassertion is the exact home position.

So, move vcoarse towards home until the homing switch activates and when it does, continue direction but reduce speed to vfine until the switch deactivates. However, the code does not do the high/slow speed transition afaics. Or does it?

@mozmck
Copy link
Copy Markdown
Collaborator

mozmck commented May 5, 2026

It's there in homing.c line 878-885.
The logic looks good to me. The only small issue I see is that I think any custom homing components will have to be updated for the extra home_dogbone variable as was done in homecomp.comp
Not a big deal I don't think and it probably won't affect many people but it does me as I have a custom component to improve dual gantry homing.

@BsAtHome
Copy link
Copy Markdown
Contributor

BsAtHome commented May 5, 2026

It's there in homing.c line 878-885.

Check, thanks.

@grandixximo
Copy link
Copy Markdown
Contributor

There are also components for ethercat deferred homing floating around, those will need update as well if this lands?

@hansu
Copy link
Copy Markdown
Member

hansu commented May 6, 2026

What are dogbone style switches?

If I understand it correctly from the PR description... The homing switch is of assert/deassert type, where you "roll over the switch" and the deassertion is the exact home position.

So, move vcoarse towards home until the homing switch activates and when it does, continue direction but reduce speed to vfine until the switch deactivates.

I understand the loigic, but I wonder how the switch looks like and if it's a common name for that because I have never heard of that and also cannot find anything about that notion.

It could look like this

grafik

@hansu
Copy link
Copy Markdown
Member

hansu commented May 6, 2026

Further it would be good to add documentation about that in https://linuxcnc.org/docs/html/config/ini-homing.html

@grandixximo
Copy link
Copy Markdown
Contributor

grandixximo commented May 6, 2026

If I understand correctly this should be incompatible with managing homing+limits with the same sensor, correct?
[HOME_IGNORE_LIMITS] = TRUE will be a bad flag to have when using this style of homing??

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants