Déployer une passerelle LoRaWAN pour The Things Network

Author avatarCédric Goby | Last edit 9/12/2019 by Clementflipo

Déployer une passerelle LoRaWAN pour The Things Network kit-seeed-antenne-logo-ttn.jpg
Installation et déploiement d'une passerelle LoRAWAN pour The Things Network à base du Kit LoRaWAN Seeed avec Raspberry Pi 3
Difficulty
Medium
Duration
2 hour(s)
Categories
Electronics, Energy, Food & Agriculture, Science & Biology, Transport & Mobility
Cost
397 EUR (€)
Other languages:
English • ‎français

Introduction

The Things Network est un réseau communautaire et open source mondial pour l'Internet des objets utilisant la technologie LoRa. Il est possible d'utiliser gratuitement ce réseau mais il est aussi possible d'aider à étendre le réseau en déployant des passerelles.

Dans ce tuto nous allons voir comment assembler et déployer une passerelle LoRaWAN sur The Things Network à partir du Kit LoRaWAN Seeed avec Raspberry Pi 3.

On peut par exemple trouver ce kit ici : https://www.gotronic.fr/art-kit-lorawan-avec-raspberry-pi-3-110060622-27141.htm

Materials

Le contenu du Kit :

  • 1 Raspberry Pi 3
  • 1 pont PRI 2 RHF4T002
  • 1 module passerelle RHF0M301
  • 1 carte microSD 16 Go
  • 1 cordon USB-microUSB20 cm
  • 1 antenne 868 MHz
  • 1 alimentation microUSB 5 Vcc/2,5 A
  • 1 cordon RJ45 20 cm
  • 1 module Seeeduino LoRaWAN avec GPS
  • 1 cordon convertisseur USB-série
  • 1 cordon JST 10 cm

Pour utiliser le Raspberry Pi :

  • 1 clavier
  • 1 câble HDMI
  • 1 écran HDMI

Pour installer et utiliser la passerelle:

  • 1 accès à Internet par RJ45 ou Wi-Fi

Tools

Step 1 - Installation de Raspbian sur la carte SD

Pour pouvoir utiliser le Raspberry Pi il faut au préalable installer Raspbian sur la carte SD. Ce n'est pas l'objet de ce tuto.

Choisissez de télécharger "RASPBIAN" sur cette page : https://www.raspberrypi.org/downloads/

Cette version de Rapsbian ne possède pas d'interface graphique mais nous n'en avons pas besoin.



Step 2 - Assemblage du kit et démarrage

  • Clipper le pont PRI 2 RHF4T002 sur le Raspberry Pi 3
  • Clipper le module passerelle RHF0M301 sur le pont PRI 2 RHF4T002
  • Utiliser le cordon USB-microUSB20 pour connecter le Raspberry Pi 3 au pont PRI 2 RHF4T002
  • Insérer la carte SD dans le Raspberry Pi 3
  • Connecter le clavier, la souris, l'écran et le réseau avec le cordon RJ45 20 cm
  • Connecter l'alimentation microUSB 5 Vcc/2,5 A pour démarrer le Raspberry Pi 3
...L'alimentation microUSB 5 Vcc/2,5 A du Raspberry Pi 3 se raccorde sur le pont PRI 2 RHF4T002



Step 3 - Activer SPI sur le Rapsberry Pi 3

Pour mémoire la version de Raspbian que nous avons installé sur la carte SD ne possède pas d'interface graphique.

Toutes les étapes d'installation sur le Raspberry Pi 3 seront donc effectuées en ligne de commande.

Une fois la session ouverte sur le Raspberry Pi 3 nous allons activer SPI pour le module passerelle RHF0M301.

Pour cela nous allons lancer l'outil de configuration du Raspberry Pi 3 avec la commande

sudo raspi-config

Le menu principal raspi-config apparaît. Pour se déplacer dans les options on utilise les flèches haut et bas. Pour sélectionner une option on utilise la touche "entrée". Pour sélectionner une action c'est la touche "tabulation".

  • Sélectionnez "8 Advanced Options"
  • Sélectionnez "A6 SPI"
  • Sur l'écran suivant "Would you like the SPI interface to be enabled?" sélectionnez <oui> puis appuyez sur la touche "entrée".
  • Sur l'écran suivant "The SPI interface will be enabled after a reboot" appuyez sur la touche "entrée"
  • Sur l'écran suivant "Would you like the SPI kernel module to be loaded by default?" sélectionnez <oui> puis appuyez sur la touche "entrée".
  • Sur l'écran suivant "the kernel module will now be loaded by default" appuyez sur la touche "entrée"
  • De retour sur le menu principal raspi-config sélectionnez "finish" et appuyez sur la touche "entrée".
  • Sur l'écran suivant "Would you like to reboot now?" sélectionnez <oui> puis appuyez sur la touche "entrée".

Le Raspberry Pi 3 redémarre...



Step 4 - Installation et démarrage de la passerelle

Une fois la session ouverte sur le Raspberry Pi 3 nous allons installer le programme "ttn-gateway"

Au préalable il faut faire les mises à jour et installer git sur le Rapberry Pi 3

sudo apt-get update && sudo apt-get upgrade && sudo apt-get install git -y

Pour commencer on récupère le programme d'installation sur Github

git clone https://github.com/ttn-zh/ic880a-gateway.git

On se rend dans le répertoire du programme d'installation nouvellement créé par la commande précédente et on lance l'installation

cd ic880a-gateway
sudo ./install.sh spi

Le programme génère l'EUI (identifiant unique de la passerelle).

Gateway configuration:
Detected EUI B827EBFFFE163F32 from eth0
...Il faut noter l'EUI de la passerelle. Nous en aurons besoin plus tard pour enregistrer la passerelle sur The Things Network.

A la question suivante on accepte le choix par défaut (N) en appuyant simplement sur "entrée".

Do you want to use remote settings file? [y/N]

La ligne suivante permet de changer le nom par défaut de la passerelle (ttn-gateway) sur le réseau local.

Host name [ttn-gateway]:ma-passerelle

La ligne suivante permet de donner une description de notre passerelle

Descriptive name [ttn-ic880a]:Passerelle LoRa du labo

Enfin on peut renseigner une adresse email de contact et la localisation de la passerelle

Contact email: moi@monlabo.fr
Latitude [0]: 42.619646 
Longitude [0]: 4.857127
Altitude [0]: 40

A la fin de l'installation le Raspberry Pi 3 doit être redémarré.

Après ce redémarrage et avec le module Seeed/RisingHF le service ne sera pas lancé, car le script utilise par défaut une mauvaise broche pour réinitialiser le module LoRaWAN.

Pour corriger ce problème et permettre à la passerelle de se lancer normalement à chaque démarrage il faut modifier le fichier /opt/ttn-gateway/bin/start.sh

nano /opt/ttn-gateway/bin/start.sh

Changer la ligne

SX1301_RESET_BCM_PIN=25

en

SX1301_RESET_BCM_PIN=7

On peut ensuite démarrer la passerelle

sudo systemctl restart ttn-gateway.service

Et vérifier que la passerelle est démarrée

systemctl status ttn-gateway.service
ttn-gateway.service - The Things Network Gateway
Loaded: loaded (/lib/systemd/system/ttn-gateway.service; enabled; vendor preset: enabled)
Active: active (running)

La passerelle est désormais fonctionnelle.



Step 5 - Enregistrer la passerelle sur The Things Network

Pour enregistrer votre passerelle sur The Things Network vous devez vous identifier sur le site https://account.thethingsnetwork.org/users/login

  • Rendez-vous sur votre console et cliquez sur "GATEWAYS"
  • Sur la page "GATEWAYS" cliquez sur "register gateway"

Complétez le formulaire sur la page "REGISTER GATEWAY" comme suit

  • Gateway ID : Il faut entrer l'EUI (identifiant unique de la passerelle) généré lors de l'installation
  • I'm using the legacy packet forwarder : coché
  • Description : une description de votre passerelle
  • Frequency plan : Sélectionnez "Europe 868MHz"
  • Router : Sélectionnez "ttn-router-eu"
  • Location ; Renseignez la latitude et la longitude de votre passerelle sur la carte
  • Antenna placement : Indiquez si votre antenne est à l'intérieur (indoor) ou à l'extérieur (outdoor)

Votre passerelle fait désormais partie du réseau The Things Network !

Comments

Draft