Le Protocole Radio RadioShuttle

Logiciel de protocole radio LoRa de pair à pair

Nous n’utilisons pas le protocole standardisé LoRa WAN parce qu’il n’est pas assez efficace, qu’il ne prend pas en charge la communication directe entre nœuds et qu’il est trop coûteux et compliqué pour de nombreuses applications. Nous avons développé un nouveau logiciel de protocole radio LoRa (« RadioShuttle ») qui permet d’envoyer des messages entre des modules LoRa simples de manière très efficace, rapide et sûre. Ce logiciel peut être utilisé comme noeud ou comme station (serveur).

Logiciel de protocole radio (RadioShuttle)

  • Transmission sécurisée des messages (max. 232 octets de données utiles), la réception est confirmée, les données perdues sont automatiquement répétées
  • Transmission de messages non sécurisée (nécessite moins de temps et de courant), pour les applications dans lesquelles des messages sont envoyés régulièrement et un message perdu n’est pas un problème (ex. : données de température)
  • Envoi parallèle de messages différents à des messages identiques ou différentes stations (tout fonctionne en mode économie d’énergie en arrière-plan)
  • ID d’appareil 32 bits unique (numéro d’appareil) par participant LoRa, App-ID 16 bits unique (numéro de programme pour la communication)

Sécurité des données

  • Enregistrement des nœuds sur la station désirée (peut également être désactivé)
  • Connexion avec mot de passe crypté (SHA-256 crypté avec nombre aléatoire)
  • Transmission cryptée des messages (réglable par message)
    Cryptage AES 128 bits, les messages AES doivent être cryptés au minimum 16 octets de données, sans AES des messages plus petits peuvent être envoyés.
    Aucun mot de passe n’est transféré. Sécurisé contre le piratage en enregistrant ou en répétant des messages ou des logins AES cryptés

Contrôle de la circulation aérienne

Les nœuds ne transmettent que si aucun signal LoRa n’est actif sur le canal. Les stations créent un plan de réseau automatique, dont les nœuds et les stations peuvent communiquer quand. (prévu)

Protocole optimisé

  • Transmission des messages dans les 110 ms (SF7, 125 kHz, canal libre fourni)
    • Les messages ne nécessitent que 2 x 12 octets (surcharge de protocole)
  • Facteur d’étalement LoRa par défaut SF7 (SF7-SF12 réglable)
  • Largeur de bande LoRa par défaut 125 kHz (125/250/500 kHz réglable)
    • Des largeurs de bande plus petites offrent une plus grande portée
  • Le réglage automatique de la puissance d’émission permet d’économiser de l’énergie et de réduire la circulation sur les stations voisines

Mode opératoire

  • Fonctionnement en station, alimentation fixe recommandée (12 mA en mode réception, transmission (20 … 100 mA)
  • Fonctionnement en tant que « Node Online », alimentation électrique fixe recommandée
    • Le nœud est recevable en permanence
    • Sinon, les fonctions telles que « Node Offline » (12 mA en mode réception, émission (20 … 100 mA)
  • Fonctionnement en tant que capteur radio (« Node Offline » checking)
    • Le nœud établit régulièrement des rapports afin de recevoir des données, si nécessaire
    • La réception des messages peut prendre jusqu’à 30 secondes
    • Sinon, les fonctions comme « Node Offline » (1 µA en mode veille, fonctionnement sur batterie pendant des années)
  • Fonctionnement en tant que capteur radio (« Node Offline »)
    • Le nœud n’est actif que lorsque des événements doivent être signalés (1 µA en mode veille, fonctionnement sur batterie pendant des années)

Ressources pour la bibliothèque RadioShuttle

  • Besoin de mémoire (à partir du août 2017)
    • 100 kB Flash pour la bibliothèque RadioShuttle avec SHA256 et AES
    • 10 kB de RAM pour le fonctionnement hors ligne/vérification/en ligne du nœud
    • 10 kB RAM pour le fonctionnement de Station Basic (la RAM dépend du nombre de nœuds)
    • 1 MB de RAM pour le fonctionnement du Station Server (Raspberry PI, 10 000 nœuds LoRa)
  • Minuterie précise avec résolution de 0,5 ms et interruption

Cartes LoRa et MCU supportées

  • Semtech SX1276MB1MAS et SX1276MB1LAS (basé sur SX1276)
  • MURATA CMWX1ZZABZ-078
  • HopeRF RFM95
  • Kit de découverte STM pour LoRaWAN (STMicroelectronics B-L072Z-LRWAN1)
  • La carte LongRa
  • La carte ECO Power
  • La carte Turtle

Systèmes d’exploitation supportés

  • Arduino, Arduino Zero o plus récent
  • ARM Mbed OS, MCUs supportés (par ex. STM32L0, STM32L4)
  • Linux (Raspberry PI/Orange PI prevú)

Exemples de configurations

  1. Réseau simple avec station et nœud | image ou PDF
  2. Réseau avec station et 2 nœuds (en ligne/hors ligne) | image ou PDF
  3. Réseau étendu avec station et 5 nœuds (en ligne/hors ligne) | image ou PDF
  4. Deux réseaux étendus communiquant entre eux | image ou PDF

Comparaison des protocoles : LoRaWANTM et RadioShuttle

Une comparaison montre les différences entre les deux protocoles LoRaWANTM et RadioShuttle :

Télécharger l’illustration | image ou PDF

LoRaWANTMRadioShuttle
Concentrateur requisAucun concentrateur requis, la station utilise le module LoRa régulier
Coûts d’utilisation du réseauPas de frais mensuels
Une grande cellule radioBeaucoup de petites cellules radio autosuffisantes
Charge élevée du réseau dans un rayon de plusieurs kilomètresPetits réseaux sans interférence mutuelle
Risque de défaut (Concentrateur)Réglage automatique de la puissance de emission – plus longue durée de vie de la batterie
Temps de latence élevé, facteur d’étalement plus élevé, par ex. SF11 (1320 ms)Faible latence, facteur d’étalement plus faible, par ex. SF7 (120 ms)