Tabla de Contenidos
Instalación del firmware con PlatformIO IDE
El software de programación:
(2024.01.30 Tenéis descrito todo el proceso en el directo de Jose EA2EYI https://m.twitch.tv/videos/2032502814 y en breve lo subiremos también a Youtube)
Para poder programar el módulo es necesario instalar PlatformIO https://platformio.org/ que es un módulo adicional del software Visual Studio Code. Estos son los pasos a seguir:
- 1. Primero debes instalar el software Visual Studio Code en el siguiente enlace: https://code.visualstudio.com/
- 2. Luego, debes iniciar el software instalado (el icono es como un lazo azul).
- 3. Ahora debemos instalar en el VSCode el módulo PlatformIO.
Para hacer esto, haz clic en este icono a la izquierda de la ventana:
- 4. En la parte superior del panel que se acaba de abrir, en el campo "Buscar extensiones…", escribe "Platformio IDE".
- 5. Uno de los resultados de la búsqueda debe parecerse a esto:

- 6. Haz clic en el botón "Instalar".
La extensión se instalará automáticamente. Esto puede llevar algún tiempo y es posible que debas reiniciar el programa. Si Visual Studio Code solicita reiniciarse, hazlo.
En este punto, debería haber aparecido un nuevo icono en el menú de la izquierda, parecido a un pequeño extraterrestre:
El firmware:
El firmware es el software que se ejecuta en la tarjeta. Gestiona la comunicación entre los diferentes componentes como el módulo LoRa, el chip GPS, la pantalla,etc. Tendrás que descargarlo, configurarlo, compilarlo e instalarlo programarlo en la tarjeta. El firmware de la tarjeta i-Gate y el del tracker pueden ser distintos, pero el procedimiento a seguir es el mismo.
El proceso descrito a continuación es el correspondiente al firmware en concreto que vamos a instalar. Puede variar de un firmware a otro. Es recomendable leer el fichero README.md de cada firmware en github, donde seguramente nos indiquen cómo personalizar la configuración del firmware (indicativo, ssid, mensajes smartbeaconing, etc)
- 1. Abre el navegador y ve la a página del firmware que quiera instalar y que tienes disponible en Firmwares. Por ejemplo: https://github.com/dl9sau/TTGO-T-Beam-LoRa-APRS
- 2. En la página, haz clic en el botón de arriba a la derecha de la lista de archivos marcados como "Code".
- 3. En la ventana que se abre, haz clic en "Descargar ZIP".
- 4. Se guardará un archivo en formato ZIP (archivo) en el ordenador (recuerda dónde lo has guardado). Tienes que descomprimirlo.
- 5. Coloca el contenido (una carpeta llamada "LoRa_APRS_Tracker-master" o parecido dentro de la carpeta donde descomprimiste el archivo .zip") en una carpeta conocida del ordenador (Documentos, Escritorio…).
- 6. En VS Code, haz clic en Archivo → Abrir carpeta (File→Open Folder…). En la ventana que se abre, selecciona la carpeta del paso anterior. Si se abre un cuadro de diálogo que te pregunta si confías en los autores de este archivo, haz clic en Sí. El panel izquierdo debería ser como la captura de pantalla a continuación:
- 7. Después de desempaquetar el archivo LoRa_APRS_Tracker-master o LoRa_APRS_iGate-master, mira si la carpeta todavía tiene una carpeta con el mismo nombre dentro, ésta es la que debes abrir. De hecho, la carpeta que abras debe tener un archivo llamado platformio.ini en su raíz (es decir, no en una subcarpeta).
- 8. En la parte inferior de la ventana, en la banda azul, ahora hay una serie de botones. Haz clic en Predeterminado (Default) (1 en la imagen de abajo). En la parte superior de la ventana, haz clic en "env: ttgo-t-beam-v1" (para el rastreador) o "env: lora_board" (para el iGate). (Esto es en concreto para este ejemplo. Queremos seleccionar la tarjeta, versión y función que vamos a instalar. Otros firmware pueden tener diferentes opciones)
- 9. Luego haz clic en el check (2 en la imagen de abajo) para compilar el código. La consola de la parte inferior de la ventana (3 en la imagen de abajo) mostrará el progreso. Esto puede llevar uno o dos minutos. Se supone que el paso termina con "SUCCESS" escrito en verde. Si aparece "FAILED", es posible que deba esperar un momento antes de volver a intentarlo o reiniciar el software. Si los archivos de código fuente no se han modificado, se espera que el paso se complete correctamente. De lo contrario, elimine toda la carpeta y comience de nuevo en el paso 4.
- 10. A continuación, hay que configurar el módulo. Para esto, en el icono raíz (arriba a la izquierda), abre " datos " y luego {} is-cfg.json. El contenido de los archivos de configuración se describe más adelante en este documento.
- 11. Conecta el módulo mediante un cable micro-USB tipo B. Programa el módulo haciendo clic en la flecha (4 en la imagen de abajo). Nuevamente, el paso debe terminar con "ÉXITO". De lo contrario, verifica que el cable USB esté correctamente conectado. Si el error persiste, prueba con otro cable.
NOTA: Normalmente es mejor conectar la tarjeta ANTES de empezar el proceso. Así podremos conocer qué puerto COM le ha asignado Windows.
OTRA NOTA : Aunque el VSCode en teoria debe reconocer en qué puerto COM está conectada la tarjeta, podemos forzar la configuración de la siguiente forma:
En el fichero platformio.ini hay una línea con una sección titulada [env]
Justo debajo de esta línea, insertaremos una con el texto:
upload_port = COM14 (obviamente el 14 será el puerto COM que el sistema haya asignado a la tarjeta, podemos encontrarlo usando en Windows el Panel de Control → Hardware y Sonido → Administrador de dispositivos y buscar en el listado (hacia la parte de abajo) la lista de puertos COM. Será el que aparecezca nuevo cuando conectemos la tarjeta.
- 12. Luego haz clic en el logotipo de PlatformIO (la cabeza alienígena). En la lista a la derecha del icono, haga clic en "Cargar imagen del sistema de archivos" (Upload Filesystem Image)
- 13. Nuevamente, se supone que este paso termina con "ÉXITO". Si es así, el módulo debe estar ya programado y la pantalla OLED ahora debe mostrar su estado.
La configuración:
Para configurar el módulo con tus parámetros, deberás modificar un archivo de texto ubicado en la carpeta "data". Este archivo tiene la extensión ".json". Las opciones disponibles se enumeran por tipo de módulo con una breve descripción y valores recomendados. Las opciones que deben cambiarse para configurar un módulo están escritas en rojo en este documento. Los otros se utilizan para usos avanzados, incluso exóticos. Los archivos están en la carpeta "data", en la carpeta principal del firmware.
El fichero is-cfg.json es, otra vez, propio de este ejemplo. El fichero que haya que modificar para introducir nuestros propios valores (INDICATIVO, SSID, texto de la baliza, wifi…) puede llamarse de otra forma: config.cfg, preferences.cfg, según el firmware que vayamos a cargar en la tarjeta, pero suele estar siempre en la carpeta "data".
