¿Tienes otra placa Mega para probar? De esa manera podemos decir si es solo este tablero específico. ¿Se está agotando el tiempo? Algo como ...
avrdude: stk500_2_ReceiveMessage(): timeout
Muy bien podría ser un problema de controlador. Dale una oportunidad a esto:
Mac:
1) Vaya a Preferencias del sistema - > Red
2) Si le pide que agregue el Arduino (dispositivo de módem), diga cancelar
3) Elimine el dispositivo Arduino de la lista si está allí
4) ¡Intenta subir un boceto!
PC:
1) Ir al Administrador de dispositivos
2) Encuentre su Arduino en la lista, vaya a sus propiedades y actualice su controlador manualmente, usando el archivo .inf que vino con su IDE Arduino (0021+)
Además, asegúrese de no enviar !!!
a través de la serie en ningún punto de su boceto, ya que se inicia un modo de monitoreo especial integrado en el cargador de arranque.
Fuente
También, eche un vistazo a la guía oficial de solución de problemas de Arduino .