Well, one way or another, you either need to reprogram your CAM to mirror image the output code (Difficult, and makes all kinds of other things difficult too) or you can alter your machine so that the CAM works.
You need to reverse either the X or Y axis, in order for the CAM to make sense.
Once that’s done, you need to either change the home switch positions, or tell the machine that it’s homing to a different location.
We usually want the machine to home to the X=0, Y=0 location, because we usually start our CAM there, and want to be able to move to the location X0=, Y=0 on the work stock quickly, and not have to jog the machine over 4’
Basically, you are getting a mirror image because your CAM is not agreeing with your machine. In this case, it is 99.99% probably that your machine is wrong.
The CAM software will assume that if you are standing at the end of the table, Increasing X will move the gantry towards your right hand side. Increasing Y will move the gantry away from you, and increasing Z will raise it away from the table. For the LowRider, we assume that X is the axis that has the rails and the single motor on the platform. Increasing that should move it away from the home position. If you are standing at the end of the table with the machine spanning the table in front of you, it should home to your left hand side, and move to the right.
Y should probably home towards you. When you increase the Y position, it should move away from you.
If either one of these things is not the case, you will get a mirror image of whatever you try to cut.
Note that a mirrored Y will result in a piece that looks exactly like a mirrored X. It does not matter which axis is backwards.
Let’s say, for argument’s sake that your X working area is 4’ (1220mm)
You can swap the X motor plug the other way, and it will now work, but it will crash the sled into the wrong side when you try to home it, because the switch is on the other side.
You need to tell the firmware that X homes to the high side. There is a section in Marlin’s configuration.h file that looks like this:
// Direction of endstops when homing; 1=MAX, -1=MIN
// :[-1,1]
#define X_HOME_DIR -1
#define Y_HOME_DIR -1
In this case, we would change that to:
// Direction of endstops when homing; 1=MAX, -1=MIN
// :[-1,1]
#define X_HOME_DIR 1
#define Y_HOME_DIR -1
This will tell the firmware that we want to go to the maximum position when we home the machine.
Then we should tell the firmware how big the “bed” is, so that it knows where the machine sero is. Again, in configuration.h:
// @section machine
// The size of the print bed
#define X_BED_SIZE 1220
#define Y_BED_SIZE 2440
will tell Marlin that we have a full sheet size machine.
By doing this, when you home your machine, it will then display X=1220, Y=0, but when you print, it will no longer be mirror imaged.
Personally, I don’t recommend this. Having the machine home so far away from the reasonable start of your work will be bothersome while you wait for it to truck on back to the other side of the bed. It would bother ME anyway.