Usando el gestor de bibliotecas de PlatformIO

Esta publicación es una continuación de un post anterior, si no lo has leído puedes verlo aquí: Programando Altair y otras placas Arduino con PlatformIO.

Otro de los puntos fuertes de PlatformIO es el gestor de bibliotecas, que permite automatizar la instalación de bibliotecas externas a tu proyecto desde un respositorio bastante completo, en él ya se encuentran muchas de las bibliotecas populares para Arduino, entre otras.

Puedes acceder al gestor de bibliotecas desde la barra de menú en PlatformIO > Library Manager, ahí encontrarás instrucciones de cómo utilizarlo con tu proyecto.

Las instrucciones mencionadas anteriormente hablan del uso avanzado del gestor de bibliotecas, listando cada biblioteca requerida por el proyecto en el archivo platformio.ini, sin embargo en este post me gustaría ilustrar la forma más básica de utilizar el gestor, que es simplemente instalando bibliotecas sin agregarlas al archivo .ini, esto es útil cuando estas empezando a experimentar con bibliotecas antes de formalizar tu proyecto.

Para utilizar el gestor de bibliotecas necesitamos hacerlo por medio de la línea de comandos, esto lo hacemos presionando el ícono te la terminal en la barra lateral izquierda del IDE, o desde la barra de menú en PlatformIO > Terminal > Toggle.

Desde ahí podemos utilizar la interfaz de línea de comandos de PlatformIO, pio.

Empecemos buscando una biblioteca, "SimpleTimer" (una biblioteca para ejecutar funciones periódicamente). Introduce lo siguiente en la terminal:

pio lib search simpletimer

Podemos ver que encontró una biblioteca, para instalarla necesitamos si número de "ID" (419). Vamos a instalarla introduciendo lo siguiente:

pio lib install 419

Con esto ya instalamos la biblioteca y la podemos utilizar en nuestro programa incluyéndola en nuestro main.ino según dice su documentación:

#include <SimpleTimer.h>

Post anterior: Estructura de un proyecto de PlatformIO

Rodrigo Méndez

Rodrigo Méndez

I'm an Embedded Systems developer, interested in web technologies and the Internet of Things. Currently working at makerlab.mx

Read More