Visual Raspberry Pi With Node-Red And TensorFlow

If you prefer to draw boxes instead of writing code, you may have tried IBM’s Node-RED to create logic with drag-and-drop flows. A recent [TensorFlow] video shows an interview between [Jason Mayes] and [Paul Van Eck] about using TensorFlow.js with Node-RED to create machine learning applications for Raspberry Pi visually. You can see the video, below.

The video doesn’t go into much detail since it is only ten minutes long. But it does show how easy it is to do things like identify images using an existing TensorFlow model. There is a more detailed tutorial available, as well as a corresponding video, which you can see below.

As a concrete example, [Paul] uses a simple sensor to identify his cat and then rings a doorbell to frighten the cat off the table. In a more topical example, a system sprays down anyone not wearing a face mask.

Perhaps a more practical example shows a garage door opener that identifies a car by its license plate number. We aren’t sure if it would open for a piece of posterboard with the license plate number written on it, or a picture of the plate.

13 thoughts on “Visual Raspberry Pi With Node-Red And TensorFlow

    1. Having had almost ten years experience in LabVIEW I second this opinion.
      It is super easy for simple programs but a bigger project can easily end up bloated beyond all recognition, even when sticking to “best practice” guidelines.

      1. there is some environments where a graphical programing languages could be more fun but not with complex projects.

        P.D I also hate labview (and even more labview FPGA).

      2. To equate it to LabView is a lack of understanding of the power of node-red. It is more than Labview in the sense that it is also an flow based engine that can be embedded in enterprise grade applications and allows to easily express use cases in a flow model allowing the ability to socialize parts of services and features of an application to a wider audience. it is open source unlike labview.

  1. I work with node-red every day to create prototypes and to deploy code to industrial systems

    preferred method of working with ML from node-red is MQTT data transfer to/from a python container running an ML/NN, however i will have to try this now

    i really recommend people try node-red, even if just for prototyping, it’s a fantastically easy to use tool and the code can be exported via JSON and hosted on basically any platform that can run a docker container

  2. How cloud based is node-red? “Browser-based flow editing” is not exactly a good starting point.

    There are other non cloud options such as Visuino that also seems to be working to support the Pico. My main issue is that you both need to be able to modify the code if needed but also make it easier to program C/C++ code as well as some limited assembly with PIO. Not every visual coding format even allows you to do that!

    Feels like, if done right, this could speed things up while still writing halfway decent code for repetitive elements of the code as well as let you much better view it macro level as well.

    Plus, finally decent actual by default JTAG or other real time support for Arduinos? Yes, please. Setting aside Arduino and AVR or now ARM, even third party Teensy still doesn’t offer this but the $4 / £2.95 Pico does.

    1. Node-RED just runs on my Linux machine using 192.168.1.105:1880 to access the flows from a browser on any machine on my LAN. I don’t think I’d call this “cloud-based”, although it could be run on a server and accessed remotely. I usually think of cloud-based as something I can’t run on my local machine even if I wanted to.

      I like it for MQTT-based operations although the revision control feels very wonky compared to non-visual coding languages. Like any tool, it’s good at some things and not at others so go with what works for you.

      1. That’s helpful to know that it is not cloud exclusive at least. MQTT and IoT type things are not really our main focus but also curious about visual programming in general since it is somewhat new to us over the last year or two and hardware (and software) changes do seem to finally be happening enough to make it more worthwhile to consider.

        Is there some reasonable consolidated website that presents the pluses and minuses of the various types of visual programming programs? Ideally for microcontrollers, IoT and higher level CPU use.

    2. It’s not at all cloud based, I run it on a Raspberry Pi Zero W on my local network. I’m using Node-Red on the Zero to develop my own home automation system. The cool thing about running Node-Red on an SBC like the Pi is you get access to GPIO. I have it reading a DHT11 sensor and sending IR commands through a self-built IR blaster.

Leave a Reply

Please be kind and respectful to help make the comments section excellent. (Comment Policy)

This site uses Akismet to reduce spam. Learn how your comment data is processed.