Node-RED est un outil de développement installé par défaut sur la distribution Raspbian, la distribution Linux officielle du Raspberry Pi. Si vous avez décidé de faire fonctionner votre Orange Pi sous Armbian, voici comment installer Node-RED. Pour cet article, nous allons installer Node-RED sur la distribution Armbian et un Orange Pi Lite (version Wi-Fi).
Installer Node-RED sur Armbian
L’installation de Node-RED est maintenant beaucoup plus facile à l’aide du script d’installation. Initialement prévu pour la distribution Raspbian du Raspberry Pi, elle fonctionne à merveille sur la distribution Armbian pour Orange Pi. Connectez vous en SSH ou ouvrez un Terminal et lancez le script d’installation en exécutant cette commande. L’opération dure environ 15 minutes.
bash <(curl -sL https://raw.githubusercontent.com/node-red/raspbian-deb-package/master/resources/update-nodejs-and-nodered)
This can take 20-30 minutes on a Pi 1 - please wait. Stop Node-RED ✔ Remove old version of Node-RED ✔ Remove old version of node.js ✔ Install node.js for Armv6 ✔ Node v6.11.0 Npm 3.10.10 Clean npm cache ✔ Install Node-RED core ✔ 0.16.2 Install extra nodes ✔ Install serialport node ✔ Npm rebuild existing nodes ✔ Add menu shortcut ✔ Update systemd script ✔ Update update 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 Thu 22 Jun 14:42:28 UTC 2017 - Finished Thu 22 Jun 15:00:14 UTC 2017
Démarrer automatique Node-RED au démarrage du Raspberry Pi
Plusieurs scripts très utiles sont installés en même temps que Node-RED :
- node-red-stop, pour arrêter manuellement NodeRED
- node-red-start, pour démarrer manuellement
- node-red-log permet de visualiser le journal d’exécution. C’est pratique en cas d’erreur d’installation d’un plugin
- sudo systemctl enable nodered.service, permet d’activer le démarrage automatique (autostart) de Node-RED au démarrage du système Raspbian
- sudo systemctl disable nodered.service, permet de désactiver le démarrage automatique
Démarrer Node-RED automatiquement avec PM2
Plutôt que de démarrer Node-RED à l’aide d’un service Linux, il est plus facile d’installer le gestionnaire de processus PM2 pour Nodejs. PM2 offre d’autres outils permettant de gérer plus facilement le démarrage, l’arrêt, l’ouverture du journal d’exécution, etc. C’est bien plus souple que d’utiliser les services Linux et systemd. Commencez par installer PM2 avec cette commande :
sudo npm install -g pm2
Si vous ne connaissez pas chemin de Node-RED, exécutez cette commande
which node-red
Sur Armbian / Raspbian, il est devrait se trouver dans /usr/bin/node-red.
Pour lancer NodeRED, exécutez cette commande PM2
pm2 start /usr/bin/node-red -- -v
Pour finir, on enregistre la configuration et on active le démarrage automatique. C’est tout.
pm2 save sudo pm2 startup
Remarque. Si vous n’exécutez pas la commande startup avec l’utilisateur root, PM2 ne pourra pas modifier le script de démarrage.
pi@raspberrypi:~/Desktop $ pm2 startup [PM2] Init System found: systemd [PM2] You have to run this command as root. Execute the following command: sudo env PATH=$PATH:/usr/bin /usr/lib/node_modules/pm2/bin/pm2 startup systemd -u pi --hp /home/pi
Exécutez de nouveau la commande ou exécutez la commande suivante
sudo env PATH=$PATH:/usr/bin /usr/lib/node_modules/pm2/bin/pm2 startup systemd -u pi --hp /home/pi
Une petite vidéo pour résumer tout ça
Pour toute question relative à l’installation et au fonctionnement de Node-RED sous Armbian, ce forum est à votre disposition |
Installation de Node-RED sur Armbian – méthode dépréciée
L’installation de Node-RED sur Orange Pi (ou Raspberry Pi) est différente des autres distributions Linux (comment installer sur Ubuntu 16.04 LTS) puisqu’il va falloir tout installer depuis les sources. Voici comment procéder étape par étape.
On commence par faire un peu le ménage dans le gestionnaire de paquets
sudo apt-get remove -y nodered nodejs nodejs-legacy npm sudo apt-get autoremove -y
Puis on installe Node-RED à partir du code source
curl -sL https://deb.nodesource.com/setup_4.x | sudo bash -
Maintenant les dépendances nécessaires : Node.js, Python, Build
sudo apt-get install -y build-essential python-dev nodejs
Avant d’aller plus loin, vérifions les versions installées
$ npm -v 2.15.11
$ node -v v4.6.2
C’est conforme aux spécifications de Node-RED (ici).
On nettoie le cache de npm et on lance l’installation de Node-RED. Attention, c’est assez long, plusieurs minutes sur un Orange Pi Lite car tout doit être compilé pour le processeur ARM(Allwinner H3@1,2GHz). J’ai rencontré un plantage durant cette étape. J’ai simplement relancé la commande après redémarrage.
sudo npm cache clean sudo npm install -g --unsafe-perm node-red
Enfin on installe les scripts qui permettront de démarrer et arrêter Node-RED
sudo wget https://raw.githubusercontent.com/node-red/raspbian-deb-package/master/resources/nodered.service -O /lib/systemd/system/nodered.service sudo wget https://raw.githubusercontent.com/node-red/raspbian-deb-package/master/resources/node-red-stop -O /usr/bin/node-red-stop sudo wget https://raw.githubusercontent.com/node-red/raspbian-deb-package/master/resources/node-red-start -O /usr/bin/node-red-start
Il ne reste plus qu’à activer le service Node-RED pour permettre son lancement au démarrage d’Armbian.
sudo sed -i -e 's#=pi#=orangepi#g' /lib/systemd/system/nodered.service sudo chmod +x /usr/bin/node-red-st* sudo systemctl daemon-reload
Il ne reste plus qu’à créer le répertoire de fonctionnement de Node-RED.
mkdir .node-red cd .node-red
Vous pouvez en profiter pour ajouter le module node-red-admin.
sudo npm install -g node-red-admin
Tutoriels Node-RED IoT
Pour aller plus loin avec Node-RED, voici d’autres tutoriels et articles qui pourraient vous intéresser
- Node-RED. Ajouter un widget météo au Dashboard connecté à OpenWeatherMap avec du code HTML / Angular
- Node-RED. Créer un dashboard pour objet connecté. Bouton, liste, interrupteur, slider, formulaire (Partie 1)
- Node-RED. Dashboard pour objet connecté. Jauges, graphiques, notifications, template HTML (Partie 2)
- Intégrer un module ESP32-CAM à un Dashboard Node-RED (firmware modifié)
- Node-RED. Sauvegarde automatique des flows par email, FTP, copie locale
- Débuter avec l’Arduino et Node-RED. Enregistrer et afficher des mesures en JSON depuis le port série
- Routeur MQTT Node-RED vers cloudMQTT, accéder à vos modules Sonoff Tasmota
- Test du détecteur de fumée Xiaomi Mijia Honeywell avec Domoticz, notification d’urgence avec PushOver
- Installer Grafana sur macOS et Raspbian pour Raspberry Pi. Exemple de dashboard pour objet connecté MySensors avec Node-RED et InfluxDB
- Plugin HomeKit pour Node-RED, plus facile à utiliser que Homebridge
- Installer Node-RED sur Raspbian Lite (Raspberry Pi Zero WH ou autre modèle)
- Node-RED + MQTT + ESP8266 : comment piloter un système articulé PTZ en WiFi
- Orange Pi : test du package OPI.GPIO pour Node-Red (node-red-contrib-opi-gpio)
- Utiliser Node-RED pour créer une passerelle entre MySensors et Blynk (serveur local)
- ESP Easy + MQTT + Node-RED. Communication bi-directionnelle + dashboard
- Installer Node-Red sur Orange Pi sous Armbian, démarrage automatique [Màj]
- Sécuriser Node-RED avec Nginx et OpenSSL sur Ubuntu 16.04
- Node-RED : installation et configuration sur Ubuntu 16.04 LTS
- Enregistrer les mesures d’un objet connecté MySensors vers InfluxDB à l’aide de Node-RED
- Node-RED+MySensors : stocker des données dans une base MongoDB
Source :
La procédure d’installation proposée dans ce tutoriel est extraite du script d’installation développé par Brian Weet https://gist.github.com/brianweet/a055f344f57cd485dc8b91cd18523002
Mises à jour :
[06/06/2016] – Démarrage automatique avec Armbian
[28/06/2017] – installation à l’aide du nouveau script
- ESP32, broches GPIO et fonctions associées. I/O, PWM, RTC, I2C, SPI, ADC, DAC
- ESP32-CAM. Broches et équipements ESP-EYE, AI Thinker, TTGO T-Camera, M5Stack Timer Camera…
- ESP32-CAM. Quel modèle choisir ? ESP-EYE, AI Thinker, TTGO T-Camera, M5Stack Timer Camera…
- M5Stack Atomic GPS. Tracker ESP32 TinyGPS++, export GPX sur carte SD, visualisation sur Google Maps ou VSCode
- Home Assistant. Installer le snap sur NAS Synology sur une machine virtuelle Ubuntu
- ESP32-CAM. Souder l’antenne externe pour améliorer la portée et la stabilité du flux vidéo
bonjour
il faut un broker MQTT installé?
Bonjour Michel. Non ce n’est pas nécessaire. Il faut Node.js par contre.