ITP Camp 2022

Node-RED: the ULTIMATE visual interface for IoT beginners

Session Leaders: Yonatan Rozin


Tags: #Node-RED #visual #interface #IoT #networking #devices


Created By: Yonatan Rozin

OSC, websockets and MQTT (and more) are all fantastic tools for wireless device networking, but none of these options will be feasible in 100% of cases. Some tools are only compatible with one protocol or the other, and you may find yourself having to mix and match (retrieve the data from an OSC message, send it through a websocket, etc.) You may also want to log your data to a database or a local file on your computer.

For all these applications, you could use node.js, but as a novice programmer I found the node workflow (though incredibly helpful and powerful,) rather intimidating to use, especially for the relatively simple ideas I had in mind.

The alternative is Node-RED. It is the ultimate visual interface for routing flows of information between various devices through various protocols. Each Node-RED node adds a specific functionality based on the original node.js API and you connect them together using lines to create visual flows of messages.

Learn how to:

  • Set up a Node-RED server
  • Receive OSC, socket and MQTT messages from an Arduino or web-based app and...
  • Change them, split them, combine them, route them, send them OR...
  • Log them to a local SQL database or text file
  • Find and install nodes not included by default to implement other node.is functionality

Bring (if you want to follow along):

  • A laptop with Node-RED installed
  • (recommended) Some familiarity with at least 1 device networking protocol. I’ve linked to the camp sessions that’ll be covering those above.
  • (highly recommended) A basic knowledge of JavaScript

Resources:

Node.js download

Installing Node-RED

MQTT remote (QR code link)

MQTT broker interface (to view MQTT messages)

SQLite node JSON file

SQLite database viewer online

Node-RED for Raspberry Pi