Arduino UNO + CNC Shield 3.03 Protoneer
XY endstops = Makerbot endstops / Mech endstop v1.2 (NC)
Z endstop = Omron SS-5GL-F (NC)
grbl 0.9j settings:
(VARIABLE_SPINDLE is disabled)Grbl 0.9j ['$' for help]
['$H'|'$X' to unlock]
$$
$0=10 (step pulse, usec)
$1=25 (step idle delay, msec)
$2=0 (step port invert mask:00000000)
$3=3 (dir port invert mask:00000011)
$4=0 (step enable invert, bool)
$5=0 (limit pins invert, bool)
$6=0 (probe pin invert, bool)
$10=3 (status report mask:00000011)
$11=0.010 (junction deviation, mm)
$12=0.002 (arc tolerance, mm)
$13=0 (report inches, bool)
$20=0 (soft limits, bool)
$21=0 (hard limits, bool)
$22=1 (homing cycle, bool)
$23=3 (homing dir invert mask:00000011)
$24=25.000 (homing feed, mm/min)
$25=500.000 (homing seek, mm/min)
$26=50 (homing debounce, msec)
$27=1.000 (homing pull-off, mm)
$100=2560.000 (x, step/mm)
$101=2560.000 (y, step/mm)
$102=4800.000 (z, step/mm)
$110=300.000 (x max rate, mm/min)
$111=300.000 (y max rate, mm/min)
$112=150.000 (z max rate, mm/min)
$120=10.000 (x accel, mm/sec^2)
$121=10.000 (y accel, mm/sec^2)
$122=5.000 (z accel, mm/sec^2)
$130=159.000 (x max travel, mm)
$131=93.000 (y max travel, mm)
$132=100.000 (z max travel, mm)
ok
My X, Y and Z endstops are connected as NC. The circuits are closed as long as the switches are not triggered. I used a multimeter to verify this.
So the switches work properly.
XY axis configuration:
X and Y endstops are connected to X- / GND and Y- / GND.
X Y motors move in the correct direction. - = to the left; + = to the right.
Z endstop is connected to Z+ / GND. - = downwards ; + = upwards.
All endstops are only connected with 2 pins. The makerbot endstops have 4 wires but I only used two of them which I measured with my multimeter to trigger correct. Closed when not triggered; Open when triggered. I tried this by pushing the switches by hand.
I start bCNC and open a port to my Arduino.
I enter "$H" and the Z axis moves upwards. The Z endstop is triggered but the Z axis continues to move upwards.
What I tried:
1) I tried grblForCyclones modified homing by changing:
0.9j stock
#define HOMING_CYCLE_0 (1<<Z_AXIS) // REQUIRED: First move Z to clear workspace.
#define HOMING_CYCLE_1 ((1<<X_AXIS)|(1<<Y_AXIS)) // OPTIONAL: Then move X,Y at the same time.
to
#define HOMING_CYCLE_0 (1<<X_AXIS)
#define HOMING_CYCLE_1 (1<<Y_AXIS)
did not solve issue.
2) I tried to connect the endstops to X+/Y+ and GND.
Did not solve it.
Any ideas ?