Guia completa per configurar una porta d'enllaƧ LoRaWAN

  • La porta d'enllaƧ LoRaWAN actua com a pont entre nodes LoRa i servidors de xarxa, i requereix una configuració acurada de maquinari, xarxa IP i parĆ metres de rĆ dio.
  • Fitxers com global_config.json i local_config.json defineixen freqüències, GPS, gateway_ID i servidors, i es poden gestionar fins i tot de forma remota mitjanƧant repositoris GitHub.
  • La integració amb plataformes com TTN i AWS IoT Core per a LoRaWAN exigeix ​​registrar el gateway, aplicacions i dispositius finals, alineant IDs, claus i plans de freqüència.
  • Un monitoratge continu mitjanƧant consoles web i APIs permet detectar errors de freqüència, errors de connexió i validar que els uplinks es reben i processen correctament.

Configuració de porta d'enllaç LoRaWAN

Muntar i deixar fina la configuració d'una porta d'enllaƧ LoRaWAN pot espantar una mica la primera vegada: parĆ metres de rĆ dio, xarxes, servidors, certificats, IDs estranys… però en realitat, si entens bĆ© cada peƧa, Ć©s un procĆ©s forƧa lògic. En aquest article anirem des del maquinari fins al servidor LoRaWAN, passant per TTN i AWS IoT Core, perquĆØ tinguis una visió completa i prĆ ctica.

Ens recolzarem en exemples reals com gateways RAK (RAK7289, RAK831), xarxes públiques com The Things Network (TTN), solucions al núvol com AWS IoT Core per a LoRaWAN i configuracions de fabricants com MOKO. Anirem filant tots aquests continguts en una guia coherent, amb advertiments de seguretat, trucs per trobar la IP del gateway i detalls de configuració tant de xarxa com de ràdio.

Conceptes bàsics: què és i què fa una porta d'enllaç LoRaWAN

Una porta d'enllaç LoRaWAN (LoRaWAN gateway) és el dispositiu encarregat d'escoltar els nodes LoRa (sensors, trackers, etc.) i reenviar els vostres missatges cap a un servidor de xarxa LoRaWAN a través d'Internet (Ethernet, Wi-Fi, LTE/4G, 5G, satèl·lit, etc.). Pots imaginar-la com una mena de torre de telefonia però per a dispositius de molt baix consum.

A nivell físic, el gateway integra un o més concentradors LoRa (com el RAK831) capaços de monitoritzar múltiples canals en paral·lel i diferents Spreading Factors, una placa de control (per exemple, Raspberry Pi o un SoC integrat), interfícies de xarxa (Ethernet, Wi-Fi, LTE) i, sovint, GPS per a sincronització i geolocalització aproximada dels nodes.

A l'ecosistema LoRaWAN, la porta d'enllaç no interpreta el contingut de les trames d'aplicació: simplement encapsula i reenvia (packet forwarder) els paquets al servidor LoRaWAN (LNS: LoRaWAN Network Server) oa la infraestructura CUPS/LNS del núvol. Per això, la configuració clau gira al voltant de paràmetres de ràdio, identificadors del gateway i l'adreça del servidor on enviareu les dades.

Depenent del desplegament, podràs fer servir gateways públics (per exemple, els de la comunitat TTN a zones urbanes) o muntar el teu propi gateway per cobrir una àrea rural, una explotació agrícola, un campus educatiu o un entorn industrial on necessitis control total de la infraestructura.

Ets aquƭ : Maquinari tƭpic d'una porta d'enllaƧ LoRaWAN

Per construir o desplegar una porta d'enllaç disposeu d'opcions que van des de dispositius comercials tancats fins kits de desenvolupament basats en Raspberry Pi. Un exemple força representatiu és lús dun concentrador RAK831 integrat amb una Raspberry Pi.

Un kit típic de gateway LoRa d'aquest estil sol incloure tots els elements de maquinari necessaris per començar sense haver de cercar peces soltes: la pròpia placa concentradora LoRaWAN, la placa base, antenes i adaptadors. Això accelera moltíssim la posada en marxa i evita problemes de compatibilitat.

En el cas concret d'alguns kits MOKO basats en RAK831 i Raspberry Pi 3B, el paquet pot portar, entre d'altres elements, una placa adaptadora de GPS, antena GPS, antena LoRa de fibra de vidre amb guany suficient per a instalĀ·lacions en pal, cable coaxial RG-58 de diversos metres, dissipador per a la placa concentradora i fins i tot nodes d'exemple tipus WisNode o trackers LoRa.

El gran avantatge d'aquests kits és que la targeta de memòria de la Raspberry Pi sol venir preconfigurada amb el programari de gateway (packet forwarder, scripts de configuració, etc.), de manera que no has de compilar ni descarregar res de GitHub per començar a funcionar, més enllà d'ajustar uns quants fitxers de configuració.

A gateways comercials com el RAK7289, tot el maquinari està integrat en una carcassa industrial ja preparada per a exterior, amb antena LoRa i, de vegades, una altra antena addicional per a LTE/4G. En aquests models, el fabricant normalment ofereix una interfície web de configuració força guiada, per la qual cosa el treball se centra en paràmetres de xarxa (IP, DNS, etc.) i en apuntar el gateway al servidor LoRaWAN correcte.

Configuració de xarxa del gateway: IP estàtica, DHCP i accés inicial

Abans de poder tocar la part LoRaWAN, has d'assegurar-te que la porta denllaƧ estƠ correctament connectada a la xarxa IP (LAN o WAN). Sense connectivitat cap a Internet (o cap al vostre servidor local) no servirƠ de res que la rƠdio funcioni bƩ.

A molts gateways (per exemple, el RAK7289), la interfície d'administració es presenta via web i s'hi accedeix adreça IP a la xarxa. Pots configurar-lo com a client DHCP (que obtingui IP automàticament del router) o amb una IP fixa segons la teva topologia de xarxa.

Si el dispositiu ve de fàbrica o l'ha configurat una altra organització, és possible que estigui en mode Client DHCP. En aquest cas, haureu d'esbrinar quina adreça IP us ha assignat el servidor DHCP del vostre encaminador o xarxa. Per això, pots:

  • Consulteu directament la llista de clients DHCP al router o servidor, identificant el gateway pel seu MAC o per l'hostname (per exemple, ā€œRAK7289ā€).
  • Usar eines tipus nmap o altres escĆ ners d'IP per descobrir quins dispositius responen al vostre segment de xarxa.

Alguns gateways inclouen un punt d'accés Wi-Fi de gestió obert, pensat precisament per a aquesta configuració inicial. Si us connecteu a aquesta xarxa Wi-Fi, la porta d'enllaç actua com a encaminador i la IP de porta d'enllaç per defecte al vostre ordinador serà la IP d'administració del dispositiu.

Un detall important de seguretat: un cop hagis acabat la posada en marxa, convé desactivar la Wi-Fi de gestió si no és estrictament necessària, ja que una xarxa Wi-Fi oberta dadministració suposa una vulnerabilitat clara en entorns reals.

A la interfĆ­cie de configuració (per exemple, al menĆŗ Network → WAN Interface d'un gateway RAK), podrĆ s escollir entre IP estĆ tica i DHCP, definir DNS, mĆ scara, porta d'enllaƧ, aixĆ­ com canviar les credencials d'accĆ©s per defecte (usuari i contrasenya) que mai hauries de deixar tal com vĆ©nen de fĆ brica.

Alta i configuració del gateway a The Things Network (TTN)

Quan el teu gateway té sortida a Internet, el següent pas en molts desplegaments comunitaris o de laboratori és integrar-ho amb TTN (The Things Network), una xarxa LoRaWAN pública i gratuïta ideal per a projectes educatius, proves i petits desplegaments.

El procĆ©s habitual comenƧa creant un compte a la web de TTN i accedint a la web consola des de la icona de perfil. En entrar per primera vegada, el sistema et demanarĆ  que triĆÆs la teva regió (per exemple, Europa, AmĆØrica del Nord, etc.), ia partir d'aquĆ­ podrĆ s anar a la secció ā€œAplicacionsā€ o ā€œPortes d'enllaĆ§ā€. Per donar d'alta el gateway, haureu d'anar especĆ­ficament a ā€œAnar a Portes d'enllaĆ§ā€.

A la Consola de TTN, en prémer el botó de Registrar porta d'enllaç, se us demanaran diverses dades: un identificador per al gateway (Gateway ID), el vostre EUI únic (Gateway EUI) i el pla de freqüències segons la vostra regió. El Gateway EUI sol estar disponible a la pròpia interfície web del dispositiu o al vostre microprogramari, normalment a la secció de configuració de la xarxa LoRa.

Ɖs fonamental que el Gateway ID que definiu a TTN coincideixi amb el configurat a l'equip, especialment si la documentació del fabricant aixĆ­ ho exigeix. A mĆ©s, haurĆ s de seleccionar el pla de freqüència apropiat (per exemple, EU868 per a Europa), que defineix els canals disponibles i els parĆ metres de rĆ dio compatibles amb la normativa del teu paĆ­s.

Un cop registrat el gateway a TTN, la part de configuració a la Consola queda gairebé llesta. TTN us mostrarà l'estat del gateway (connectat o no) quan el dispositiu comenci a enviar paquets al packet forwarder de TTN usant l'adreça de servidor corresponent.

Configuració del packet forwarder i paràmetres LoRaWAN

A la interfĆ­cie del gateway (menĆŗ LoRa Network → Network Settings → Packet Forwarder o similar) Ć©s on s'especifiquen els parĆ metres de connexió al servidor LoRaWAN. Aquesta secció Ć©s el pont entre el món rĆ dio LoRa i el servidor de xarxa.

El packet forwarder es configura indicant la direcció de l'servidor (per exemple, el router de TTN o un router propi, com router.us.mokolora.network en desplegaments de MOKO), així com els ports de pujada i baixada (serv_port_up i serv_port_down). També es pot activar o desactivar cada servidor configurat mitjançant un flag típic com a serv_enabled.

A gateways basats en MOKO i Raspberry Pi, molts d'aquests paràmetres s'emmagatzemen en fitxers JSON com global_config.json y local_config.json, que defineixen respectivament la configuració genèrica de la regió i les dades específiques de la porta d'enllaç (ID, ubicació, servidors, etc.).

El fitxer global_config.json sol incloure el bloc gateway_conf amb ajustaments de GPS i sincronització, Per exemple:

{"gateway_conf":{"GPS":true,"gps_tty_path":"/dev/ttyAMA0","fake_gps":false}}

Mentre que a local_config.json es guarden dades com el gateway_ID, coordenades (ref_latitude, ref_longitude, ref_altitude), email de contacte, descripció i el llistat de servidors als quals es connecta el packet forwarder, cadascun amb el seu server_address, serv_port_up, serv_port_down i serv_enabled.

Gestió de fitxers de configuració i gateway_ID

En sistemes tipus Raspberry Pi amb MOKO, una part interessant Ć©s com es genera i gestiona el gateway_ID. Normalment, es calcula a partir de la direcció MAC de la interfĆ­cie de xarxa (per exemple, eth0) mitjanƧant un script que la transforma en un identificador EUI64, inserint ā€œFFFEā€ al mig i elevant a majĆŗscules el resultat.

Aquest gateway_ID es fa servir després al fitxer local_config.json per identificar de forma única la porta d'enllaç davant del servidor LoRaWAN. A més, molts desplegaments reposen en un esquema de configuració remota basat en un dipòsit GitHub on es publiquen els global_config.json de cada regió i els local_config.json de gateways concrets.

El mecanisme funciona així: en arrencar, el concentrador LoRa descarrega des de GitHub el fitxer de configuració corresponent al seu gateway_ID, comprova si hi ha canvis respecte a l'última arrencada i, si detecta una nova versió, la sincronitza creant un enllaç simbòlic des de bin/local_config.json cap al fitxer clonat del repositori.

Si vols aprofitar aquest sistema, pots pujar el teu propi fitxer de configuració al repositori remot, nomenant-ho amb el gateway_ID (per exemple, MFP254862KEF1034.json), fer un fork, enviar un pull request al repositori principal i, una vegada acceptat, el teu gateway descarregarà automàticament aquesta configuració en les següents arrencades.

Això permet actualitzar paràmetres crítics (servidors, freqüències, descripció, dades de contacte) sense necessitat d'accedir físicament a cada gateway, sempre que tingui connectivitat a Internet i el programari de sincronització habilitat.

Configuració regional, canals i errors de freqüència

Una part que causa molts dubtes en configurar gateways LoRaWAN és la configuració regional de freqüències. Cada país o zona geogràfica té bandes específiques habilitades per a LoRa (per exemple, 868 MHz a Europa, 915 MHz a certes regions d'Amèrica, etc.) i els servidors de xarxa validen que els paquets arribin en freqüències permeses.

Els fitxers de configuració global per a gateway (global_config.json) defineixen els canals i paràmetres de ràdio (freqüències, ample de banda, Spreading Factor, etc.) per a cada regió. A GitHub hi ha repositoris públics amb configuracions predefinides per a múltiples plans regionals, cosa que simplifica molt el desplegament.

Si la configuració del teu gateway no correspon amb la del servidor al qual et connectes, et pots trobar errors del tipus: ā€œPaquet REBUTJAT, freqüència no compatibleā€. Per exemple, que el gateway enviĆÆ per 868.3 MHz mentre el servidor espera paquets en un rang de 890-975 MHz, generant errors al log del packet forwarder.

Per evitar aquests errors, assegureu-vos de descarregar el global_config.json correcte per a la teva regió, i que el vostre servidor (TTN, MOKO, AWS IoT Core) està configurat amb el mateix pla de freqüències. També has de verificar que els nodes finals (trackers, sensors, etc.) usin la mateixa banda definida al gateway i al servidor.

A paĆÆsos com la Xina, per exemple, es fan servir configuracions especĆ­fiques amb bandes i canals diferents dels europeus, per la qual cosa no n'hi ha prou amb copiar qualsevol exemple d'Internet; cal fer servir el fitxer concret associat a la teva Ć rea geogrĆ fica perquĆØ tot encaixi.

Connexió de gateways LoRaWAN amb AWS IoT Core

En desplegaments més avançats, pots integrar els teus gateways directament amb AWS IoT Core per a LoRaWAN, utilitzant les capacitats del núvol d'Amazon per a la gestió de dispositius, recol·lecció de dades i processament de missatges.

El flux general consisteix a donar d'alta la porta d'enllaç a AWS IoT Core per a LoRaWAN, obtenir la informació necessària (certificats, URL d'endpoints) i després configurar el dispositiu de gateway perquè es connecti al endpoint CUPS o LNS d'AWS, segons el protocol suportat.

Segons el tipus de gateway, la documentació del proveĆÆdor explicarĆ  com pujar els certificats de confianƧa al dispositiu, com indicar les rutes a aquests certificats al microprogramari i com apuntar a les URLs de CUPS o LNS que et proporciona AWS. Ɖs important seguir al peu de la lletra aquesta guia, ja que l'autenticació TLS Ć©s obligatòria.

A gateways compatibles amb el protocol CUPS, haureu d'especificar l'URL de l'endpoint CUPS, que tindrà un format similar a: prefix.cups.lorawan.region.amazonaws.com:443. En gateways compatibles amb LNS, la URL serà una mica com: https://prefix.lns.lorawan.region.amazonaws.com:443, sempre usant el port 443 i connexió segura.

Un cop pujats els certificats i configurats els endpoints, el gateway començarà a comunicar-se amb AWS IoT Core per a LoRaWAN i podràs comprovar el seu estat (connectat, darrer uplink rebut, etc.) des de la consola web o mitjançant l'API GetWirelessGatewayStatistics, que retorna informació com ConnectionStatus i LastUplinkReceivedAt en format JSON.

Ús de la consola i API d'AWS per monitoritzar l'estat del gateway

Després de connectar el gateway amb AWS IoT Core per a LoRaWAN, la plataforma ofereix diverses formes de verificar que tot va fi. La més immediata és la consola web d'AWS IoT, on teniu una secció específica de Portes d'enllaç.

Dins la consola, en seleccionar el teu gateway a la pàgina de Portes d'enllaç, apareixerà un bloc de Detalls específics de LoRaWAN. Aquí es mostra l'estat de la connexió, juntament amb la data i hora de l'últim enllaç ascendent (uplink) rebut, permetent comprovar d'una ullada si el gateway està actiu i en comunicació amb el núvol.

Si prefereixes automatitzar la supervisió, pots fer servir la API GetWirelessGatewayStatistics. Aquesta operació no requereix un cos de sol·licitud i torna un JSON on s'indica, per exemple, ConnectionStatus (Connected/Disconnected), LastUplinkReceivedAt amb marca de temps i el WirelessGatewayId corresponent al dispositiu.

Un exemple de resposta seria alguna cosa com: {"ConnectionStatus":"Connected","LastUplinkReceivedAt":"2021-03-24T23:13:08.476015749Z","WirelessGatewayId":"30cbdcf3-86de-4291-bfab-5bfa2b12bad5"}, que pots integrar a les teves eines de monitorització o panells personalitzats.

D'aquesta manera, tant des de la consola com des de l'API disposes de formes molt clares de detectar errors de connectivitat, inactivitat prolongada del gateway o problemes de configuració que impedeixin que els uplinks arribin correctament a AWS IoT Core.

Registre d'aplicacions i dispositius finals a TTN

Tornant a l'entorn de TTN, un cop tens el gateway operatiu i registrat, encara et manca un altre pas clau: donar d'alta l'aplicació i els dispositius finals (nodes, trackers, sensors). Que el gateway aparegui com a connectat a TTN no vol dir que ja estiguis rebent dades dels teus nodes.

A la Consola de TTN, has d'anar a la secció ā€œAplicacionsā€ i crear una nova aplicació, assignant-li un nom/ID. Dins aquesta aplicació, utilitzarĆ s el botó de ā€œregistrar dispositiu finalā€ per donar d'alta cada node. LoRaWAN. AllĆ  podrĆ s emplenar les dades de forma manual o basar-te en plantilles, segons el tipus de dispositiu.

Entre els paràmetres clau hi ha DevEUI, JoinEUI (APP-EUI) i AppKey. Algunes eines, com la consola de TTN, permeten generar automàticament DevEUI i AppKey mitjançant botons de generació, simplificant la posada en marxa quan uses nodes genèrics o desenvolupaments propis.

Per a JoinEUI, en certs casos pots establir pràcticament qualsevol valor sempre que el mantinguis coherent amb la configuració de el dispositiu (per exemple, a l'eina Loko Configuration Tool, el paràmetre APP-EUI es correspon amb JoinEUI a TTN). La resta de claus han de coincidir exactament entre la consola i el microprogramari del node.

Un cop registrat el dispositiu final, podràs anar a la secció de formatadors de càrrega útil i triar opcions com CayenneLPP per a la descodificació dels uplinks. Això permet representar les dades en formats més amigables i facilitar-ne la integració amb dashboards, bases de dades i sistemes de visualització.

Exemple pràctic amb trackers i eines de configuració

Un cas real força habitual és l'ús de trackers GPS LoRaWAN per localitzar persones, vehicles o actius, enviant-ne les coordenades periòdicament a través de la xarxa. Dispositius com els Dragino TrackerD o unitats Loko Air il·lustren molt bé aquest flux.

En un entorn educatiu, per exemple, es poden registrar diversos trackers sota una mateixa aplicació a TTN, aprofitant que cadascú ve amb credencials úniques (DevEUI, AppEUI/JoinEUI, AppKey) que es documenten al manual oa l'etiqueta del dispositiu. Tots s'associen a la mateixa aplicació, però s'identifiquen individualment.

Per configurar parĆ metres avanƧats del tracker (freqüència d'enviament de coordenades, durada de l'alarma de pĆ nic, etc.), podeu connectar el dispositiu per USB i utilitzar una interfĆ­cie sĆØrie a 115200 bauds, enviant ordres AT predefinits. En alguns models no s'accepten entrades ā€œtecla a teclaā€, sinó que cal enganxar la comanda completa de cop perquĆØ sigui interpretada correctament.

En cas d'unitats com Loko Air, l'eina Loko Configuration Tool permet llegir la configuració actual, habilitar el mode LoRaWAN i emplenar els tres paràmetres essencials (JoinEUI/AppEUI, DevEUI i AppKey) de manera que casin amb la informació d'activació del dispositiu final a The Things Network.

Després d'aplicar la configuració i reiniciar el dispositiu, si la porta d'enllaç funciona correctament i es troba dins de l'abast, hauríeu de començar a veure trànsit en viu a la secció d'End Devices de TTN, incloent missatges amb payloads descodificats i la ubicació del tracker al mapa si el format ho permet.

A més, la informació que apareix a la consola de TTN pot integrar-se en dashboards públics com Datacake, que permeten convertir les dades brutes de LoRaWAN en visualitzacions amigables per a usuaris finals, panells compartibles o quadres de comandament per a projectes educatius i pilots de IoT.

Amb tot aquest recorregut, des del maquinari fins al núvol, passant per TTN, AWS i la configuració fina de ràdio, es pot veure que una porta d'enllaç LoRaWAN no és només una antena, sinó el punt neuràlgic que connecta el món físic dels sensors amb les plataformes de dades on realment es genera el valor del projecte.

ParĆ graf final

Un cop coneguts els engranatges interns -hardware tipus RAK831 o RAK7289, fitxers global_config i local_config, sincronització remota via GitHub, configuració IP i desactivació de Wi-Fi de gestió, alta i parametrització en TTN, connexió segura amb AWS IoT Core i registre d'aplicacions i dispositius finals com a trackers GPS o un configuració d'una porta d'enllaç LoRaWAN és només la suma ordenada de diversos passos lògics, on la clau és respectar el pla de freqüències regional, alinear IDs i claus entre gateway, servidor i nodes, i recolzar-se en les consoles i APIs dels diferents serveis per verificar en tot moment que els uplinks estan arribant i que la infraestructura LoRaWAN es comporta com esperes en el teu desplie.