Update X Carve 1000: Want to add additional limit switches

I own one of the newer X Carve 1000s with the X Controller. It currently has X/Y/Z homing (limit) switches installed which work great for homing the machine. As well as I have the Z probe.

I would like to have switches added to prevent the machine from over extending the other direction on X and Y axis. I have read that this may be as simple as adding a second switch wired in parallel to each existing axis switch facing in the other direction and adding another hard stop part for it to hit against. Info I found this on was referencing the older machine which didnt use the X Controller or the dewalt 611. Both of which I am running.

I am looking at this as there have been times when I wanted to be able to JOG the machine around manually and I would feel better to have a safety mechanism of the limit switch to prevent going over the limits.

Is this still the case? Is adding additional limiting switches that easy?

A follow up to this question. What if I want to home my machine in the upper Left corner? Not move 0/0/0 to the Upper Left, but home it there?


I’m not sure the limit switches will give you the protection you want. The “Limit Switches” the X-carve uses are more for homing. Enabling “Soft Limits” in GRBL may do more of what you want, without the need for extra hardware.

As someone who knows only what is shown on the gui, can you elaborate?

Yes, but as @DavidHovis said, Soft Limits might be the better choice. When you enable hard limits, you’ll open yourself up to another thing that can be susceptible to EMI. Basically, you’ll have the potential for false detection on the limit switches…a frustrating way to ruin a job.

Adjust your $23 setting to invert the Y-axis homing.

Go to Machine–>Advanced–Machine Inspector. In the console type $20=1 to enable soft limits.

If you send $$, it’ll return all of your grbl settings. If you post your $23, I could tell you what to change it to invert your homing.

1 Like

If I invert the Y axis via $23, I will still need to move the homing switch and part it touches to the other side of the machine and X plate. Am I correct in assuming this?

I will see if I can get the $23 value today during or after work.


During homing, it is seeking those switches. Yes, you need to have switches where your machine homes.

How will this impact the setup of my work pieces on the machine and in the software? Does this set home to 790/0/0? Or does this move 0/0/0 to the upper left corner?

Here is a good question

Is there a cheat sheet listing all of the $$ commands and what they do ideally as they relate to the X Controller?



Possibly, depending on your firmware.

The important thing to remember is that your machine’s home position is ONLY to provide a reference for of your offsets.
When you are going to carve something, you don’t use MACHINE coordinates. You use WORK coordinates. You can set your WORK origin (0,0,0) to be anywhere. GRBL will keep track of where it is relative to your MACHINE. Basically, you can ignore MACHINE coordinates for regular use. Default Machine origine (Home) for most GRBL based machines is back right, with all of the work envelope existing in the negative space.

You could just refer to the grbl documentation.

Well thank you. That answers alot of questions. And thanks for the link. That was exactly what I needed. I will create my own cheat sheet with it and get it laminated then posted on the wall.

When it comes to CNC, I am very much a user. I draw a shape and hit carve. I had no clue it was driven by grbl, what that means, if its a benefit, or how to pull info.

Will setting Soft Limits prevent the stepper motors from going beyond those limits when using the keyboard to move?

I built a fence on the left side of the work area and installed a 1/2 router bit in the router and wanted to edge the side of the fence to be perfect in-line with the travel of the head to ensure strait pieces for my next project.

I had the movement of travel set to 1 inch, and when I pressed and held the arrow key to bring back down to 0, it went all the way to the hard stop and looked like the motor was skipping on the belt.

Will soft limits stop this?

How do I check the current location of the router head to so I can use that number for a soft limit?


what about moving the axis via GRBL command so that it will only move a certain amount of distance in 1 continuous motion?

In my above example, I had a 22 inch fence which needed to be trimmed up. It would have been nice to have told it to move 23 inches with having some lead and trailing space to ensure a clean cut.