so, you are saying that when the X hits the home switch, and it moves off the switch, even though
you see the x-home switch showing it has been moved off of it. The x axis is still creeping away from
it like it never saw the change in state? And, it will continue all the way to the other side?
if so, while it is creeping across, what happens if you make/break your X home switch again by hand?
What happens if you hit one of the limit switches on your X axis while it is creeping across?
To me, it sounds like you have a dirty home switch (maybe look at your de-bounce also), try replacing that switch with your Y or Z home switch that you know works to see if that changes things... If not...... and your switches are good, and your homing config and homing inputs are set up right. I would probably try to re-install M4 since perhaps something got corrupted.
Scott