Arduino stepper motor driver

X-axis shows limit activated and will not start spindle on the cnc.
No limits are connected to the stepper chield.

Are you running Grbl?

If so, when you enter $$ what is the value of $5?

What G code seder are you using?

Please read the forum guidelines.

I am using GRBL, when typing $5 it responds with error:3

enter $$ then look down the list. $5 = ____?

$0=10 (step pulse, usec)
$1=25 (step idle delay, msec)
$2=0 (step port invert mask:00000000)
$3=0 (dir port invert mask:00000000)
$4=0 (step enable invert, bool)
$5=0 (limit pins invert, bool) <<<<<<<<<<<<<<<<<<<< this
$6=0 (probe pin invert, bool)
$10=3 (status report mask:00000011)

Is there something you are supposed to configure to tell the GRBL software that you don't have limit switches?

No that I know of and I am pretty familiar with grbl. The default for a limit switch input is NO switch and internal pullup enabled. So an unconnected switch and an open switch look the same to grbl. Setting a limit switch invert to 1 will make the unconnected switch look closed. That is why I ask the value of the $5 parameter.

$5=0

Are you sure that it is the X axis switch?

Did you enable the variable spindle speed in config.h? If so the Z limit and the spindle enable pins swap.

// Enables variable spindle output voltage for different RPM values. On the Arduino Uno, the spindle
// enable pin will output 5V for maximum RPM with 256 intermediate levels and 0V when disabled.
// NOTE: IMPORTANT for Arduino Unos! When enabled, the Z-limit pin D11 and spindle enable pin D12 switch!
// The hardware PWM output on pin D11 is required for variable spindle output voltages.

Then none of the limit switch pins are inverted.

Can you post photos of the shield?