(SOLVED) Position of HOME of GRBL CNC Plotter with 28BYJ-48 and ULN2003

Hi again. I'm in GRBL CNC Plotter now. Here's the specification:

  1. Arduino UNO
  2. Stepper motor 28BYJ-48
  3. Stepper motor driver ULN2003
  4. GRBL Firmware from Ruizivo.
  5. Servo sg90
  6. AWG 28 wires
  7. 4x Limit Switch.

ADDITION:
a) X-Axis pins: 2,3,4,5
b) Y-Axis pins: A0, A1, A2, A3.
c) Z-Axis pins (servo): 11.
d) Arduino is powered by 9v and I use voltage converter for stepper motor (9v to 5v).

NOTE: I solder the pins except servo to avoid wiring problem.

RESULT to ACHIEVE:
What I want to achieve is that this machine starts running from the left bottom corner as illustrated in this pic below:

I tried to edit the $23 to 3 but no luck

$23 = 3

CASE:
At first try, I execute G00 X40 (where the position is in left corner. Universal gCode sender showed that It runs to 40.000 but, the motor still remains in its position.
Then I execute G00 X0, the machine starts running to the right hand side to go to G00 X0.
This case shows that the G00 X0 is not in the left hand side (corner) as I wish.

invert homing direction for X axis.
use $21=1 to enable homing

okay, wait. I test it
(Result: No, it doesn't work)

How are the limit switches connected? The pic looks like nothing is connected to the limit pins.

yes, okay wait, I instal the limit switch
(result: No, I doesn't work even though I instal the limit switch. Here's my config:

>>> $$
$0 = 10    (step pulse, usec)
$1 = 255    (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)
$6 = 0    (probe pin invert, bool)
$10 = 0    (status report mask:00000000)
$11 = 0.010    (junction deviation, mm)
$12 = 0.002    (arc tolerance, mm)
$13 = 0    (report inches, bool)
$20 = 0    (soft limits, bool)
$21 = 1    (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 = 250    (homing debounce, msec)
$27 = 1.000    (homing pull-off, mm)
$100 = 150.000    (x, step/mm)
$101 = 150.000    (y, step/mm)
$102 = 150.000    (z, step/mm)
$110 = 250.000    (x max rate, mm/min)
$111 = 250.000    (y max rate, mm/min)
$112 = 250.000    (z max rate, mm/min)
$120 = 10.000    (x accel, mm/sec^2)
$121 = 10.000    (y accel, mm/sec^2)
$122 = 10.000    (z accel, mm/sec^2)
$130 = 200.000    (x max travel, mm)
$131 = 200.000    (y max travel, mm)
$132 = 200.000    (z max travel, mm)
ok

I also tried; $23 = 0 (not working)

  • Here's the limit switch:

  • Limit switch (below):

first you should set right move direction for X axis - $3.
do other axes moving correct?

1 Like

Both axis move correctly, the only problem is that they dont move from the left hand side of corner machine.

right? and when you write G92X0 and then G1X10 pencil move away from black carriage ?

1 Like

I set to $3=3
But, I had already done that before and check again using $$ and it didnt work. But when you said that, I set to $3=1 and set again to $3=3 and it works.

Whats wrong with this LOL. If possible, I must know what happen. Overall, it works. Thanks.

1 Like

For future users:

Target: move the machine from the left hand side of corner to the right(x) and forward (y)

$3 = 3

Here's my config"

>>> $$
$0 = 10    (step pulse, usec)
$1 = 255    (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 = 0    (status report mask:00000000)
$11 = 0.010    (junction deviation, mm)
$12 = 0.002    (arc tolerance, mm)
$13 = 0    (report inches, bool)
$20 = 0    (soft limits, bool)
$21 = 1    (hard limits, bool)
$22 = 1    (homing cycle, bool)
$23 = 2    (homing dir invert mask:00000010)
$24 = 25.000    (homing feed, mm/min)
$25 = 500.000    (homing seek, mm/min)
$26 = 250    (homing debounce, msec)
$27 = 1.000    (homing pull-off, mm)
$100 = 150.000    (x, step/mm)
$101 = 150.000    (y, step/mm)
$102 = 150.000    (z, step/mm)
$110 = 250.000    (x max rate, mm/min)
$111 = 250.000    (y max rate, mm/min)
$112 = 250.000    (z max rate, mm/min)
$120 = 10.000    (x accel, mm/sec^2)
$121 = 10.000    (y accel, mm/sec^2)
$122 = 10.000    (z accel, mm/sec^2)
$130 = 200.000    (x max travel, mm)
$131 = 200.000    (y max travel, mm)
$132 = 200.000    (z max travel, mm)
ok