Can anyone summarise the Limit Switch / Homing Switch saga?

I have limit switches on my machine, but having crashed my machine into the end of each axis multiple times and broken a couple of switches, I’ve pretty much given up on trying to use them (I’m concerned that eventually, I’ll break something more important).

I’ve tried to wade through the long and varied threads regarding Limit Switches, but I’m really struggling to get a good idea on where I’d like to go next.

From what I can understand, it appears that what I thought were true “Limit Switches” are really only homing switches - that is they operate only when instructing the machine to “home” itself. If instructing the machine to exceed the physical limitations of any axis, the presence of a switch on that axis means nothing - the machine will continue to drive itself into oblivion (I’m exaggerating for effect).

  • Has anyone got reliable homing working on their 1000mm X-Carve? (it appears there is an issue with noise if the switch wiring is run through the drag chain).
  • Is “Homing” worth the hassle? As a newbie, all I’m doing is zeroing the ‘machine position’ and ‘work position’ prior to beginning each job. Why would I need to ‘home’ the machine if I still need to zero the work position?
  • I’d really like to set up some real “Limit Switches” on my machine similar to this Limit Switches does anyone know where there’s a simple set of instructions I can follow?

I suspect I’m not the only one who’d benefit from a couple of suggestions, and as usual, all comments are greatly appreciated.

Thanks in advance.

1 Like


Here is what I had to say about homing and limit switches.

On my Tormach 770 CNC milling machine in order to be able to use machine offsets I have to reference or home the machine before I can do much.
If you have a part that you run each day and have a fixture that the material for the part is clamped into you need to reference or home the machine every time you start it so that the machine then knows where that fixture is located on the table. That position is a machine offset and can be stored using G54 to G57 offsets.
Homing tells the software where X0,Y0 and Z0 are. Then if you have G54 set to machine coordinates X+5" Y+5" this becomes X0,Y0 for G54. Now if you clamp a 6" piece of material so one corner is at this position and tell the machine to machine a smiley face in the middle of the piece it will do it every time you put a new piece of material at the same location.

As has been said the only time that the switches you presently have installed on your machine do any thing is when you tell the machine to home or reference the 3 axis. Once that has happened the software will no longer react to one of those switches being activated.
Until you install additional switches on the other end of X and Y and configure those switches as limit switches and configure the switches you presently have installed as both Homing and limit switches you will continue to crash into the hard stops for you machine.

With a brushed DC motor as your spindle with all the electric noise they generate you have to find ways to negate that noise so you do not get false readings.

Hope all this helps. feel free to ask more questions.

And yes homing and limit switches configured correctly are very important on CNC machines.


1 Like

I was also breaking my switches, however you want to refer to them, homing, limit, etc… until I set hard limits in GRBL to 1. You may need to increase the drive off after homing distance to prevent false triggers after homing sequence. Also, adding a .1uF or .01uF capacitor between the limit switch pin and ground will help with the noise issues from motors. So far my machine has been behaving perfectly after I made these changes.

ive broken 2 Z axis switches but both times was because i tried to move the Z carriage to far in the wrong direction. once i figured out that i need to pay closer attention to what im doing there hasnt been a problem

i home my machine before each job and after each tool change. probably dont need to do it between tool changes if i know i havent bumped the machine out of place tightening the bit but it only takes 30 seconds for the peace of mind. i use a touch plate to set the XYandZ 0 points before each job and after a tool change as well so its just part of the process for me ~ Home machine - set XYZ - run gcode - change bit -Home machine - set XYZ - run gcode - etc

Really the only thing I’m using my homing switches for these days is to enable grbl to use the soft limits I’ve set. I tested the soft limit feature once I enabled it, and it worked fine, but I find that when I’m running a project, I still won’t trust it (which is my issue, not the machine’s).

I recently ran a wide piece, and for whatever reason it started the job going right to left (I’d guess that about 99% of my projects end up going left to right). When the carriage started booking over to the right side of my piece once I hit run, I panicked and hit the e-stop.

The point is, I do have homing switches, but it turns out that I’m not comfortable enough (yet) getting any real benefit from them (in my case, soft limits).

1 Like

@PJTX, I feel the same way. I’ve been bitten a few times with lost steps, probably just bad spindle issues, but the only time I’ve crashed a rail is when I fat finger the button. I’m still not comfortable with the assumption that I have everything dialed in, and I know that when I start to feel it’s dialed in…BAM.