"Avrdude: stk500_getsync (): no sincronizado: resp = 0x00", también conocido como Some Dude llamado Avr, no me deja cargar mi programa

98

Hice un programa increíble el otro día, y quería subirlo a mi Arduino. Después de hacer clic en el botón de carga, un tipo malo llamado avr vino y me detuvo, diciendo:

avrdude: stk500_getsync (): no sincronizado: resp = 0x00

Todo lo que quiero hacer es cargar mi programa, pero avr no me deja. Incluso es ininteligible, entonces, ¿alguien puede decirme qué diablos está tratando de decir y cómo deshacerse de él?


es decir:

Cada vez que intento cargar un programa en mi Arduino, aparece este mensaje de error:

avrdude: stk500_getsync (): no sincronizado: resp = 0x00

¿Qué significa esto y cómo puedo solucionarlo?

El chico con el sombrero
fuente
44
Mensaje de error bastante común, no siempre trivial de resolver: electronics.stackexchange.com/…
jippie
12
Buen título! Yo mismo tuve ese error ...
TheDoctor
66
+1 por el título: D ... ¡Realmente odio a este tipo tanto como tú!
David Refoua
Intente instalar el controlador (cp2102) para el arduino. Eso me ayudó. Gracias por las respuestas anteriores ppl :-)
Esta publicación de junio de 2018 lo resolvió para mí (primera respuesta): arduino.stackexchange.com/questions/51729/…
Michael Sims

Respuestas:

62

Esto es causado por un error de conexión genérico entre su computadora y el Arduino, y puede ser el resultado de muchos problemas específicos diferentes.

Aquí hay algunas cosas fáciles que a menudo pueden solucionar este error:

  • Desconecte y vuelva a conectar el cable USB.
  • Presione el botón de reinicio en el tablero.
  • Reinicie el IDE de Arduino.
  • Asegúrese de seleccionar la placa correcta Tools ► Board ►, por ejemplo, si está utilizando Duemilanove 328, selecciónela en lugar de Duemilanove 128. La placa debe decir qué versión tiene el microchip.
  • Asegúrese de haber seleccionado el puerto correcto Tools ► Serial Port ►. Una forma de averiguar en qué puerto está es siguiendo estos pasos:
    1. Desconecte el cable USB.
    2. Vaya Tools ► Serial Port ►y vea qué puertos están listados (por ejemplo, COM4 COM5 COM14).
    3. Vuelva a conectar el cable USB.
    4. Regrese a Tools ► Serial Port ►, y vea qué puerto apareció que no estaba allí antes.
  • Asegúrese de que los pines digitales 0 y 1 no tengan partes conectadas, incluidos los protectores.

Si ninguno de esos funciona, querrá tratar de aislar el problema reemplazando las cosas: pruebe una computadora diferente en el mismo arduino, pruebe un arduino diferente en la misma computadora e intente usar un cable USB diferente.

Si el problema es con la computadora:

  • Vuelva a verificar todos los problemas relacionados con la computadora en la lista de "soluciones fáciles" de arriba.
  • Vuelva a instalar el IDE.
  • Vuelva a instalar los controladores.

Si el problema es con el Arduino:

  • Vuelva a verificar todos los problemas relacionados con el tablero en la lista de "soluciones fáciles" de arriba.
  • Asegúrese de que el microcontrolador esté asentado correctamente.
  • Es posible que deba grabar el gestor de arranque .
  • Reemplace el microcontrolador si tiene otro a mano cerca.
  • Es posible que haya bloqueado su Arduino. Lo siento :(
El chico con el sombrero
fuente
3
Hay otras causas posibles. Podría haber dañado el ATmega, podría haber dañado el gestor de arranque del ATmega, podría tener problemas de alimentación o una miríada de otras posibilidades. El not in sync: resp=0x00es realmente un mensaje genérico "ATmega no responde". Cualquier cosa que pueda causar que el ATmega no responda puede causarlo.
Connor Wolf
Entonces, ¿no puedo tener nada en 0 o 1?
Tim
2
@Tim Puede conectar cosas a esos pines, pero debe desconectarlos si desea comunicarse con su Arduino a través del cable USB.
The Guy with The Hat
Recibí este error en mi primer Duemillanove hace años. Era un chip UART muerto (o conexión de USB a chip UART). Muy frustrante. Compré un programador AVR y quemé el gestor de arranque. Compró otra CPU con el gestor de arranque precargado. No fue hasta que el proveedor envió un reemplazo que pude unirme al mundo de los aficionados de Arduino (y ahora tengo dos CPU de repuesto).
linhartr22
"Desconectar y volver a conectar el cable USB" funciona para mí
Grace Shao
20

Otra solución:

Cambiar Tools->Processor->Atmega 328Pa Atmega 328P (Old Bootloader). Recuerde que la Processoropción solo está disponible cuando selecciona algunas Juntas específicas en Tools>Board.

Esto funcionó para mi Arduino Nano con CH340, usando Arduino IDE 1.8.5 en Linux Ubuntu 17.10. Además, esto probablemente sucederá si usa IDE 1.8.9 o más reciente y obtiene un Nano viejo o clonado.

aguadopd
fuente
3
Esa fue la solución! El nuevo gestor de arranque utiliza el doble de la velocidad en baudios (115200 en lugar de 57600).
Suuuehgi
1
Su respuesta soluciona mi problema. ¡Gracias!
Vladyslav Savchenko
12

Desafortunadamente, también puede significar que quemó su microcontrolador. ¿Estaba haciendo algo peligroso justo antes de intentar cargar un nuevo boceto? ¿El microcontrolador sigue funcionando, con su boceto previamente cargado?

Ricardo
fuente
10

Si ninguno de los pasos anteriores funciona, intente reinstalar Avrdude y el compilador avr-gcc. Tuve que hacer esto después de que mi Mega comenzó a sufrir de esto.

Si instaló Avrdude y avr-gcc por separado, simplemente desinstálelos. de lo contrario, es posible que deba reinstalar el IDE de Arduino. Estos pasos dependerán de su sistema operativo.

TheDoctor
fuente
Es muy poco probable que el problema se deba a la cadena de herramientas que se está utilizando. Esto es demasiado extremo, en mi opinión.
asheeshr
3
Es la única forma en que podría resolver mi problema
TheDoctor
¿De qué proceso de instalación estás hablando? La herramienta de edición arduino simplemente está descomprimida. No hay proceso de instalación.
Connor Wolf
9

He tenido el mismo mensaje. Cada vez que se ha resuelto seleccionando el puerto correcto, es decir, USB en el menú Herramientas y luego Puertos. Es un paso simple pero siempre lo olvido. Desenchufaré el Arduino para detener el programa actual, lo enchufaré nuevamente a mi computadora para cargar el nuevo programa y obtener el error, el pánico, la maldición, y solo entonces, recuerda.

Gabe Ruiz
fuente
1
Creo que esta es la solución más común.
chicas
9

En mi caso, no había conectado el pin RTS del chip FTDI a un condensador que fue al pin RST del Arduino Pro Mini. Una vez que instalé esta conexión, ya no recibí el error y pude cargar el código.

Nick Gammon explica esto en su foro . He agregado una imagen de dónde / cómo se debe colocar el condensador. ingrese la descripción de la imagen aquí

tr4nc3
fuente
+1 para la buena imagen de la conexión del programador usb directamente a un chip atmega.
raddevus
También tuve algunas malas conexiones en mi tablero, desconecté todo y subí un boceto básico y funcionó. Ahora ve qué cable no está en el lugar correcto
Seraf
5

Tuve exactamente el mismo problema. Intenté instalar el IDE en otra computadora portátil y cargué el programa desde esa computadora portátil. Problema resuelto. Luego volví a mi computadora portátil, desinstalé el IDE y lo reinstalé ... comenzó a funcionar.

Sin embargo, no estaba satisfecho porque no pude encontrar la fuente del problema ... así que intenté ejecutar todo de nuevo de la misma manera ... Encontré el problema pero no estoy seguro de si esa puede ser la causa real del problema. .

En mi proyecto, necesitaba llevar a cabo una comunicación en serie entre arduino y MATLAB (GUI). Para ver / verificar la salida (tipo) de datos en serie de MATLAB (GUI), utilicé HYPERTERMINAL y también VIRTUAL SERIAL PORT EMULATOR. Noté que cada vez que cuando el hiperterminal se está ejecutando o VSPE se está ejecutando mientras mi monitor serial está encendido, arruina la función de carga del programa. No estoy seguro si es por el VSPE o el HIPERTERMINAL, pero reinstalar el IDE funcionó para mí.

Hrdip
fuente
2
Una de las líneas de control en serie, creo que es DTR, se usa para restablecer el Arduino. Cuando intenta programar su Arduino, su programa de terminal podría estar interfiriendo.
linhartr22
Esto funcionó para mí solo cuando también eliminé mi carpeta de la Biblioteca Arduino, que contiene todas las configuraciones y libs adicionales.
Jethro
3

Para las personas que usan Linux Mint, descubrí que al seleccionar el puerto "TTY SO" en lugar del que está etiquetado como "Arduino" funcionaría (no puedo decirte exactamente porque no tengo esa computadora frente a mí en este momento) .

Luego, la próxima vez que usé el Arduino, nuevamente recibí el mismo mensaje, así que volví al puerto "Arduino" y ha funcionado de esa manera desde entonces.

No estoy tan bien informado técnicamente como el resto de ustedes, así que no tengo idea de por qué esto funciona o cuál fue el problema, pero funcionó, que es lo único que me importa. Tal vez esto sea útil para alguien.

Mikech
fuente
3

Desinstalé el IDE y los controladores, etc., lo instalé todo nuevamente, luego ejecuté el IDE Arduino como administrador y configuré la compatibilidad con Windows 7 (actualmente estoy usando 10).

También cambié el programador a AVR ISP (no creo que esto importe, pero lo cambié de todos modos).

Todo está funcionando nuevamente ... con suerte, esto también puede ayudar a alguien más.

daysley
fuente
2

Uno inusual, pero he estado intercambiando mucho los microcontroladores y recibí este error cuando uno no estaba sentado correctamente. Pude quemar algunas veces, pero supongo que se deslizó hacia atrás, un pequeño empujón en la parte posterior del ATMega328 lo arregló!

miedo
fuente
1

También existe la posibilidad de que el controlador se coloque de manera incorrecta en el zócalo del Arduino. Esto puede ser peligroso para el controlador (que puede ser eliminado) pero, en mi caso, solo dio el error de falta de sincronización, impidiéndome cargar el código.

Así que solo verifique si la muesca en el IC está en la dirección correcta (puede hacer una verificación cruzada con imágenes de la placa en línea). La muesca en el controlador del Uno debe apuntar hacia el borde del tablero.

Arijit
fuente
1

También tuve este error. Era la primera vez que usaba una nueva placa Arduino Nano después de soldar los encabezados. Simplemente tirando el Blink Sketch, nada estaba conectado al tablero.

Encontré un poco de soldadura entre los pines GROUND y RESET. Lo quité y luego pude subir bien.

Supongo que esto podría suceder si tuviera el mismo cortocircuito en un circuito en alguna parte.

Wilkie
fuente
1

Acabo de tener este mismo error con un nuevo Mini Pro. Dado que el programa de parpadeo predeterminado que viene precargado con la mayoría de Arduino se está ejecutando, sé que la unidad probablemente esté bien.

Así que inspeccioné los encabezados que acababa de soldar una vez más y descubrí que no había suficiente soldadura en los pines TX0. Después de volver a soldar todas las obras.

tst
fuente
1

Después de un montón de desconexión, comprobación de puertos, reinicio de IDE, etc. El problema que pareció marcar la diferencia al solucionar este error con Arduino Mega 2560 fue desinstalar el controlador arduino USB de Windows y luego reinstalarlo usando el controlador aquí y seleccionarlo manualmente de la lista> puertos com> arduino http://drivers.softpedia.com/get/Other-DRIVERS-TOOLS/Others/Arduino-Mega-2560-USB-Driver-1110-for-Windows-7-64-bit.shtml Puedo tener Lo probé en mi uno y luego volví al mega, así que hay una pequeña posibilidad de hablar con el AVRDUDE hecho feliz pero poco probable.

Hamish_Fernsby
fuente
1

Cuando tengo un problema al subir a mis tableros, subo un programa diferente como el ejemplo de parpadeo. Esto parece restablecer algo y luego puedo cargar mi propio programa (que es bastante grande).

Puede valer la pena intentar esto para ver si funciona en su caso, aunque no tengo idea de por qué funciona.

Jetro
fuente
¿Qué placa y gestor de arranque?
Juraj
Arduino Nano, ATMega328P (no de terceros). Versión de hardware: 2, Versión de firmware: 1.16, la firma del dispositivo es 0x1e950f No he comprobado el gestor de arranque, pero se anuncian como el "gestor de arranque tradicional"
Jethro
así que su respuesta es específica para el viejo cargador de arranque Nano
Juraj
¡Gracias! Veré los cargadores de arranque e intentaré actualizarlo. ¿Tienes alguna información sobre este error?
Jethro
1

Tuve un problema similar con mi placa Uno

avrdude: stk500_recv(): programmer is not responding
avrdude: stk500_getsync() attempt 1 of 10: not in sync: resp=0x90

Probé muchos métodos

  • Presione restablecer antes de enviar paquetes
  • diferentes versiones de IDE
  • Cambiar cable
  • Cambiar el controlador en sí
  • Prueba de bucle invertido

pero todo lo anterior falló.

Yo uso Ubuntu 16.04.4 LTS 4.15.0-33-generic(mientras escribo este comentario). El módulo CDC ACM no se cargó, por lo tanto, no /dev/ttyACM0se creó ningún dispositivo para seleccionar enArduino IDE -> Tools -> Port

Por lo tanto, obtenga el nombre del módulo y cárguelo

$ lsusb 
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 005: ID 2341:0043 Arduino SA Uno R3 (CDC ACM)
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub


$ sudo modprobe cdc-acm

El comando anterior insertará el módulo requerido. Ahora puedo seleccionar el puerto correcto y cargar el código

De varias soluciones esto funcionó para mí, espero que esto también ayude a alguien.

New Chethan
fuente
0

Lo resolví actualizando los tableros (en "administrador del tablero")

pablo
fuente
¿Tienes un Arduino Nano?
por1234
0

Hoy enfrenté el mismo problema para algunos códigos y lo resolví de la siguiente manera:

1- Primero ejecuté un código básico de parpadeo de LED. Dio el mismo error. Confirma que el error está en la carga y no tiene nada que ver con la compilación. También verifiqué que mi código estaba compilando bien.

2- Tomé otra placa, pero estaba funcionando bien en esta PC. Eso significa que la computadora y el cable USB están bien.

3- Conecté la placa defectuosa a otra PC y, sorprendentemente, no hubo tal error al cargar. Eso me dio una pista sobre problemas en el controlador en la primera PC.

4- Así que desinstalé el controlador y lo reinstalé en la primera PC descargándolo desde aquí

(asegúrese de que mientras instala el controlador desde este enlace, mantenga su placa conectada a la PC)

Funcionó bien ahora :-)

gpuguy
fuente
0

Tuve este error en mi portátil Linux Mint 17.3 con Arduino Nano avrdude: stk500_getsync (): no sincronizado: resp = 0x00

Resuelto:

  • eliminó todo lo que tenía 'arduino' o 'avr' en su nombre
  • directorios eliminados .arduino y .arduino15 (Tenga en cuenta el punto en el nombre)
  • eliminado la versión 1.8.7 con la desinstalación del paquete
  • apt-get install arduino (ver 1.1.0)
  • probado con un simple boceto (todo bien)
  • instalado ver 1.8.7 con la instalación del paquete
  • compilado
  • ATmega328p seleccionado (antiguo gestor de arranque) para procesador, Arduino Nano para tarjeta y / dev / ttyUSB0 para puerto => ¡FUNCIONA!

Parece que el 'viejo gestor de arranque' fue el truco en este caso. Ahora tengo ambos ver 1.1.0 y 1.8.7, a quién le importa.

Mistofeles
fuente
primero debes leer la respuesta de aguadopd
Juraj