Buenas,
hoy es uno de esos días en los que lo peor del día es lo que sale de la punta de mis dedos. En este caso, estaba intentando crear un demo / deploy script de Arduino (en Avanade organizaremos un Coding Dojo por estos días) y me di la cabeza en la pared al momento de intentar agregar librerías externas en un programa de Arduino.
En realidad, y como siempre, estaba siguiendo mi instinto a mano para agregar librerías cuando el proceso es mucho más simple. Vamos por parte para comprender como funciona el IDE y el compilador de Arduino.
Si has instalado Arduino en el path por defecto, veras que en el folder [C:\Program Files (x86)\Arduino] hay una serie de folders con samples, libraries, etc
Cuando te descargas una librería externa para un sensor, una de las opciones para poder utilizarla es copiarla dentro de la carpeta libraries. Dentro de la misma podemos ver las librerias que trae por defecto el IDE para trabajar con algunos sensores y actores.
Si entramos dentro de uno de estos folders veremos que en los mismos tenemos:
- Un folder con ejemplos
- Los archivos cpp y h para poder usar los devices en nuestros programas
- un archivo keywords.txt, que creo que se utiliza para el coloreado en el IDE de Arduino
Pues bien, si decides trabajar con un sensor que no viene de fábrica, el mismo te suele dar un ZIP con el mismo contenido dentro. Y claro, lo primero que uno que ha trabajado con C++ tiende a hacer es a copiar esto dentro del directorio de instalación de Arduino.
ERROR !!! BIG MISTAKE !!!
El fabuloso IDE de Arduino tiene una opción para importar un ZIP que hace un trabajo diferente a lo que he explicado. Desde el menú “Sketch // Import Library // Add Library” seleccionamos un ZIP y luego vemos que el mismo ya es parte del IDE.
Sin embargo, no está copiado en el folder [C:\Program Files (x86)\Arduino]. Lo que hace el cabrón del IDE es descomprimir los ZIPs agregar el contenido de los mismos en tu carpeta [My Documents // Arduino // Libraries]
De esta forma tambén tienes acceso a estas librerias, sin que las mismas estén en el directorio de instalación de Arduino (Ricard me soltó este tip, sino estaba montando una del mono para poder tener esto organizado a mi manera)
Saludos @ La Finca
El Bruno
Leave a comment