Hay un poco de vudú en las respuestas por aquí entre buenas ideas. Tratemos de ser un poco más real acerca de lo que está sucediendo y resumamos las cosas buenas para verificar:
Básicamente, cuando eso sucede, es una buena idea habilitar el modo detallado para AVRDUDE , para tener una mejor idea de lo que está sucediendo. Para hacerlo, solo necesita ir a las preferencias y marcar la casilla de modo detallado. También es una buena idea alejarse del Arduino IDE y lanzar una consola para estar más cómodo al leer la salida de AVRDUDE, que podrá hacer clic en el upload
botón.
Lo importante aquí es poner 3 o 4 -v
a la llamada de comando. Así es como se ven dichos comandos AVRDUDE, con parámetros inventados, ya que dependen totalmente de cómo se haya instalado el Arduino:
avrdude -v -v -v -v -C /path/to/avrdude.conf -patmega328 -P/dev/usbport -U flash:w:/path/to/firmware.hex
Una buena manera de obtener la línea de comando correcta para usar es copiarla de la salida detallada del registro de salida Arduino IDE cuando se ha habilitado la verbosidad.
Cuando obtienes avrdude: stk500_recv(): programmer is not responding
, básicamente significa que algo malo está sucediendo, antes de que comience a parpadear.
Básicamente, debe verificar (desde hardware hasta software, de bajo nivel a alto nivel):
- si el cable y / o los conectores no tienen microcortes;
- Si no hay puntos de soldadura en cortocircuito (es decir, tocar algo metálico alrededor), eso significa:
- si no hay un cortocircuito en la PCB entre
Rx
y Tx
(generalmente pines 1
y 0
);
- si no hay contacto con un elemento metálico debajo del tablero, o pequeños pedazos entre las patas de un componente (como el FTDI, el chip ATmega o cualquier otro);
- si el chip ATmega no está sin alimentación (GND / V CC atajo o corte o la entrada V CC está muerta ...);
- si los pines
1
y 0
del Arduino no están siendo utilizados por algún escudo o diseño personalizado ( /!\
no se aplica al Leonardo ya que tiene un manejo USB independiente);
- si el convertidor de USB a UART no tiene un problema (
FTDI
en Duemilanove anterior o ATmega16U2 en Arduino Unos más nuevo);
- si el chip ATmega328 está frito o mal instalado;
- si el gestor de arranque se ha sobrescrito o está fallando;
- si se aplica la velocidad de transmisión correcta para ingresar al gestor de arranque;
- si la configuración correcta está establecida para el microcontrolador y placa objetivo;
Por lo general, avrdude -v -v -v -v
puede ayudar mucho a encontrar en qué etapa está fallando. Si no puede establecer una conexión USB (falla de cable, USB / UART, PCB ...), o es un problema del gestor de arranque.
Actualización : intenté girar el ATmega a bordo y ajustarlo en la otra dirección. Ahora, no encuentro problemas para cargar, pero no sucede nada después. El LED incorporado tampoco parece estar parpadeando.
Me temo que si invirtió la posición del ATmega y luego no funciona, el hecho de que haya colocado la fuente de alimentación en los pines digitales puede haber quemado su chip.