New Mega2560 board " avrdude: stk500v2_ReceiveMessage(): timeout "

the last couple of weeks, i struggled with this problem as well, now i found a solution, maybe it can help you

After programming in my Adruino Mega 2560 (r3) + Ethernetshield (r3) (osx) i couldn't upload anything to my board and received this error:
avrdude: stk500v2_ReceiveMessage(): timeout

Loopbacktest: works

Removing the ethernetshield and all wires didnt change a thing.

Removing and reinserting the usb cable, after which i CAN upload the 'blink example' !
'Succes' so i tought!

When trying to upload my sketch : avrdude: stk500v2_ReceiveMessage(): timeout
Once this happens, nothing (i.e.'blink') is able to be uploaded again (until I remove and reinsert the usb cable)

In my sketch there is a line : client.println("FORWARD!!!");
if i remove one exclamation mark, the problem is solved ! ...