Blog 3 | Node-RED/Binbot Stories | George Lipceanu

 

March 6th, 2026.

This week's sprint focused on discussing ideas for the BinBot and how the team will go about it, while also catching everybody up on Node-RED and how it works in relation to MQTT.

Node-RED - What is it, why use it

Originally developed by IBM and now part of the OpenJS foundation, Node-RED is an open-source, low-code visual programming tool used to connect hardware devices, APIs, and online services, primarily for IoT and automation. Node-RED allows for users to create logic by dragging nodes from a palette to a workspace and wiring them together. It is designed for event-driven applications, meaning flows are triggered by data input like MQTT traffic, HTTP requests, file changes on the device running Node-RED, etc., with the potential to access many more event-driven nodes through Node-RED's Palette Manager. Flows can be imported onto exported from Node-RED machines to be reused on other devices, making Node-RED scalable as well.
    While it may not be the most technically liberating technology to use, its building block format allows for those in a team without much coding experience to get involved in the development of an idea. There are ways to do everything in Node-RED with traditional coded scripts written to files however, the visualised format allows for everyone on a project to instantly understand and get caught up to speed on what exactly is happening within a project

Node-RED Labs

As part of last sprint's SCRUM meeting, I was assigned with the task of getting everyone up to speed with Node-RED. Instead of doing some kind of presentation and going through slides in a traditional sense, I created a practical lab for the lads to import and actually get hands on experience with the technology. I went through how to install Node-RED locally using Docker and also had some Node-RED containers running on an EC2 instance in AWS prepared with the lab flow imported in case Docker was causing issues on their machines, however everyone was able to get Node-Red running eventually so these weren't needed. I then had them import my lab.json which I had emailed the group, which simply contained the following instructions:

- 1. Download Email using Palette Manager
- 2. Create an injection to an email node
- 3. Create an MQTT out connection injection that sends drives to the microbits
- 4. Create an MQTT in connection and separate them from eachother
- 5. Do you have a webhook? Try send some messages to it using injections

    This was pretty much the extent of my knowledge with Node-RED at the time, so I figured I could also find out what the lads come up with as well as learn from what I know already. I let the lads work at these exercises themselves and helped/chipped in on anyone that was looking for direction. This was the general lab layout that was achieved by the end of the lab:

    This flow sets the foundation for a messaging service from the BinBot inputs from the BeeBotte MQTT broker to the actual messaging service itself (email in this case) through Node-RED, with a switch node breaking up the MQTT node into separate microbits, and a function with a 5 second delay going straight to an email. This also sets a baseline for sending outputs from the Node-RED server to the MQTT broker, which is then forwarded to the BinBot microbit. 
    From the other IoT blogs you can see variations in this, plus the addition of new blocks/nodes being used, such as the write to csv/json blocks, which are definitely worth checking out. Regarding the messaging, there are a lot more possibilities and opportunities that Node-RED can provide using it's built-in Palette Manager to install new specialised nodes, which I will be working more on in the next sprint (more details covered in the next section).

BinBot Story (Individual)

The BinBot has been a project that the engineering department has been working on for quite some time and is only getting more advanced as the weeks pass. In line with UN global goals no. 4 (Quality Education), 9 (Industry, Innovation and Infrastructure) and 11 (Sustainable Cities and Communities) the BinBot aims to provide a more positive and interactive way of recycling waste as opposed to traditional recycling bins and further raising awareness for the significance of proper recycling habits, given that over around 55% of our recyclable waste ends up in landfills. On top of this, considering that recycling leads to decreased pollution of our air, land and waters, and less energy wasted from the production of recyclable materials, the BinBot project also lines with UN goals no. 12 (Responsible Consumption and Production), 13 (Climate Action), 14 (Life below Water) and 15 (Life on Land). Hearing about the history of the BinBot and watching it evolve in real time, the passion that the people behind the BinBot have is truly unmatched and, given that my whole final year project is geared towards sustainable development, I am glad to see others with a similar drive for sustainability. I feel honoured to be over at the IoT side of the project. We are all greatly inspired by the BinBot's origins and purpose, and we have many new ideas that we want to bring to life through the BinBot.
    One of the main ideas we would like to bring to life is a scoring/ranked system across multiple bins across multiple schools/organisations. The plan is to do this through how much the recycled bottles are actually worth using a barcode scanner module to get the actual Re-turn price of the bottle and adding it to the score of that specific BinBot. Not only is this a fun way of getting others to recycle, it puts into perspective how much is potentially at risk of being wasted into actual currency, a format that anyone can understand!
    Another idea we came up with is the use of ultrasonic sensors to detect how full the bin is. To calculate this, the internal distance from the top to the bottom of the bin is measured using the ultrasonic sensor and is subtracted from the actual distance as a bin gets more full, with this value being reported back as a percentage relative to its fullness and displayed on a dashboard or even on a ASCII display as progress bar on the bin. 
    Another one of these ideas, and the main task I will be initially working on, is getting stats, scores and reports from the BinBot to messaging services like email and Google Classroom. I have already done many feasibility tests and researched into the possibility of getting the BinBot to email or message a Google Classroom on a schedule or on a specific condition, not only providing a way to read the bin's status but also further bringing the bin to life - it's like the bin herself is messaging the class personally.😀
    The inclusion of encryption is also something that we have discussed and decided needs to be something that will be addressed in the BinBot's communication with the Internet and client devices. Encryption different encryption techniques, standards and algorithms will need to be tested and evaluated in relation to computational power and need for security.
    I see the BinBot as a fun way of getting people excited about recycling once again as opposed to the "ultimate solution" to the world's plastic sustainabilty issues at the moment however, I do see this inspiring others and getting more people interested and actually invested in the sustainabilty goals that this project is contributing towards. I am excited to see how this project goes and how it will look by the end of the semester, since this is a project that I believe in and one that I see going far.

Timeline and Scope

At the moment, I see myself getting my task done within one sprint, which may potentially bleed into the next sprint (given everything goes well). So with that, I will do what I have to do and potentially slot myself into more work that I can find or into ongoing tasks to help out the rest of the team.
    Regarding the scope of the IoT team contribution to this project, from my understanding, the scope of technologies that will be used are as follows:
    - Microbit
    - Node-RED
    - Beebotte MQTT broker
    - Some encryption algorithm/practice to and from client, BinBot and broker
    - Google Classroom API (and other messaging services APIs/webhooks)
    - Barcode scanner module
    - Ultrasonic sensor
    - ASCII display

Block Diagram for Node-RED Messaging



Comments

Popular posts from this blog

Blog 1 - Igor Kapusniak