Node-RED has become very popular with makers for IoT projects and home automation. The web-based, open-source system makes it easy to graphically connect devices and services without having to type in code. You simply link nodes together in flows. A thriving community of developers around Node-RED has also emerged offering additional nodes to extend functionality. And now Dogan Ibrahim's book, Programming with Node-RED, offers a broad introduction to the subject.

You too can program with Node-RED

In Programming with Node-RED, Node-RED is installed on a Raspberry Pi, and you are introduced to the various nodes and the interface of the graphical programming system. The many sample flows immediately provide a good idea of ​​the possibilities. You are also introduced to countless useful external flows — for example, to request the weather forecast or to send emails and tweets. Dashboards are, of course, also discussed. Programming with Node-RED

Hardware projects receive special attention from the author. In the chapter on access to the GPIO header, you will learn how to control LEDs and buzzers and to read switch positions. There is also a chapter on reading sensors and showing the data supplied by them on an LCD (I2C or parallel). Even an A/D converter is discussed to read an analogue sensor, as well as serial communication with an Arduino.

At the end of the book, the chapters become shorter. For example, the chapters on communication with an ESP32 board, Amazon Alexa, and Bluetooth have been very briefly dropped. In one case, that brevity may even be dangerous: the author explains in just three pages how you can access your Node-RED installation from outside via ngrok, without mentioning the importance of entering a username and password (which, by the way, is very simple). Fortunately, the chapter on MQTT is more thorough and provides a good introduction to communication between Node-RED and other devices.

Book Details

Author: Dogan Ibrahim
Publisher: Elektor International Media
Price: € 37.50
ISBN: 978-1-907920-88-2