Dual end stop question - NEWBIE

Ok so i believe i have just finished my LR3.
But i have a question.
I noticed when i push each limit switch, the board in the SKR pro lights up to say that switch is triggered. so im guessing its working.
My question is, if i move Z or Y or X from the touchscreen, shouldnt it stop moving if its hit the limit switch? because at the moment it tries to keep going.

1 Like

So it seems the mechanical limit switches work when homing, but not if I manually move it from the touchscreen.

The Marlin firmware only checks limit switches during homing. Once homed, soft limits are enabled. Soft limits will prevent your machine from going negative (i.e. mash the switches against the stops), The max soft limits will only work if you modify the bed size in the firmware to match the working area of your machine. This requires you to do a simple modification in the Marlin code, compile the firmware, and re-flash the board.

In practice, because of the way 99.99% of MPCNC users set up their jobs, soft limits become useless and can be ignored. That is, most jobs use a G92 X0 Y0 Z0 in the machine workspace to establish a local origin to the stock. This disables soft limits. Note that, for MPCNCs, homing’s primary purpose is squaring the machine.

As for the issue highlighted by Aaron, you will only have it if, when homing, the endstop lights you mention come on, but the stepper fails to stop moving. This issue is not experienced by most SKR Pro owners, and you should not jump to the conclusion that you have that problem if homing is not working correctly.

2 Likes

Thanks Robert.
So my maximums are
x axis is 1335mm
Y axis is 2684mm
Z axis is 80mm
If I input this info in octoprint and cncjs profiles, will this mean that when printing it won’t exceed these?
Unless I manually move the axis’s

I don’t use octoprint or cncjs, so I cannot give you an absolute answer, but I seriously doubt that either g-code sender limits the range of motion. It is difficult for a g-code sender and Marlin to remain in sync wrt position, so having the sender limit motion is a recipe for serious problems.

If you want to “fix” marlin, then you can edit the following defines in configurtion.h, compile and reflash your board:

// The size of the printable area
#define X_BED_SIZE 1220 // 200
#define Y_BED_SIZE 2440 // 200

But as mentioned above, the soft limits will be disabled when you setup a job using G92. I believe there is a complex solution for setting up jobs and preserving soft stops by using workspaces. It was outlined in a recent topic, but I’ve been away from my machine, so have been unable to test the solution. And using workspaces is not something I recommend when you start out with your machine.

Note that the consequences of your machine attempting to exceed its limits are minor. While the steppers make an ugly sound when blocked, stopping the steppers is not-destructive.