[Resolved] Boned my Arduino - Need help setting up Grbl

So i was playing with Estlcam software, anyway… it re-flashed my arudino and now it won’t work. I followed the grbl 0.9i re-install, got it back and loaded but the X-axis is reversed… and not sure what else isn’t configured.

Is there a grbl script or something i can run to configure all the settings I need? Or is the defaults fine.

I’m running the acme z-axis, with endstops. Thanks in advance…

Ok this is what i got so far
$3=3 (correct inversion of the x/y/z)
$23=3 (homing inversion as well)

anything else i should set?

Would going to http://easel.inventables.com/setup fix that?

I just went through it several times. The first time i selected “no” on the X and Y axis, and chose the “axis moved in wrong direction”. It said it’d change the axis, it never did. I had to do it manually.

Right now i got the axis’ correct, but the steps are off. One inch moves like 8 inches…

So after several passes at setup, i haven’t been able to get it working.

Could someone fire up their “Arduino software” if they have it, run a serial monitor on the X-Carve Com port, connected at 115k baud.

Once you see the terminal, can you hit enter “$$” and submit that (with newline at end). It should spit out a bunch of values, could someone post those values?


I think you’re going trough same problem i’ve been battling. If you didn’t
Try yet;
Start Arduino,
Go to File - Examples - EEPROM - eeprom_clear
Click it,

Find this line,

for ( int i = 0 ; i < EEPROM.length() ; i++ )


for ( int i = 0 ; i < 1024; i++ )

After upload finish, close Arduino IDE, open XLoader , Make sure all your settings are correct
Device = Uno(ATmega328)
Baud rate 115200
Load HEX file name = grbl0_9i_X_Carve_500mm_ACME.hex

Close XLoader and start Easel, run machine setup.

Ok got the answer, don’t flash with the default grbl 0.9i, you have to flash the inventables one here

Here are the default values of the inventables version

Grbl 0.9i [’$’ for help]
[’$H’|’$X’ to unlock]
$0=10 (step pulse, usec)
$1=25 (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=3 (status report mask:00000011)
$11=0.010 (junction deviation, mm)
$12=0.002 (arc tolerance, mm)
$13=0 (report inches, bool)
$20=0 (soft limits, bool)
$21=0 (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=250.000 (x, step/mm)
$101=250.000 (y, step/mm)
$102=188.976 (z, step/mm)
$110=500.000 (x max rate, mm/min)
$111=500.000 (y max rate, mm/min)
$112=500.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=290.000 (x max travel, mm)
$131=290.000 (y max travel, mm)
$132=200.000 (z max travel, mm)

Reverse the stepper motor leads that you checked for resistance when you initially setup the x-carve.

Ok, still having issues.

Flashed with the inventables version and the step interval is still waaay of. I say move X or Y direction 1 inch and it moves 6-7.

Any ideas?

If my post didn’t help, go to this link and see what steps we go for exact same problem. If you don’t erase your eprom, doesn’t take anything else. When you upload correct hex file you don’t have to work on those numbers.


Run EEPROM->Clear, script from the arduino examples sketches. Wipe the EEPROM and then reflash with the inventables grbl version.

Thanks @AlanDavis, made my night!

1 Like

Hello everyone

Is this also the version for the X-carve 1000mm?
–> https://github.com/inventables/grbl

I believe that they use the same one for 500/1000. When you go into Easel, it will ask you to specify your machine size.

That one didn’t work on mine.
This is the correct one. Don’t worry about saying 500mm, as soon as machine setup on easel, it will be smooth riding.grbl0_9i_X_Carve_500mm_ACME (1).hex (80.3 KB)