CNCjs, X-axis & Z-axis not moving

I’m new to the CNCjs software and trying out this project . I have copied the wiring of the cnc shield exactly as in instructable page. When I opened CNCjs software and attempted using the widgets to jog, the Y-axis worked perfectly but the X & Z axis did not move at all. I have been unable to find any tutorials on CNCjs, so would really appreciate some help. Have tried swapping motors and all 4 are functional. Vref on A4988 set around 0.8.

What exact CNC shield? What Instructable page? Which firmware (grbl, Smoothieware, TinyG or g2core)?

This instructable page firmware is grbl and using the cnc shield v3 engraving machine

I connected 3 steppers to my CNC shield V3 that is plugged onto an Uno running Grbl version 1.1. All 3 axis work fine when jogged using the CNCJ app.

Post photos of your setup so that I can see the positions of the jumpers and where stuff is plugged in.

Here is a simple test code that can check each axis, one at a time. Change the step and dir pin numbers to the axis that you want to test and upload the code. The stepper for that axis should turn slowly. You can change the direction(CW or CCW), too.That will confirm that each axis is connected properly.

#define CW 0
#define CCW 1

const byte stepPin = 2; // x axis > 2, y axis > 3, z axis > 4
const byte dirPin = 5; // x axis > 5, y axis > 6, z axis > 7
const byte enablePin = 8;

unsigned long stepTime = 2400;

void setup()
   pinMode(stepPin, OUTPUT);
   pinMode(dirPin, OUTPUT); 
   pinMode(enablePin, OUTPUT);
   digitalWrite(enablePin, LOW);
   digitalWrite(dirPin, CW);

void loop()

void oneStep()
   static unsigned long timer = 0;
   unsigned long interval = stepTime;
   if (micros() - timer >= interval)
      timer = micros();
      digitalWrite(stepPin, HIGH);
      digitalWrite(stepPin, LOW);

I placed a total of 14 jumpers. Have commonly seen tutorials where jumpers were placed on EN/GND but in the instructable page was not placed, not sure why. Also just tried swapping A4988 drivers, X & Z work now but its the Y-axis that do not move. I did not experience any smoke from the drivers, so I don't why the driver would not be working.

If a motor is disconnected from a powered driver, the driver will be, instantly, destroyed. Even just momentarily, like a bad or intermittent connection.

But I have never tampered with the motors in this setup, also made sure the connections were secure before powering on

Did you try the test code that I provided to test individual motors (and their drivers)?

The problem seems to follow 2 drivers. Replace those drivers.

What is the coil current set at on the drivers?

0.798~0.788 ish

Have tested the code, problem is the same

1.6A coil current is on the high side for A4988 drivers without forced air cooling.

My best guess is that you have bad drivers.

Change place between the working one and one not working driver... See if the fault changes accordingly.

I just bought two new drivers to replace those of the Y-axis, now it works

Cool. Glad you got it going.

This topic was automatically closed 120 days after the last reply. New replies are no longer allowed.