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

 

Like