I don't think board replacement is necessary at this time. Okay, first I want to confirm that your settings are still the same as what we prescribe:
$0 = 10 (Step pulse time, microseconds)
$1 = 255 (Step idle delay, milliseconds)
$2 = 0 (Step pulse invert, mask)
$3 = 0 (Step direction invert, mask)
$4 = 0 (Invert step enable pin, boolean)
$5 = 0 (Invert limit pins, boolean)
$6 = 0 (Invert probe pin, boolean)
$10 = 1 (Status report options, mask)
$11 = 0.010 (Junction deviation, millimeters)
$12 = 0.002 (Arc tolerance, millimeters)
$13 = 0 (Report in inches, boolean)
$20 = 0 (Soft limits enable, boolean)
$21 = 0 (Hard limits enable, boolean)
$22 = 1 (Homing cycle enable, boolean)
$23 = 0 (Homing direction invert, mask)
$24 = 35.000 (Homing locate feed rate, mm/min)
$25 = 1200.000 (Homing search seek rate, mm/min)
$26 = 94 (Homing switch debounce delay, milliseconds)
$27 = 4.000 (Homing switch pull-off distance, millimeters)
$30 = 12000 (Maximum spindle speed, RPM)
$31 = 5000 (Minimum spindle speed, RPM)
$32 = 0 (Laser-mode enable, boolean)
$100 = 200.000 (X-axis travel resolution, step/mm)
$101 = 200.000 (Y-axis travel resolution, step/mm)
$102 = 200.000 (Z-axis travel resolution, step/mm)
$110 = 3500.000 (X-axis maximum rate, mm/min)
$111 = 4400.000 (Y-axis maximum rate, mm/min)
$112 = 3000.000 (Z-axis maximum rate, mm/min)
$120 = 240.000 (X-axis acceleration, mm/sec^2)
$121 = 240.000 (Y-axis acceleration, mm/sec^2)
$122 = 240.000 (Z-axis acceleration, mm/sec^2)
$130 = 432.000 (X-axis maximum travel, millimeters)
$131 = 432.000 (Y-axis maximum travel, millimeters)
$132 = 95.000 (Z-axis maximum travel, millimeters)
I'm in particular concerned about your settings 100 and 102. Your distance traveled corresponds to a setting of 800 for setting 100 and 400 for setting 102. (NOTE: THOSE VALUES OF 800 AND 400 ARE WRONG, I'M JUST SAYING YOUR DISTANCE TRAVELED WOULD BE EXPECTED IF THOSE VALUES WERE IN THERE).
If they are those values are wrong, just correct them, do the motion distance test again, and stop and report results please.
Now, if the values you had in your settings were already correct, let's do two things.
First, I would like you to plug the board in and then go into the Arduino IDE.
Go to Tools/Board and select Arduino/Genuino Uno
Next go to Tools/Port and select the comm port.
Next go to File/Examples/(scroll on down if needed)/eeprom/click eeprom_clear
Next go to sketch/upload
This procedure should flush anything in your settings.
Now, Use XLoader to upload a clean version of our hex file, which I have attached to this message. Please do
not open the hex file with a text editor to view it. It's hexadecimal and one little character input could mess the entire program up.
russemotto.com/xloader/XLoader.zipDownload and unzip XLoader. Open it, then point to the file by clicking the ellipse (…) under the window with the heading “Hex file.” The device must be “Uno.” Drop down the box for COM port, and make sure you select the COM port that the Uno is occupying. In most cases, only one COM port will show. If not, try both. Baud rate must be 115200. Click upload and wait for the confirmation.
Please open your g code sender and connect to the machine. If you got a good flash, the machine should
not open in alarm lock. Please do a $$ and enter.
Does it match what we have above?
Please do the motion test on each axis and report back.
If the motion test is successful, do a homing operation and see if it is successful. If it is not successful, please go to Universal G Code Sender Platform then Tools/Options/UGS Icon/Sender Options at top bar. Click "Show verbose output" then click apply and ok.
Press each switch.
Do "Pn:Z" show at the end of the reported text string whenever you manually push the Z switch?
What does it say when you press X and Y?
Let us know.
Thanks