Besoin d'une cotation ? Une configuration spécifique, un projet ? Contactez-nous au 02 51 99 13 03.

Comment connecter la passerelle LoRaWAN au courtier MQTT ?

Comment connecter la passerelle LoRaWAN au courtier MQTT ?

luna fouilleul |

Description

Lorsqu'elles fonctionnent en tant que serveur réseau intégré, les passerelles Milesight LoRaWAN prennent en charge l'envoi de paquets de données à un serveur MQTT/HTTP/HTTPS tiers. Nous pouvons créer une nouvelle application sur la passerelle, qui peut définir la méthode de décodage des données envoyées depuis le périphérique final LoRaWAN et choisir le protocole de transport de données MQTT pour envoyer les données au serveur MQTT.

 

 

 

Exigence

  • Passerelle Milesight LoRaWAN : UG8x (version du micrologiciel 80.0.0.64 ou ultérieure), UG65, UG67, UG56, UG63 V1
  • Serveur/courtier MQTT
  • Outil client MQTT : prenez MQTT Explorer comme exemple

 

Configuration

Étape 1. Activez le serveur réseau intégré à la passerelle.

Accédez à Packet Forwarder > General  pour activer l’adresse du serveur localhost.

 

 

Activez le serveur réseau sur la page  Serveur réseau > Général  .

 

 

 

Étape 2. Ajouter une application

Accédez à  Serveur réseau>Applications  pour ajouter une nouvelle application, cliquez sur Enregistrer.

Nom :  défini par l'utilisateur, valeur arbitraire

Description :  défini par l'utilisateur, valeur arbitraire

 

 

 

 

Étape 3. Connectez la passerelle au courtier MQTT.

Accédez à Serveur réseau > Applications  pour ajouter une « transmission de données » pour l'application. Une application ne peut ajouter qu'une seule intégration MQTT.

 

 

 

Remplissez les informations du courtier MQTT et créez un sujet pour stocker différents types de données, cliquez sur Enregistrer.

Adresse du courtier : adresse IP/domaine du courtier MQTT

Port du courtier :  port de communication du courtier MQTT

ID client :  défini par l'utilisateur, une identité d'identification unique du client sur le serveur.

Les informations d’identification utilisateur et TLS doivent être activés et configurés selon les besoins.

Remarque :  si le courtier MQTT est HiveMQ, veuillez activer TLS et définir l'option sur  Certificat de serveur signé  A.

 

 

Une fois la configuration MQTT terminée, vous pouvez vérifier l'état de la connexion ici :

 

 

Étape 4. Ajoutez des nœuds LoRaWAN à la passerelle.

Accédez à Serveur réseau> Profils  pour ajouter un nouveau profil, puis cliquez sur Enregistrer. Vous pouvez également utiliser des profils prédéfinis.

Nom :  défini par l'utilisateur, valeur arbitraire

Puissance d'émission max. :  valeur par défaut

D'autres paramètres peuvent être vérifiés dans le guide de l'utilisateur des nœuds LoRaWAN ou vous pouvez conserver tous les paramètres par défaut.

 

Accédez à Serveur réseau> Périphérique pour ajouter un nouveau périphérique, cliquez sur Enregistrer et appliquer .

Nom de l'appareil :  valeur arbitraire définie par l'utilisateur

Description :  défini par l'utilisateur, valeur arbitraire

Profil d'appareil :  choisissez l'un des profils correspondants ajoutés auparavant.

Application :  choisissez l'une des applications correspondantes ajoutées auparavant.

D'autres paramètres peuvent être confirmés avec les fabricants de nœuds LoRaWAN.

 

 

Lorsque l'état apparaît comme ci-dessous, cela signifie que les étapes ci-dessus sont effectuées correctement.

 

 

 

Étape 5. Ajoutez une rubrique de données de liaison montante.

Personnalisez les données de liaison montante à publier sur le courtier MQTT et enregistrez les paramètres. Si vous ajoutez « $deveui » sur votre sujet, vous pouvez le remplacer par un EUI d'appareil réel lors de l'abonnement aux sujets. 

Exemple : /milesight/uplink/$deveui

 

 

 

 

Étape 6. Abonnez-vous au sujet du client MQTT pour obtenir des liaisons montantes.

L'explorateur MQTT est un client MQTT complet et il peut être remplacé par d'autres types d'outils clients MQTT (MQTT.fx, MQTT Box, etc.)

Ouvrez l'explorateur MQTT et remplissez les informations relatives au serveur MQTT dans la fenêtre contextuelle.

Nom :  défini par l'utilisateur

Protocole :  mqtt://

Hôte :  adresse du courtier MQTT

Port :  port du courtier

Nom d'utilisateur/Mot de passe : si vous disposez d'identifiants, veuillez les renseigner. Sinon, laissez-les vides.

 

 

Cliquez sur AVANCÉ, copiez la rubrique de données de liaison montante sur la passerelle et collez-la dans l'explorateur MQTT, cliquez sur + AJOUTER .

 

 

 

 

Conservez l'ID client MQTT par défaut, puis cliquez sur RETOUR et cliquez sur CONNECT .

 

 

Après un certain temps, les données seront transmises au courtier MQTT et MQTT Exploerer pourra recevoir les données du serveur MQTT.

 

 

Le format de liaison montante est fixé en json et le contenu est le suivant.

{
  "applicationID": 1,                   // application ID
  "applicationName": "cloud",           // application name
  "deviceName": "24e1641092176759",     // device name
  "devEUI": "24e1641092176759",         // device EUI
  "time": "2020-0327T12:39:05.547336Z", // uplink receive time
  "rxInfo": [                           // lorawan gateway information related to lora
    {
      "mac": "24e124fffef021be",        // ID of the receiving gateway
      "rssi": -57,                      // signal strength (dBm)
      "loRaSNR": 10,                    // signal to noise ratio
      "name": "local_gateway",          // name of the receiving gateway
      "latitude": 0,                    // latitude of the receiving gateway
      "longitude": 0,                   // longitude of the receiving gateway
      "altitude": 0                     // altitude of the receiving gateway
    }
  ],
  "txInfo": {                           // lorawan node tx info
    "frequency": 868300000,             // frequency used for transmission
    "dataRate": {
      "modulation": "LORA",             // LORA module
      "bandwidth": 125,                 // bandwidth used for transmission
      "spreadFactor": 7                 // spreadFactor used for transmission
    },
    "adr": false,                       // device ADR status
    "codeRate": "4/5"                   // code rate
  },
  "fCnt": 0,                            // frame counter
  "fPort": 85,                          // application port
  "data": "AWcAAAJoAA=="                // base64 encoded payload (decrypted)
}
Javascript

 

Si vous devez envoyer des commandes de liaison descendante à partir du client MQTT, veuillez vous référer à l'article Comment contrôler à distance des appareils via MQTT sur Milesight Gateway .

 

 

FAQ

Q1 . Comment envoyer du contenu de liaison montante décodé ou personnalisé au courtier MQTT ?

A1 :  Oui, cela doit utiliser la fonctionnalité Payload Codec sur la passerelle. Articles de référence :

UG56/UG65/UG67 : Comment utiliser le codec de charge utile sur Milesight Gateway

UG63 V1/UG8x : Comment utiliser le codec de charge utile sur Milesight Gateway (ancienne)

 

Q2 . Quel est le dépannage lorsque l'état de la connexion au serveur MQTT est « Déconnecté ».

 

 

A2: 

1) Allez dans Maintenance > Outils > Ping  , vérifiez si la passerelle peut envoyer un ping à l'adresse du courtier avec succès.

 

 

 

2) Vérifiez si votre outil client MQTT peut se connecter correctement au courtier MQTT, puis suivez les paramètres de l'outil client MQTT pour configurer la passerelle.
3) Vérifiez si l'ID client MQTT de la passerelle est en conflit avec d'autres clients MQTT.
4) Vérifiez si la charge du processeur est trop élevée et s'il y a peu de RAM et d'eMMC disponibles.
5) Modifiez la gravité du journal sur Debug et répliquez le problème de déconnexion, puis téléchargez tous les fichiers journaux et envoyez-les à iot.support@milesight.com .

 

 

 

Q3 . Pourquoi l'état de la connexion indique « connecté » mais le client MQTT ne reçoit aucune donnée ?
A3 :
1) Assurez-vous que les appareils ont été ajoutés à la passerelle et accédez à  Serveur réseau > Paquets  pour vérifier s'il y a régulièrement des paquets de liaison montante provenant des appareils.
2) Assurez-vous que les appareils ont été ajoutés à la bonne application.
3) Assurez-vous que le micrologiciel de la passerelle est mis à niveau vers la dernière version. Téléchargez le firmware ici : https://www.milesight.com/iot/resources/download-center/
4) Modifiez la gravité du journal sur Debug et répliquez le problème de déconnexion, puis téléchargez tous les fichiers journaux et envoyez-les à iot.support@milesight .com .