stk500_getsync() error on Uno

I got an Uno board a week ago and it worked fine for a few days but recently got the following error on uploading (in picture along with the code I’m currently trying to run).

I’m running 1.8.9 with a Uno Rev3 on Windows 10.
I’ve tried running through all of the troubleshooting options on the listed website with the exception of burning the bootloader on the board (as I do not have another board handy).
What I’ve tried so far:

  • New USB cable and different ports
  • Updated driver (pointing it towards the arduino driver folder)
  • Disconnecting all pins
  • Resetting right before uploading
  • COM port selection and board selection seem correct
  • (as a note, the green LED is on while plugged in and the 13 pin LED blinks when resetting)

As stated, it worked last week for a few uploads and then this error popped up.
My setup while initially running the Uno was (also shown in a crappy hand drawing):

  • Digital pins 0-11 connected to 3 L293D drivers (yes, I have tried disconnecting 0 and 1 while uploading)
  • Vin and ground were connected to a +12V supply
  • +5V to the L293Ds’ logic circuits (they’re powered through a separate +12V supply)
  • 12, 13, and A1 going to limit switches
  • A0, A4 and A5 going to mosfets
  • A0 used as a digital input
    All of the resistors used are in the 60-90k range

Did I miss some troubleshooting step or did I burn up my board (and how)?

You did a great job of already trying all the things I would normally suggest to people getting this error. Short of trying to burn the bootloader, the only other thing I can think you could do is a loop back test:

This test won’t fix the error, but it can tell you whether the USB to TTL serial adapter chip on your board is working. If it is working, then that indicates the problem is elsewhere, probably on the ATmega328P.

The only problem with the loop back test is that it seems to fail on boards that use the CH340 USB chip even when the CH340 is perfectly good. The CH340 is commonly used on the cheap Uno derivative boards. The USB to TTL serial chip is the larger black chip located behind the USB jack on the board. If it’s marked “MEGA16U2” then the loop back test results should be valid. If it’s marked “CH340” then it’s probably not even worth bothering with the loop back test.

If your board has the “MEGA16U2” (ATmega16U2) and the loop back test fails, then there is no point in doing a burn bootloader.