Can't Upload Most Sketches to Bluno Mega 2560

I cannot upload most sketches to any Bluno 2560 boards that I have (I have several). I can upload simple sketches like “Blink” and other example sketches, but anything much more complex hangs on upload 99.99% of the time. It's always “avrdude: stk500v2_ReceiveMessage(): timeout” somewhere in the upload process, sometimes right in the beginning, sometimes towards the end. I have verbose upload messages on and it's a random number of # before it stops responding.
The firmware is version 1.97. I know the bootloader is still there because I can upload “Blink” every single time without a problem.
I have tried things online that I've found, like pressing the reset button at various points before uploading, using only USB 2.0 ports, using different USB ports, and various cables. This is becoming incredibly frustrating.
Having trouble with firmware uploads? I had a similar issue once! Turns out, my board needed a specific driver version (check the manufacturer's website). Did you update yours recently?

You can try using ICSP (In-Circuit Serial Programming) to upload your code. This method involves using a programmer to directly write code to the microcontroller, bypassing some factors that might be causing upload issues.
