I recently got a Duemilanove with a ATMEGA328P-PU and was programming with no issues. Then I made sort of a dumb mistake and plugged in the USB cable while I was powering the board externally with a 12 V power supply (DERP). After that I started having issues uploading sketches.
At this point this is what happens: I plug in the USB cable, the green power LED turns on and the TX and RX lights flash together briefly. Then the computer detects the device like normal and my COM port becomes available in Arduino 0022.
When I go to upload a sketch (using the blink example) the RX LED will blink 3 times there will be a pause, RX will blink one more time and then I'll get the dreaded ...
"avrdude: stk500_getsync(): not in sync: resp=0x00 avrdude: stk500_disable(): protocol error, expect=0x14, resp=0x51" ... error.
I've performed a loopback test by connecting TX and RX pins together and I get everything returned perfectly.
At this point I figured maybe I damaged the ATMEGA chip so I got a new one with the bootloader pre-loaded. Unfortunately the board is acting exactly the same with the new chip (also an ATMEGA328P-PU). I've tried multiple computers and USB ports / cables and they all act the same. Short of getting another board, is there anything else I can try? Should I even bother messing around with replacing components on the board or should I just abandon it?