Strange inconsistent programming problem

Hi everyone! I recently designed a custom pcb for a wearable name badge project im working on. I assembled one pcb and the circuit all works great. It uses a AtMega 328p mcu, and to program it, I am using a CP2104 breakout board. The first one I made works fine, and I can upload code normally using the cp2104 breakout I have, and it works great. I decided to assemble another board, and for some reason, on the new board when I try to upload code it just times out. It still programs the old board fine, just not the new board. I have checked the hardware, and assembled another board with only the components needed for the chip to run, but I still have the same problem. I'm super frustrated! Any help is much appreciated!

Here is the Error message the IDE gives

Arduino: 1.8.1 (Windows 10), Board: "Arduino/Genuino Uno"

Warning: Board breadboard:avr:atmega328bb doesn't define a 'build.board' preference. Auto-set to: AVR_ATMEGA328BB
Sketch uses 13710 bytes (42%) of program storage space. Maximum is 32256 bytes.
Global variables use 1374 bytes (67%) of dynamic memory, leaving 674 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=0xe6
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 2 of 10: not in sync: resp=0xe6
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 3 of 10: not in sync: resp=0xe6
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 4 of 10: not in sync: resp=0xe6
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 5 of 10: not in sync: resp=0xe6
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 6 of 10: not in sync: resp=0xe6
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 7 of 10: not in sync: resp=0xe6
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 8 of 10: not in sync: resp=0xe6
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 9 of 10: not in sync: resp=0xe6
avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 10 of 10: not in sync: resp=0xe6
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.

Here is an Imgur link to the schematic of the PCB

Sorry if this is a dumb question, but does the "new" ATmega chip have the Arduino bootloader loaded?

Description of performance sounds like No to me.

DVDdoug:
Sorry if this is a dumb question, but does the "new" ATmega chip have the Arduino bootloader loaded?

Yeah not a dumb question at all! I have made that mistake before, but this time I made sure to burn the bootloader.

CrossRoads:
Description of performance sounds like No to me.

Sorry, what do you mean by "No"?

"No" ==No bootloader

Ah, ok Thanks. Yeah I uploaded a bootloader to it before putting code on. While I still had it in the socket I was able to upload code to it using the arduino isp. But it doesnt accept code using serial :frowning:

So are you pressing the reset button at download time or are you using the serial port reset method (trick question)?

I would also suggest that you post a legible copy of your schematic here, not everyone wants to download an app just to see your screen capture bigger than thumbnail size. Print the darn thing to PDF and attach to your post, we gain nothing from seeing your Eagle toolbars.

I m facing Same problem with Arduino pro mini bord which I bought from eBay.
Initially I successfully download code plenty of times,
But since tomorrow I faced​ same problem & error as you described.
But when I changed bord type from arduino promini to Arduino Nano then I can download code successfully.

Still I am finding reason of this behaviour. Also I observed loop execution time increase after selecting Nano bord.