Installer Node-Red et MQTT Mosquitto sur le Raspberry
Pour continuer, vous devez avoir terminé le tutoriel précédent et donc avoir un Raspberry correctement installé avec IP fixe.
Lien vers le TUTORIEL #1
Bien, je ne vous cache pas que ça va se corser un peu, on va commencer à jouer le terminal, à entrer des lignes de commandes
Accéder au Raspberry avec le terminal.
Votre Raspberry est branché, il faut maintenant pouvoir y accéder, pour cela nous allons lancer le terminal (ou l’invite de commande).
Pour Windows, allez voir ici pour savoir comment faire :
Personnellement je bosse avec un Mac, j’utilise iTerm plutôt que le terminal d’origine, mais au final, ça revient au même, il faut lancer le terminal.
Pour ceux sur Mac, vous pouvez le récupérer ici : https://www.iterm2.com
C’est parti, on lance le terminal :
NOTE : Certaines commandes débutent par « sudo », dans ce cas, le mot de passe peut vous être demandé, il s’agit du mot de passe du Raspberry.
Pour se connecter au Raspberry, tapez cette commande, en remplaçant les XXX par l’adresse IP de votre Raspberry (ex: ssh pi@192.168.0.7 -p 22) :
ssh pi@XXX.XXX.X.XX -p 22
Si le mot de passe est demandé (il devrait l’être), rentrez celui par défaut : raspberry.
Vous devriez voir cet écran :
Cet écran nous dit que le mot de passe du Raspberry est toujours celui par défaut, il est temps de le changer.
Tapez cette commande pour lancer l’utilitaire de configuration du Raspberry :
sudo raspi-config
Sélectionnez la première option, et changez le mot de passe.
Installer Node-Red sur le Raspberry
En fait Node-Red est déjà installé, mais nous allons tout de même le mettre à jour en lançant cette commande :
bash <(curl -sL https://raw.githubusercontent.com/node-red/raspbian-deb-package/master/resources/update-nodejs-and-nodered)
Répondre OUI (y) aux questions, et ensuite attendez la fin de l’installation.
Vous devriez avoir cet écran :
Running Node-RED update for user pi at /home/pi on raspbian\n
This can take 20-30 minutes on the slower Pi versions - please wait.
Stop Node-RED ✔
Remove old version of Node-RED ✔
Remove old version of Node.js ✔
Install Node.js LTS ✔ Node v10.21.0 Npm 6.14.5
Clean npm cache ✔
Install Node-RED core ✔ 1.0.6
Move global nodes to local -
Install extra Pi nodes -
Npm rebuild existing nodes -
Add shortcut commands ✔
Update systemd script ✔
Any errors will be logged to /var/log/nodered-install.log
All done.
You can now start Node-RED with the command node-red-start
or using the icon under Menu / Programming / Node-RED
Then point your browser to localhost:1880 or http://{your_pi_ip-address}:1880
Started Wed 17 Jun 07:35:59 BST 2020 - Finished Wed 17 Jun 07:39:26 BST 2020
Il est temps de lancer pour la première fois Node-Red :
node-red-start
Si Node-Red se lance correctement, vous devriez voir ça :
Pour quitter CTRL+C afin de revenir à l’invite de commande.
On veut que Node-Red se lance automatiquement quand on redémarre le Raspberry, s’il faut relancer Node-Red à la main à chaque fois, c’est loin d’être pratique.
Lancez cette commande pour que Node-Red redémarre tout seul :
sudo systemctl enable nodered.service
À partir de ce moment, on peut déjà se connecter à l’interface de Node-Red.
Sur votre Mac/PC, ouvrez le navigateur et entrez cette url (remplacez-les XXX par l’IP de votre Raspberry) :
XXX.XXX.X.XX:1880
Vous devriez avoir cet écran qui s’affiche dans votre navigateur.
Bravo ! Node-Red est fonctionnel…
Joie, allégresse, mais pas trop, il reste encore du boulot
Installer MQTT Mosquitto sur la Raspberry
On y retourne, c’est parti !
Toujours avec le terminal, lancez cette commande pour vérifier que la Raspberry est à jour :
sudo apt-get update
Ensuite on installe Mosquitto (Broker) :
sudo apt-get install mosquitto
Vérifions si l’installation s’est bien passée avec cette commande :
sudo systemctl status mosquitto
Si c’est bon, voilà l’écran que vous devriez voir :
● mosquitto.service - Mosquitto MQTT v3.1/v3.1.1 Broker
Loaded: loaded (/lib/systemd/system/mosquitto.service; enabled; vendor preset: enabled)
Active : active (running) since Wed 2020-06-17 07:50:00 BST; 20s ago
Docs : man:mosquitto.conf(5)
man:mosquitto(8)
Main PID : 973 (mosquitto)
Tasks: 1 (limit: 2200)
Memory: 672.0K
CGroup: /system.slice/mosquitto.service
└─973 /usr/sbin/mosquitto -c /etc/mosquitto/mosquitto.conf
Et comme avec Node-Red, on veut le lancer à chaque démarrage dur Raspberry avec cette commande :
sudo systemctl enable mosquitto.service
Afin de finir, on va sécuriser un minimum l’accès à Mosquitto, étant donné que le Raspberry reste en ligne en permanence, c’est préférable.
Il faut créer un mot de passe avec cette commande, pensez à remplacer NOM_UTILISATEUR par celui de votre choix :
sudo mosquitto_passwd -c /etc/mosquitto/passwd NOM_UTILISATEUR
Ensuite lancez l’éditeur de texte nano avec cette commande :
sudo nano /etc/mosquitto/mosquitto.conf
Et rajoutez ces 2 lignes de textes comme indiqué :
allow_anonymous false
password_file /etc/mosquitto/passwd
CTRL+O pour sauver, validez avec ENTER.
CTRL+X pour sortir de l’éditeur.
Enfin, relancez Mosquitto :
sudo systemctl restart mosquitto
Et bien voilà, j’espère que tout le monde à bien suivit, bravo à tous ceux encore en vie
Dans le prochain tutoriel, nous allons paramétrer MQTT Hub et MQTT Client avec Homey, ensuite nous pourrons (peut-être) nous amuser avec Node-Red.