I have an Arduino Uno and a CNC Shield V3, with A4988 drivers and some stepper motors. I'm using this setup on a custom-built CNC machine, where the Y and A port drive two Y-axis motors.
This worked fine until a malfunction caused the gantry to move too far in the Y direction until it was stopped by a physical object that stopped the gantry from moving further (I do not have proper end stops yet).
Unfortunately, since then, the Y port of the CNC shield seems not to be 'driven' anymore, but the A port still is (the 2 jumpers needed to copy the Y signals to the A driver are present). In other words, the stepper motor connected to the A port still rotates, but the one connected to the Y port does not.
Things I have already checked:
the wires and stepper motors are not broken. If I connect the Y motor and Y wire to the A port, then the motor works just fine.
replaced the Y driver with a brand new one
replaced the whole cnc shield with a brand new one
I don't understand how the A can work but Y doesn't, if A is 'copying' Y, especially because both the cnc shield and the driver are brand new.
Any suggestions on what I can try or what can cause this? Thanks.
No, the A driver double the Y axis, double checked that.
The X and Z axis still work correctly.
Not sure what you mean with "how do you access the A axle". I do not explicitly access this axle myself. I use an unmodified grbl firmware for driving the CNC machine (so there is no code to post). As I understand it (but might be wrong), just the X, Y and Z are controlled by the firmware, and the CNC shield 'controls' the A axle by being a double of the Y.
Also, note that it is the A that is working correctly, it is driving one of the Y axles. It's the Y driver (or slot on the CNC shield, or pins on the Arduino) that is giving me troubles. In other words, it currently behaves as if A correctly doubles Y, but Y itself is not doing anything.