Guide complet pour la configuration d'une passerelle LoRaWAN

  • La passerelle LoRaWAN sert de pont entre les nÅ“uds LoRa et les serveurs réseau, ce qui nécessite une configuration minutieuse du matériel, du réseau IP et des paramètres radio.
  • Des fichiers tels que global_config.json et local_config.json définissent les fréquences, le GPS, l'identifiant de la passerelle et les serveurs, et peuvent même être gérés à distance à l'aide des dépôts GitHub.
  • L'intégration avec des plateformes telles que TTN et AWS IoT Core pour LoRaWAN nécessite l'enregistrement de la passerelle, des applications et des dispositifs finaux, ainsi que l'alignement des identifiants, des clés et des plans de fréquence.
  • La surveillance continue via les consoles web et les API permet de détecter les erreurs de fréquence, les échecs de connexion et de vérifier que les liaisons montantes sont correctement reçues et traitées.

Configuration de la passerelle LoRaWAN

Assembler et hacher finement le Configuration d'une passerelle LoRaWAN Cela peut paraître un peu intimidant au premier abord : paramètres radio, réseaux, serveurs, certificats, identifiants étranges… Mais en réalité, si vous comprenez chaque élément, le processus est assez logique. Dans cet article, nous aborderons le matériel et le serveur LoRaWAN, en passant par TTN et AWS IoT Core, afin de vous offrir une vue d’ensemble complète et pratique.

Nous nous appuierons sur des exemples concrets tels que Passerelles RAK (RAK7289, RAK831)Les réseaux publics comme The Things Network (TTN), les solutions cloud comme AWS IoT Core pour LoRaWAN et les configurations de fabricants comme MOKO seront tous abordés. Nous intégrerons l'ensemble de ces informations dans un guide cohérent, incluant des avertissements de sécurité, des conseils pour trouver l'adresse IP de la passerelle et des informations détaillées sur la configuration réseau et radio.

Concepts de base : qu’est-ce qu’une passerelle LoRaWAN et à quoi elle sert ?

Une Passerelle LoRaWAN Il s'agit du dispositif chargé d'écouter les nœuds LoRa (capteurs, traceurs, etc.) et de transmettre leurs messages à un serveur de réseau LoRaWAN via Internet (Ethernet, Wi-Fi, LTE/4G, 5G, satellite, etc.). On peut le considérer comme une sorte de antenne-relais de téléphonie mobile mais pour les appareils à très faible consommation.

Au niveau physique, la passerelle intègre un ou plusieurs concentrateurs LoRa (comme le RAK831) capable de surveiller plusieurs canaux en parallèle et différents facteurs d'étalement, une carte de contrôle (par exemple, Raspberry Pi ou un SoC embarqué), des interfaces réseau (Ethernet, Wi-Fi, LTE), et souvent, GPS pour la synchronisation et la géolocalisation approximative des nœuds.

Dans l'écosystème LoRaWAN, la passerelle n'interprète pas le contenu des trames d'application : Il suffit d'encapsuler et de transmettre. Le relais de paquets envoie les paquets au serveur LoRaWAN (LNS : serveur réseau LoRaWAN) ou à l’infrastructure cloud CUPS/LNS. La configuration principale porte donc sur les paramètres radio, les identifiants de passerelle et l’adresse du serveur de destination des données.

Selon le déploiement, vous pourrez utiliser passerelles publiques (par exemple, ceux de la communauté TTN dans les zones urbaines) ou mettez en place votre propre passerelle pour couvrir une zone rurale, une ferme, un campus éducatif ou un environnement industriel où vous avez besoin d'un contrôle total de l'infrastructure.

Matériel typique d'une passerelle LoRaWAN

Pour construire ou déployer une passerelle, vous avez le choix entre plusieurs options, allant des appareils commerciaux fermés aux Kits de développement basés sur Raspberry PiUn exemple assez représentatif est l'utilisation d'un hub RAK831 intégré avec un Raspberry Pi.

Un kit de passerelle LoRa typique de ce type comprend généralement tous les composants matériels nécessaires Pour démarrer sans avoir à chercher les composants individuellement : la carte concentrateur LoRaWAN, la carte mère, les antennes et les adaptateurs. Cela accélère considérablement l’installation et évite les problèmes de compatibilité.

Dans le cas particulier de certains kits MOKO basés sur RAK831 et Raspberry Pi 3B, l'emballage peut inclure, entre autres éléments, un plaque d'adaptation GPSAntenne GPS, antenne LoRa en fibre de verre avec un gain suffisant pour les installations sur mât, plusieurs mètres de câble coaxial RG-58, dissipateur thermique pour la carte de concentration et même des exemples de nœuds tels que des trackers WisNode ou LoRa.

Le principal avantage de ces kits est que la carte mémoire Raspberry Pi est généralement fournie avec le kit. préconfiguré avec le logiciel de passerelle (transmetteur de paquets, scripts de configuration, etc.), vous n'avez donc rien à compiler ni à télécharger depuis GitHub pour commencer, mis à part quelques modifications de fichiers de configuration.

Dans les passerelles commerciales telles que RAK7289L'ensemble du matériel est intégré dans un boîtier industriel robuste, conçu pour une utilisation en extérieur, avec une antenne LoRa et, parfois, une antenne supplémentaire pour LTE/4G. Ces modèles offrent généralement une interface de configuration web assez intuitive, ce qui permet de se concentrer sur les paramètres réseau (IP, DNS, etc.) et la configuration de la passerelle pour qu'elle pointe vers le serveur LoRaWAN approprié.

Configuration du réseau de la passerelle : adresse IP statique, DHCP et accès initial

Avant de pouvoir toucher la partie LoRaWAN, vous devez vous assurer que le La passerelle est correctement connectée au réseau IP (LAN ou WAN). Sans connexion internet (ou à votre serveur local), la radio ne peut pas fonctionner correctement.

Dans de nombreuses passerelles (par exemple, la RAK7289), l'interface d'administration est présentée via le Web et accessible par son intermédiaire. Adresse IP sur le réseauVous pouvez le configurer en tant que client DHCP (qui obtient automatiquement une adresse IP auprès du routeur) ou avec une adresse IP statique en fonction de la topologie de votre réseau.

Si l'appareil provient de l'usine ou a été configuré par une autre organisation, il peut être en mode Client DHCPDans ce cas, vous devrez trouver l'adresse IP attribuée par votre routeur ou le serveur DHCP de votre réseau. Pour ce faire, vous pouvez :

  • Consultez directement le Liste des clients DHCP sur le routeur ou le serveur, en identifiant la passerelle par son adresse MAC ou par son nom d'hôte (par exemple, « RAK7289 »).
  • Utilisez des outils comme nmap ou d'autres scanners IP pour découvrir quels appareils répondent sur votre segment de réseau.

Certaines passerelles incluent une point d'accès Wi-Fi de gestion Conçu spécifiquement pour cette configuration initiale, ce système ouvert permet, une fois connecté au réseau Wi-Fi, de faire office de routeur. L'adresse IP par défaut de votre ordinateur devient alors l'adresse IP de gestion de l'appareil.

Un détail important concernant la sécurité : une fois le démarrage terminé, il est conseillé désactiver la gestion Wi-Fi sauf en cas de stricte nécessité, car un réseau Wi-Fi ouvert et géré représente une vulnérabilité évidente dans les environnements réels.

Dans l'interface de configuration (par exemple, dans le menu Réseau → Interface WAN d'une passerelle RAK), vous pouvez choisir entre une adresse IP statique et DHCP, définir le DNS, le masque de sous-réseau, la passerelle, ainsi que modifier le informations d'identification d'accès par défaut (nom d'utilisateur et mot de passe) que vous ne devez jamais modifier tels qu'ils sont fournis en usine.

Configuration et paramétrage de la passerelle dans The Things Network (TTN)

Une fois que votre passerelle a accès à Internet, l'étape suivante dans de nombreux déploiements communautaires ou de laboratoire est l'intégrer à TTN (The Things Network), un réseau LoRaWAN gratuit et public, idéal pour les projets éducatifs, les tests et les petits déploiements.

La procédure habituelle commence par la création d'un compte sur le site web de TTN et l'accès à celui-ci. console Depuis l'icône de profil. Lors de votre première connexion, le système vous demandera de choisir votre région (par exemple, Europe, Amérique du Nord, etc.). Vous pourrez ensuite accéder à la section « Applications Â» ou « Passerelles Â». Pour enregistrer la passerelle, vous devrez vous rendre dans « Accéder aux passerelles Â».

Sur la console TTN, lorsque vous appuyez sur le bouton Portail d'inscriptionPlusieurs informations vous seront demandées : l’identifiant de la passerelle, son EUI unique et le plan de fréquences de votre région. L’EUI de la passerelle est généralement disponible dans l’interface web ou le micrologiciel de l’appareil, le plus souvent dans la section des paramètres du réseau LoRa.

Il est essentiel que le L'identifiant de passerelle que vous définissez dans TTN doit correspondre à celui configuré sur l'appareil.surtout si la documentation du fabricant l'exige. De plus, vous devrez sélectionner le plan de fréquences approprié (par exemple, EU868 pour l'Europe), qui définit les canaux disponibles et les paramètres radio compatibles avec la réglementation de votre pays.

Une fois la passerelle enregistrée auprès de TTN, la configuration dans la console est presque terminée. TTN affichera l'état de la passerelle (connectée ou non) lorsque le périphérique commencera à envoyer des paquets. Transmetteur de paquets TTN en utilisant l'adresse du serveur correspondant.

Configuration du transmetteur de paquets et paramètres LoRaWAN

L'interface de la passerelle (menu Réseau LoRa → Paramètres réseau → Transmetteur de paquets ou similaire) est l'endroit où Paramètres de connexion au serveur LoRaWANCette section fait le lien entre le monde de la radio LoRa et le serveur réseau.

Le transmetteur de paquets est configuré en spécifiant le adresse du serveur (Par exemple, le routeur TTN ou un routeur personnalisé, tel que router.us.mokolora.network dans les déploiements MOKO), ainsi que les ports amont et aval (serv_port_up et serv_port_down). Chaque serveur configuré peut également être activé ou désactivé à l'aide d'un indicateur classique tel que serv_enabled.

Dans les passerelles MOKO et Raspberry Pi, bon nombre de ces paramètres sont stockés dans des fichiers JSON tels que : global_config.json y local_config.json, qui définissent respectivement la configuration générique de la région et les données spécifiques de la passerelle (ID, emplacement, serveurs, etc.).

Le fichier global_config.json inclut généralement le bloc gateway_conf contenant les paramètres pour GPS et synchronisation, par exemple:

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

Alors que local_config.json stocke des données telles que ID_passerelle, coordonnées (ref_latitude, ref_longitude, ref_altitude), adresse e-mail de contact, description et la liste des serveurs auxquels le transmetteur de paquets se connecte, chacun avec son server_address, serv_port_up, serv_port_down et serv_enabled.

Gestion des fichiers de configuration et identifiant de passerelle

Dans les systèmes de type Raspberry Pi avec MOKO, un aspect intéressant est la manière dont il génère et gère l'identifiant de la passerelleIl est généralement calculé à partir de l'adresse MAC de l'interface réseau (par exemple, eth0) à l'aide d'un script qui la transforme en un identifiant EUI64, en insérant « FFFE » entre les deux et en mettant le résultat en majuscules.

Cet identifiant de passerelle (gateway_ID) est ensuite utilisé dans le fichier local_config.json pour identifier de manière unique la passerelle vers le serveur LoRaWAN. De plus, de nombreux déploiements reposent sur un schéma de configuration à distance basé sur un dépôt GitHub où sont publiés les fichiers global_config.json pour chaque région et les fichiers local_config.json pour les passerelles spécifiques.

Le mécanisme fonctionne ainsi : au démarrage, le concentrateur LoRa télécharge le fichier de configuration correspondant à son identifiant de passerelle (gateway_ID) depuis GitHub, vérifie les modifications apportées depuis le dernier démarrage et, s’il détecte une nouvelle version, la synchronise en créant un fichier de configuration. lien symbolique du fichier bin/local_config.json vers le fichier du dépôt cloné.

Si vous souhaitez tirer profit de ce système, vous pouvez Téléversez votre propre fichier de configuration sur le dépôt distant.en le nommant avec l'identifiant de la passerelle (par exemple, MFP254862KEF1034.json), dupliquez-le, envoyez une demande d'extraction au dépôt principal et, une fois acceptée, votre passerelle téléchargera automatiquement cette configuration lors des démarrages suivants.

Cela permet de mettre à jour les paramètres critiques (serveurs, fréquences, description, coordonnées) sans accéder physiquement à chaque passerelle, à condition qu'elle dispose de connectivité Internet et le logiciel de synchronisation activé.

Erreurs de paramètres régionaux, de chaînes et de fréquence

Un aspect qui soulève de nombreuses questions lors de la configuration des passerelles LoRaWAN est le configuration de fréquence régionaleChaque pays ou zone géographique dispose de bandes spécifiques activées pour LoRa (par exemple, 868 MHz en Europe, 915 MHz dans certaines régions d'Amérique, etc.) et les serveurs du réseau vérifient que les paquets arrivent sur des fréquences autorisées.

Les fichiers de configuration globale de la passerelle (global_config.json) définissent les canaux et paramètres radio (Fréquences, bande passante, facteur d'étalement, etc.) pour chaque région. Des dépôts publics contenant des configurations prédéfinies pour plusieurs plans régionaux sont disponibles sur GitHub, ce qui simplifie grandement le déploiement.

Si la configuration de votre passerelle ne correspond pas à celle du serveur auquel vous vous connectez, vous pouvez rencontrer des erreurs telles que : « Paquet REJETÉ, fréquence non compatible »Par exemple, la passerelle peut envoyer des paquets sur 868.3 MHz alors que le serveur attend des paquets dans la plage 890-975 MHz, générant des erreurs dans le journal du transmetteur de paquets.

Pour éviter ces erreurs, assurez-vous de télécharger le Le fichier global_config.json doit être correct pour votre région.et que votre serveur (TTN, MOKO, AWS IoT Core) est configuré avec le même plan de fréquences. Vous devez également vérifier que les nœuds finaux (traceurs, capteurs, etc.) utilisent la même bande de fréquences que celle définie sur la passerelle et le serveur.

Dans des pays comme la Chine, par exemple, des configurations spécifiques avec des bandes et des canaux différents de ceux utilisés en Europe sont employées ; il ne suffit donc pas de simplement copier un exemple trouvé sur Internet ; il faut utiliser le fichier spécifique associé à votre zone géographique pour que tout s'emboîte parfaitement.

Connexion des passerelles LoRaWAN à AWS IoT Core

Dans les déploiements plus avancés, vous pouvez intégrer vos passerelles directement avec AWS IoT Core pour LoRaWAN, en utilisant les capacités cloud d'Amazon pour la gestion des appareils, la collecte de données et le traitement des messages.

Le processus général consiste à enregistrer la passerelle dans AWS IoT Core pour LoRaWAN, à obtenir les informations nécessaires (certificats, URL des points de terminaison), puis à configurer la passerelle pour qu'elle se connecte au réseau. Point final CUPS ou LNS d'AWS, conformément au protocole pris en charge.

Selon le type de passerelle, la documentation du fournisseur expliquera comment télécharger les certificats de confiance Ce guide explique comment spécifier les chemins d'accès à ces certificats dans le firmware et comment les faire pointer vers les URL CUPS ou LNS fournies par AWS. Il est important de suivre ce guide à la lettre, car l'authentification TLS est obligatoire.

Sur les passerelles compatibles avec le protocole CUPS, vous devrez spécifier l'URL du point de terminaison CUPS, qui aura un format similaire à : prefix.cups.lorawan.region.amazonaws.com:443. Sur les passerelles compatibles avec LNS, l'URL sera de la forme : https://prefix.lns.lorawan.region.amazonaws.com:443. port 443 et une connexion sécurisée.

Une fois les certificats téléchargés et les points de terminaison configurés, la passerelle commencera à communiquer avec AWS IoT Core pour LoRaWAN et vous pouvez vérifier son statut (connecté, dernière liaison montante reçue, etc.) depuis la console Web ou via l'API GetWirelessGatewayStatistics, qui renvoie des informations telles que ConnectionStatus et LastUplinkReceivedAt au format JSON.

Utilisation de la console AWS et de l'API pour surveiller l'état de la passerelle

Après avoir connecté la passerelle à AWS IoT Core pour LoRaWAN, la plateforme offre plusieurs possibilités pour vérifier que tout fonctionne correctement.L'option la plus immédiate est la console web AWS IoT, où vous trouverez une section dédiée aux passerelles.

Dans la console, lorsque vous sélectionnez votre passerelle sur la page Passerelles, un bloc apparaîtra. Détails spécifiques de LoRaWANVous pouvez y consulter l'état de la connexion, ainsi que la date et l'heure de la dernière liaison montante reçue, ce qui vous permet de vérifier d'un coup d'œil si la passerelle est active et communique avec le cloud.

Si vous préférez automatiser la surveillance, vous pouvez utiliser le API GetWirelessGatewayStatisticsCette opération ne nécessite pas de corps de requête et renvoie un JSON qui indique, par exemple, ConnectionStatus (Connecté/Déconnecté), LastUplinkReceivedAt avec horodatage et le WirelessGatewayId correspondant au périphérique.

Voici un exemple de réponse : quelque chose comme : {"ConnectionStatus":"Connected","LastUplinkReceivedAt":"2021-03-24T23:13:08.476015749Z","WirelessGatewayId":"30cbdcf3-86de-4291-bfab-5bfa2b12bad5"}, que vous pouvez intégrer à vos outils de surveillance ou à vos tableaux de bord personnalisés.

Ainsi, que ce soit depuis la console ou l'API, vous disposez de moyens très clairs pour détecter les pannes de connectivitéInactivité prolongée de la passerelle ou problèmes de configuration empêchant les liaisons montantes d'atteindre correctement AWS IoT Core.

Enregistrement des applications et des terminaux dans le TTN

Pour revenir à l'environnement TTN, une fois la passerelle opérationnelle et enregistrée, il reste encore une étape clé : enregistrer l'application et les périphériques finaux (nÅ“uds, traqueurs, capteurs). Le fait que la passerelle apparaisse comme connectée dans TTN ne signifie pas que vous recevez déjà des données de vos nÅ“uds.

Dans la console TTN, accédez à la section « Applications Â» et créez une nouvelle application, en lui attribuant un nom/identifiant. Au sein de cette application, vous utiliserez le bouton de « périphérique final d'enregistrement » Pour enregistrer chaque nÅ“ud LoRaWAN, vous pouvez saisir les données manuellement ou utiliser des modèles, selon le type d'appareil.

Les principaux paramètres comprennent DevEUI, JoinEUI (APP-EUI) et AppKeyCertains outils, comme la console propre à TTN, permettent Génération automatique de DevEUI et d'AppKey grâce à des boutons de génération, simplifiant le démarrage lors de l'utilisation de nœuds génériques ou de développements personnalisés.

Pour JoinEUI, dans certains cas, vous pouvez définir pratiquement n'importe quelle valeur tant qu'elle reste cohérente avec celle-ci. paramètres de l'appareil (Par exemple, dans l'outil de configuration Loko, le paramètre APP-EUI correspond à JoinEUI dans TTN). Les autres clés doivent correspondre exactement entre la console et le firmware du nœud.

Une fois le dernier appareil enregistré, vous pouvez accéder à la section des formateurs de charge utile et choisir des options telles que : CayenneLPP pour le décodage en liaison montante. Cela permet de représenter les données dans des formats plus conviviaux et facilite l'intégration avec les tableaux de bord, les bases de données et les systèmes de visualisation.

Exemple pratique avec des outils de suivi et de configuration

Un exemple assez courant dans le monde réel est l'utilisation de Traceurs GPS LoRaWAN Pour localiser des personnes, des véhicules ou des biens, on transmet périodiquement leurs coordonnées sur le réseau. Des appareils comme le Dragino TrackerD ou les unités Loko Air illustrent parfaitement ce processus.

Dans un contexte éducatif, par exemple, plusieurs dispositifs de suivi peuvent être enregistrés sous la même application TTN, en tirant parti du fait que chacun est fourni avec identifiants uniques (DevEUI, AppEUI/JoinEUI, AppKey) sont répertoriés dans votre manuel ou sur l'étiquette de l'appareil. Ils sont tous associés à la même application, mais sont identifiés individuellement.

Pour configurer les paramètres avancés du traceur (fréquence d'envoi des coordonnées, durée de l'alarme panique, etc.), l'appareil peut être connecté via USB et une interface série peut être utilisée à 115 200 bauds. Commandes AT prédéfiniesCertains modèles n'acceptent pas les entrées « touche par touche » ; la commande entière doit être saisie en une seule fois pour être interprétée correctement.

Dans le cas d'appareils comme Loko Air, l'outil Outil de configuration Loko Il vous permet de lire la configuration actuelle, d'activer le mode LoRaWAN et de renseigner les trois paramètres essentiels (JoinEUI/AppEUI, DevEUI et AppKey) afin qu'ils correspondent aux informations d'activation du périphérique final dans The Things Network.

Après avoir appliqué les paramètres et redémarré l'appareil, si la passerelle fonctionne correctement et se trouve à portée, vous devriez commencer à voir trafic en direct dans la section « Dispositifs finaux Â» de TTN, y compris les messages avec des charges utiles décodées et l'emplacement du traqueur sur la carte si le format le permet.

De plus, les informations affichées dans la console TTN peuvent être intégrées à des tableaux de bord publics tels que : Datacakequi permettent de convertir les données brutes LoRaWAN en visualisations conviviales, en tableaux de bord partageables ou en tableaux de bord de résultats pour des projets éducatifs et des projets pilotes IoT.

Tout au long de ce parcours, du matériel au cloud, en passant par TTN, AWS et le réglage précis de la configuration radio, il est clair qu'une passerelle LoRaWAN n'est pas simplement « une antenne », mais… point névralgique qui relie le monde physique des capteurs aux plateformes de données où la valeur du projet est réellement générée.

Paragraphe final

Une fois les mécanismes internes compris (matériel RAK831 ou RAK7289, fichiers global_config et local_config, synchronisation à distance via GitHub, configuration IP et désactivation du Wi-Fi de gestion, configuration et paramétrage TTN, connexion sécurisée avec AWS IoT Core et enregistrement des applications et des périphériques tels que les traceurs GPS ou les unités Loko Air), il devient beaucoup plus facile de comprendre que… Configuration d'une passerelle LoRaWAN Il s'agit simplement de la somme ordonnée de plusieurs étapes logiques, où la clé est de respecter le plan de fréquences régional, d'aligner les identifiants et les clés entre la passerelle, le serveur et les nœuds, et de s'appuyer sur les consoles et les API des différents services pour vérifier à tout moment que les liaisons montantes arrivent et que l'infrastructure LoRaWAN se comporte comme prévu dans votre déploiement réel.