Node-Red

Node-RED is een programmeer tool om diverse hardware devices, API’s en online services met elkaar te ‘verbinden’ op een nieuwe en interessante manier.
Het bied een browser-based editor, die het gemakkelijk maakt om flows te maken, gebruik makend van een uitgebreid scala van mogelijkheden.
Ik maak gebruik van Node-RED om een Homey Dashboard te genereren (update volgt), om op die manier op een simpele wijze de status van devices te kunnen zien en wijzigen.
Ik heb ervoor gekozen om Node-RED om een Raspberry PI te installeren, naast de bestaande Mosquitto (MQTT) installatie, die ook nodig is voor het Homey Dashboard.
Node-RED installeren
De installatie van Node-RED maakt gebruik van Node.js en NPM. Via onderstaande commando wordt het script gedownload en uitgevoerd. Het script werkt op elk Debian gebaseerd operating systeem. Om er zeker van te zijn dat npm in staat is om binary modules te bouwen, dient npm geïnstalleerd te zijn
sudo apt-get install build-essential
Vervolgens starten we onderstaand script.
bash <(curl -sL https://raw.githubusercontent.com/node-red/linux-installers/master/deb/update-nodejs-and-nodered
Het script zal onderstaande stappen uitvoeren:
- verwijderen van een pre-packaged versie van Node-RED en Node.js als deze aanwezig zijn.
- installeren van de laatste versie Node.js LTS release gebruik makend van NodeSource. Als het script detecteert dat Node.js al geïnstalleerd is via NodeSource dan zal het controleren of het minimaal Node 8 is.
- installeren van de laatste versie van Node-RED via npm
- optioneel zal het een aantal nuttige Raspberry Pi specifieke zaken installeren om Node-RED als een service te draaien en te beheren
Als een Service laten draaien
Het installatie script voor de Raspberry Pi zorgt ervoor dat Node-RED ook als een service kan draaien. Dit betekent dat het in de achtergrond draait en automatisch gestart kan worden na een herstart. De volgende commando’s zijn hiervoor beschikbaar:
- node-red-start – start de Node-RED service en laat de log resultaten zien.
- node-red-stop – stop de Node-RED service
- node-red-restart – herstarten van de Node-RED service
- node-red-log – dit laat de log resultaten van de service zien.
Autostart on boot
Om ervoor te zorgen dat Node-RED automatisch opstart wanneer de Raspberry Pi wordt gestart (of na een herstart) kan je de service automatisch laten starten via onderstaand commando:
sudo systemctl enable nodered.service
Om de autostart weer uit te schakelen, kan via onderstaande commando:
sudo systemctl disable nodered.service
Node-RED Editor starten
Wanneer Node-RED draait, kan je Node-RED benaderen via een browser. Gebruik hiervoor onderstaand commando, waarbij [IPADDRESS] het IP Adres van de Raspberry Pi is waarop Node-RED draait. Je kunt het IP Adres vinden via “hostname -I”
http://[IPADDRESS]:1880