weird move on Y axis cnc

Im using estlcam Ver10 windows8.1 64bit
Arduino Uno R3
micro step driver m415 are set the same value for each X Y Z axis
Nema23 stepping motor

I am only use A0 - A5 on Arduino Uno R3 board wiring as follow
A0 to Dir + on Microstep driver for X axis
A1 to Dir + on Microstep driver for Y axis
A2 to Dir + on Microstep driver for Z axis
A3 to Pul+ on Microstep driver for X axis
A4 to Pul+ on Microstep driver for Y axis
A5 to Pul+ on Microstep driver for Z axis

GND to Dir- and Pul- on all three Microstep driver

X and Z axis work perfectly, but i have a weird move for the Y axis,
For Example, if i press Y axis to move forward for 3 times, it will go backward one time, or press backward 2 or 3 times, it will forward one time.
I have try to run manual command through Universal GCode, the weird move is all about the same.

If you could please give me some advice to guide me the proper way to fix my concern. I would really be appreciated.

With the power off, isolate the problem by swapping various connections, like motor to driver wiring, driver to Arduino wiring, etc..

Power up, test and report back.

sitt:
For Example, if i press Y axis to move forward for 3 times, it will go backward one time, or press backward 2 or 3 times, it will forward one time.

Without seeing the program and a good wiring diagram how can we know what the problem might be?

Have you tried replacing the switch that you are pressing in case that is at fault?

Try modifying the program to use the switchY to move the ZAxis (i.e. one of the working axes) and vice versa. The idea is to try to isolate what part of the system is faulty.

...R