I think this helped? but why would removing the caps make it work better? I am getting successful uploads with the arduino IDE about 80% of the time. however I tried a larger sketch and the sucess rate is much much lower, like 5%. here is it finally succeeding after 20 tries:
Processing -U eeprom:w:/Users/sam/Library/Caches/arduino/sketches/0B1A6BD34806D1DEC78D93D8773B8ACD/robot_arm.ino.ino.eep:i
Warning: no eeprom data found in Intel Hex file /Users/sam/Library/Caches/arduino/sketches/0B1A6BD34806D1DEC78D93D8773B8ACD/robot_arm.ino.ino.eep
Reading 0 bytes for eeprom from input file robot_arm.ino.ino.eep
in 0 sections of [0, -1]: 0 pages and 0 pad bytes
Writing 0 bytes to eeprom
Writing | ################################################## | 100% 0.00s
0 bytes of eeprom written
Processing -U flash:w:/Users/sam/Library/Caches/arduino/sketches/0B1A6BD34806D1DEC78D93D8773B8ACD/robot_arm.ino.ino.hex:i
Reading 15086 bytes for flash from input file robot_arm.ino.ino.hex
in 1 section [0, 0x3aed]: 59 pages and 18 pad bytes
Preparing flash input for device bootloader
15360 bytes in 2 sections of [0, 0x1fdff]: 60 pages and 0 pad bytes
Writing 15360 bytes to flash
Writing | ################################################## | 100% 1.85s
15360 bytes of flash written
Avrdude done. Thank you.
It looks like my problem has developed into a similar situation as this→ Uploading troubles to 1284p .. its an old post, but i’ll do some reading there and see if there is anything that is still relevant