Arduino times out on upload

Hello

I am having an issue where when I try to upload my program, the IDE stalls at "upload" stage and eventually times out.

Board: Arduino/Genuino Uno
Operating system: Windows 10
IDE: Arduino 1.8.7

I had it hooked up to a 2X16 LCD display, DHT11 temperature and humidity sensor, and a 12V muffin fan. Basically I was reading the temperature and humidity, displaying on the LCD, and turning the fan on/off to control temperature. Fan was powered by VIN and controlled with a MOSFET with 220 Ohm resistor between board pin and gate pin. The board was being powered by an external 12V power supply and I was programming the board from my PC with a USB cable. The program was running fine, however I plugged the USB cable in with the 12V power supply still in place and tried to update the program slightly and started seeing this issue. Board would still run loaded program but would time out when I tried to upload a new program. Did some googling and tried all the following troubleshooting.

Troubleshooting already done:
-Restart computer and reset board
-Unplug USB from both ends and re-plug multiple times
-Tried new USB cable
-Reset board at various stages of upload/compile
-Checked board selection and port selection are fine
-Drivers are up to date
-Removed all devices from Uno and tried to upload "blink" sketch, still no luck
-Uninstalled device from device manager and re-installed
-Uninstalled Arduino IDE and re-installed
-Changed COM port to multiple different numbers from device manager
-Connected to different PC and still saw same issue

Really hoping that trying to upload while 12V supply was connected didn't fry something on the board. No smoke or noticeable heat on board. Wanted to check in here before buying a new board...

Error message from Arduino IDE:
Arduino: 1.8.7 (Windows 10), Board: "Arduino/Genuino Uno"

Sketch uses 930 bytes (2%) of program storage space. Maximum is 32256 bytes.
Global variables use 9 bytes (0%) of dynamic memory, leaving 2039 bytes for local variables. Maximum is 2048 bytes.
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x78
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0x78
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0x78
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0x78
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0x78
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0x78
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0x78
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0x78
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0x78
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0x78
Problem uploading to board. See http://www.arduino.cc/en/Guide/Troubleshooting#upload for suggestions.

This report would have more information with
"Show verbose output during compilation"
option enabled in File -> Preferences.

This happened to me, however I fixed it by selecting the old bootloader. Worth a shot

Hi!

I got this problem now. It happened when I tried to Programm Arduino Uno R3(Atmega328P) by TL866 in order to learn how to programm in assembler language. After that I got this message:
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x78
avrdude: stk500_recv(): programmer is not responding
.............................................................................
avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0x78
avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0x78.

In other websites the problem was solved by programming for example USBasp or other programmers. But I haven't got it. I only have programmer "MiniPro TL866".

I tried to write bootLoader into Atmega328P by using TL866, but here is no favor. In this step I paused my researches, and I wish the Profi Arduinors can help me how to write BootLoader by using TL866.