Solución: avrdude: ser_open(): can’t open device en Arduino

En este artículo voy a explicar como solucionar un error común en Arduino:

Antecedentes

Después de mucho tiempo sin usar Arduino he cogido mis dos plaquitas (la original y la Elegoo) para hacer unas actividades con mi hija. Las conecto, voy a meter el blink para ver que todo está bien y cuando voy a enviarlo a la placa me devuelve el tan conocido error.

Tanto en mi PC como mi portátil tengo instalado Ubuntu 18.04.

Solución

Empiezo siguiendo el link que me sugieren. Y sigo los pasos

En herramientas / placa está seleccionada Arduino/Genuino Uno

En herramientas / serial port /dev/ttyACM0

problema ide arduino avrdude

y como sugiere la documentación por si hay problemas con los Drivers y permisos abro la terminal y ejecuto:

donde yourUserName es tu nombre de usuario

Ahora cierro sesión y vuelvo a loggearme. Y por si acaso reinicio el PC / portátil.

Sigue sin funcionarme y la documentación de Arduino ya no ayuda más. Así que he seguido buscando, en foros y blogs. Si en este punto no te funciona y estás como yo. Sigue los siguientes pasos

ls /dev/ttyACM0 devuelve /dev/ttyACM0
ls -l /dev/ttyACM0 devuelve crw-rw—- 1 root dialout 166, 0 nov 26 16:41 /dev/ttyACM

Con esto confirmamos que el puerto existe

Vamos a dar permisos y a comprobar si nuestro usuario tiene los permisos necesarios.

Y veo que el usuario está dentro del grupo dialout así que esta parte la tenemos bien.

A mí lo que me ha funcionado ha sido reinstalar Arduino.

Si compruebas

Y no te devuelve nada reinstalando Arduino deberá solucionarse.

Y si no has conseguido solucionar el problema déjame un comentario e intentaré ayudarte.

Herramienta para solucionar el problema AVRDUDE

Existe un script que han preparado para solucionar este problema. Puedes probar a ver si te ayuda. Yo no he llegado a utilizarlo pero lo dejo porque creo que puede ser un recurso útil.

AVRDUDE

Dejo un poco de información para entender mejor qué es AVRDUDE. El nombre viene de AVRDUDE – AVR Downloader/UploaDEr

AVRDUDE es una utilidad para descargar / cargar / manipular los contenidos ROM y EEPROM de los microcontroladores AVR utilizando la técnica de programación en el sistema (ISP).

https://www.nongnu.org/avrdude/

AVRDUDE fue iniciado por Brian S. Dean como un proyecto privado como programador para la serie de microcontroladores Atmel AVR.

Puedes encontrar el software y mucha más información en la web del proyecto.

Deja un comentario