Inventables Community Forum

Engraved Text Mirror of Intended Result

What settings are causing my homemade CNC router to engrave not as intended, but in a mirrored image? My CNC is controlled by Arduino Uno. The text is a simple text “Calvin” generated from the Easel text application. Any help would be greatly appreciated.

Thank you,


You probably have you X-axis mirrored (unless there’s an option for mirroring in Easel?). If you have homing switches you’ll need to adjust your homing direction. You can then either power down and re-wire your motors to reverse movement, or you can flip the invert bit in Grbl


4 ways:

  • Simply swap over the two pins from X-driver that is inserted into Ardunio UNO “Direction X-stepper” and “GND”
  • Locate one pair of the motor wires for your X-stepper, say A/A- OR B/B-. Swap around one pair only, reversing the A’s or B’s.
  • Edit GRBL parameter $2 which I assume currently =0, make it read value =1, in Easel Machine Inspector write “$2=1” and press Enter. Reset board.
  • Run Easel Setup which will guide you through direction etc. (This will reset all GRBL-parameters to default btw)

Setting the $2 in GRBL did it. Thank you so much.

I have some kind of the same problem. I have the 3018 cnc machine (banggood) but I can’t get it running propely. Some how, the image is mirrored and also upside down. I switch the 2 outer wires on the connectors of the z and y axis and it seems to work for the upside down issue. But still, it mirrors the jobs. Anybody have an idea? I also changed the $2 to 1, 2 and 3 but this doesn’t make a difference.

Mirrored = X travel in opposite postion
Upside down = Y travel in opposite direction

You need to swap one wire pair around to reverse stepper - or change direction in software.

How do I go About do this

Hello John
Did you ever get a solution to this? I have the same machine and have exactly the same problem. After I made the before mentioned adjustments the Unit went berserk and instead of carving a simple name, the spindle plunged deep into the work.

If your only issue was mirrored carving, Then the only change to make is the $3 setting per the chart.

What are your current grbl settings, and what model cnc are you using ?

Thanks for the quick reply!
Machine is generic make 3018.
At start Y axis was moving in wrong direction so I set $2=1 to invert the direction.
Next did a test of a simplistic text “Strider” designed in Easel. I then save gcode and import to candle to run.
(Basically because my internet speed capability on the laptop is well…out of date)
This came out mirrored and upside down. After some research I changed $3=4 to invert both axis’.
Not sure if that was correct. Instead of testing at that point which i should have done I went back to easel to create a different style of text this time playing with ramp setting in cut settings…ran this and got squeaking and beeping from ??? board? motor? In addition did not come down to contact work piece… stupefied I went back to original test code. Running this the spindle drove straight down into the work…deep.

Sorry for the long post
So I think I have a few things working against each other. Pics below are settings, the machine and the first test run result.

$2 is not a setting to invert an axis like that.
Can u set this back to 0 and then only adjust $3 to control directional changes.
This should resolve the current issue.

Unless you’ve designed your own controller then $2 is always =0 :+1:

1 Like

I will try this in operation. Originally during setup I noticed the Y axis was traveling the wrong way using jog commands. Down arrow would move bed back not forwards. I read you can invert direction of axis’ using $2. This corrected the initial problem then. I’ve now reset $2 to 0 and bed moves as it should. Peculiar.
Going to zero all axis’ and try again…

1 Like

Retried the text job. Disappointing and confusing… it’s still mirrored and upside down. Other point to note. Running gcode the machine is expecting “home-starting point”

to be upper left corner of bed and not lower left corner as is shown in job visualization

EDIT: Just realized $3 is set to 4 which according to table above does nothing to invert axis directions N N
Setting should be 3 again referring to table above. I have no clue why I selected 4??

If your need to flip and mirror from $3=4 then change to $3=3 :+1:

The chart is also used for $23 for the homing direction, so after you fix movement, then identify what needs changed for homing sequence…

It’s not working as one would hope.
Setting $3=3 now has z axis inverted.
0 is also no help. Setting to 0 or 3 now inverts z axis.
This wasn’t an issue before.
I’ve tried resetting, powering off after setting grbl to no success.