Demo de LoRaWAN usando The Things Network, un gateway LoRaWAN y el kit de desarrollo de RAKwireless
LoRaWAN es un protocolo de comunicación de larga distancia y baja potencia ideal para aplicaciones IoT. Utiliza la tecnología LoRa (Long Range) y permite la conexión de dispositivos a través de redes de largo alcance sin consumir demasiada energía. Los dispositivos conectados envían sus datos a través de una red de servidores, conocidos como LoRaWAN Network Servers (LNS), que gestionan las comunicaciones.
The Things Network (TTN) es una plataforma de LoRaWAN de código abierto que permite a los usuarios desplegar, gestionar y monitorizar dispositivos IoT en una red LoRaWAN. En este proyecto, utilizaremos TTN para gestionar la comunicación entre nuestro gateway y los dispositivos finales (enddevices).
···
Creación de una Cuenta en TheThings Network
- Registro en TTN: Para empezar, crea una cuenta en The Things Network. Sigue los pasos del registro y confirma tu cuenta a través de correo electrónico.
fig01. Registro en TheThings Network
···
Configuración del Gateway RAK7268CV2
- Encendido y Conexión: Enciende el RAK7268CV2 y conéctalo a router de tu red local a través de un cable Ethernet. Accede al gateway mediante su punto de acceso Wi-Fi predeterminado (SSID: «RAK7268»).
- Cambiar Credenciales: Al acceder a la interfaz web del gateway, cambia las credenciales predeterminadas por razones de seguridad.
- Configuración de Red: Ve a la sección de configuración de red para asignar una IP fija al gateway. En nuestro caso, configuramos el acceso por Ethernet (WAN) para poder gestionar el gateway y tener acceso a Internet desde nuestro PC al mismo tiempo.
- Configuración de la Región y el Servidor: Cambia la región a EU868 y ajusta la dirección del servidor a eu1.cloud.thethings.network (dirección por defecto dada por TTN).
fig02. Selección de región y servidor
···
Conexión del Gateway a The Things Network
- Añadir un Nuevo Gateway en TTN:
-
- En TTN, navega a la consola y selecciona «Gateways».
- Crea un nuevo gateway usando el EUI del RAK7268CV2.
- Asegúrate de seleccionar la misma región (EU868) y proporciona un ID único y un nombre al gateway.
Con esto, tu gateway debería aparecer como conectado en la consola de TTN.
fig03. Introducción del EUI del gateway
fig04. Introducción de ID y nombre
fig05. Comprobación que el gateway está conectado
···
Actualización del Firmware del Kit de Desarrollo RAK3172
- Actualización a RUI3: Actualiza el firmware del kit de desarrollo a RUI3 utilizando STM32CubeProgrammer. Para poner el kit en modo bootloader, es necesario cortocircuitar los pines Boot0 y VDD.
- Instrucciones aquí: https://docs.rakwireless.com/Knowledge-Hub/Learn/STM32Cube-Programmer-Guide/
- Firmware: https://downloads.rakwireless.com/LoRa/RAK3172/Firmware/RAK3172_Latest_Firmware.zip
fig06. Actualización del firmware del kit de desarrollo
···
Configuración del IDE de Arduino
- Añadir RAKWireless al Board Manager: Abre el IDE de Arduino y ve a «Preferencias». Añade el siguiente enlace al gestor de tarjetas y luego, instala las tarjetas de RAKWireless desde el «Board Manager»:
- Instalar Librerías para Sensores: Usando el gestor de librerías del IDE instala las siguientes librerías necesarias para los módulos Wisblock:
- SparkFun LIS3DH para el módulo de acelerómetro (RAK1904).
- SparkFun SHTC3 para el módulo de temperatura/humedad (RAK1901).
- Test: Cargamos uno de los ejemplos incluidos en el paquete de tarjetas. En nuestro caso “Arduino_Led_Breathing”. Con esto comprobamos que el compilador funciona y la tarjeta responde.
···
Creación de una Aplicación y Registro del Dispositivo Final en TTN
- Crear una Aplicación: En TTN, crea una nueva aplicación dando un ID único, nombre y una breve descripción.
fig07. Introducción de datos para crear una aplicación
-
- Añadir un EndDevice: Dentro de la aplicación, registra un nuevo EndDevice (dispositivo final). Introduce los datos manualmente:
- Selecciona el mismo plan de frecuencias y versión de LoRaWAN que el gateway.
- El JoinEUI puede ser cualquier valor; en este caso, lo configuramos en «0x0000000000000000».
- Genera el DevEUI y AppKey automáticamente.
- Asigna un ID único al dispositivo.
- Con esto, el EndDevice quedará registrado en la red.
fig08. Registro manual del EndDevice
fig09. Introducción de los datos del EndDevice
···
Modificación del Código de Demo
- Configuración del Código: En el archivo main.h del proyecto demo, modifica las siguientes variables con los valores generados en TTN:
- node_device_eui
- node_app_eui
- node_app_key
- Compilación y Carga: Compila y carga el programa modificado en el kit de desarrollo.
···
Verificación de la Comunicación en TTN
- Visualización de Mensajes: En la consola de TTN, ve a la sección «Live Data» para confirmar que los mensajes del EndDevice están llegando correctamente.
- Formato del Payload: En la sección «PayloadFormatters» del EndDevice, selecciona CayenneLPP como el formato de decodificación de los mensajes. CayenneLPP es un formato de payload simple y eficiente para sensores IoT, que facilita la visualización de los datos de los sensores.
fig10. Comprobación del formato del payload
···
Más información sobre LoRa y RAKwireless
RAKwireless es una empresa dedicada al desarrollo y fabricación de soluciones IoT, cuyo objetivo es crear soluciones fáciles de implementar y productos IoT modulares que sean accesibles para todos.
RAKwireless dedica parte de su catálogo a productos LoRa, como gateways indoor y outdoor, módulos inalámbricos, o módulos miniPCIe entre otros, ya que esta tecnología permite la creación de redes IoT eficaces con unos costes bajos y un alcance muy amplio. Sin duda, es una tecnología que ofrece una solución eficaz a problemas contemporáneos en distintos sectores.
Venco es proveedor de soluciones electrónicas desde hace 40 años. Pregúntanos sin compromiso sobre cualquiera de los productos de RAKwireless y te asesoraremos en la mejor solución para tu aplicación o proyecto.
Otras vías de contacto:
- Página de RAKwireless en Venco: https://www.vencoel.com/marcas/rakwireless/
- Home de Venco: https://www.vencoel.com/
- Teléfono: (+34) 93 263 33 54
···
Artículos Relacionados
Hemos publicado varios artículos en nuestra web relacionados con LoRa. A continuación os dejamos un listado de algunos de ellos: