X-carve not homing in the right direction on the Y-axis

Just completed the construction of my X-carve and everything seems to be working except for one thing. When I run the “homing” from Easel the carriage moves properly on the Z-axis (toward the limit switch) but on the Y-axis it moves in the wrong direction (away from the limit switch). (Haven’t yet made it through the homing to the X-axis check yet.)

The Easel machine setup offers me the option of reversing the homing directions in GRBL. But that seems to either reverse the direction on ALL axis or do nothing at all.

PROBABLY I’m just misunderstanding something here. So I’d appreciate some advice.

Note: There is also a low vibration that seems to be coming from the left Y carriage. Doesn’t seem to be a problem but the other carriages seem to move almost completely silently.

Does you machine jog in the right direction. It is possible you have a motor lead reversed if it doesnt. The GRBL code as you noticed is for all axis to reverse. I dont know any way that the axis would be wrong unless you have the motor forced to go the wrong way mechanically. Hopefully someone has another answer if this isnt what is wrong.

Re-check your motor wiring on the Y axis. Make sure that you reversed one of the sets of wires per the instructions.

If you know how to get the grbl parameters, post them here. If you don’t, you might as well learn how now. You can use the Machine Inspector in Easel to get them or you can use a terminal program (there’s one in the Arduino IDE if you know how to use that).

1 Like

I originally did have the motor leads reversed for the two Y-axis motors. So when I first turned it on and tried to jog the Y-axis, the Y-axis motors/carriages were trying to move in opposite directions. Looked back over the wiring instructions, found my mistake, and fixed that. So now they are both moving in the same direction.

Just tried the Easel first test carve and it carved upside down and was also kind of a mess. Occasionally hearing a grinding noise when the carriage tries to move fast. Also seems like the two Y-axis motors/carriages are not quite moving in sync.

grbl parameters?

Also, check these:

Switching homing direction is a grbl parameter…I don’t have the list in front of me, but do a search.

The link is here:

The setting is $23
Scroll down to $2 instructions for the value you need.

I’ve eliminated the grinding noise by adjusting the currrent to the Y-axis motors to 1.9 volts and loosening all the v-wheels a bit. First carve after that the eccentric nuts on the Z-axis v-wheels vibrated loose and the wheels fell off during my test carve. :-o Readjusted those and thinking about using some lock-tite or something on them to keep that from happening again.

Anyway, after that, I got a simple test carve (NOT the Inventables test carve) completed successfully except for the fact that it still carves upside down relative to the Y-axis and that homing still doesn’t work right. Had to home it manually.

Before I get into trying to learn GRBL stuff I’ve got to ask WHY would this be a GRBL problem? I mean, I’ve installed and wired the g-shield and arduino exactly as the instructions specified. So how could it be that the factory default firmware has this backwards?

I’m more inclined to think that I made some mistake somewhere than I am to think that there was something wrong in the electronics from the factory. And I’m wondering if this problem couldn’t be fixed by simply reversing a couple of wires somewhere (to the bidirectional Y motors) than trying to code it away?

Note: In examining and playing with the system more extensively, I find that the little green terminal blocks on the gshield that connect the wiring from the steppers are kind of cheesy and don’t seem to reliably hold the wires and make connections. I’m therefore inclined to replace them with something like a terminal block, or some other style of connector, and I’m wondering if anyone else has done that?

Grbl has user parameters that can change the direction of motor movement and homing movement to name a couple.

Take a look at this to get an idea of what can be done. It has a link to more information when you are ready to dive in.

Well my problem is solved but I feel stupid. I went back and checked all the wiring again and found a set of wires reversed. I had switched them intentionally when I first fired up my X-carve and was getting no motion at all from the Y-motors. After I switched them that time the Y-motors started to work but then, after troubleshooting some other minor problems, I encountered the reversed Y-motion and failure to home. I just forgot that I had switched them in the first place.

Overall, it turns out that the root of my problem was the rather unreliable connections on the little green plugs on the g-shield. So I’m definitely going to replace them with something better at the first opportunity!

Thanks to all who offered advice on this. It was not wasted on me because I plan to follow it and learn more about GRBL straight away!


I am having the same issue with the X and Y going the wrong direction. I have double checked the wiring on the controller and it is correct.
I have tried to make the change when it asks GRBL to fix the issue but it still went in the wrong direction.
I am going to go back and look at this thread to see if I missed anything.

hi :slight_smile:
i have this same Problem, my xcarve mills upside down , what can I do ?

Reverse rotation for your Y-steppers.
This can either be done in Easel Setup (where one is asked to test and verify direction), or change GRBL parameter $3 if I remember correctly, or swap the “polarity” on one pair of each Y-stepper motor. (say switch A+/A- to A-/A+)

In addition to @HaldorLonningdal solutions, an easier fix. You probably just have the motors in the wrong ports. Turn off the X controller and swap Y1 and Y2.

1 Like