I made my own version of the Arduino Mega and I just populated the board using components from a working Arduino Mega board. I soldered the 16u2 QFN chip using a soldering oven and hand-soldered the surrounding peripherals. I then connected it to my computer via USB and the com port was recognized correctly.
I then soldered the 2560 chip and its peripherals and tried to upload the blink sketch to verify everything was working. At this point, I get the error message mentioned in the title maybe five times and then the window shows the avrdude: stk500v2_getsync(): timeout communicating with programmer error message and that's it. Does anyone know why this could be? Below is a screenshot of my pcb, so let me know if there are any trace issues that can cause this.