Abstract
Rgb Neural Net is an open-source Internet of Things (IoT) project. Physical visualisation of neural network learning using RGB leds, arduino and raspberry pi. A separate computer runs the neural network training program and communicates with the RGB Neural Net over WiFi. It is built using Jupyter Notebook, Arduino, Raspberry Pi, Flask, scikit-learn. The complete source code is publicly available on GitHub under the GNU General Public License v3.0, making it a useful reference for students building an Internet of Things (IoT) mini project or final-year project.
1. Introduction
A separate computer runs the neural network training program and communicates with the RGB Neural Net over WiFi.
This projects goal was to build an intuitive and visually interesting way of seeing a neural network learn. I built it because I had some empty wall space.
2. Objective
Physical visualisation of neural network learning using RGB leds, arduino and raspberry pi.
This project demonstrates how Jupyter Notebook, Arduino, Raspberry Pi can be applied to a real-world Internet of Things (IoT) problem.
4. Technology Stack
- 3D printed nodes
- Fibre optic tubing
- RGB LEDs
- Arduino Uno
- Raspberry Pi Zero
- RGB LED strip driver with serial com script on Arduino
- Flask API server running on Raspberry Pi taking requests and send instruction to Arduino via serial
- Python library that converts SciKit-Learn neural network model into the API requests for the Raspberry Pi
5. System Requirements
General requirements for this technology stack — check the README for exact versions.
- Python 3.8 or later with Jupyter Notebook / JupyterLab (or Google Colab)
- pip for dependencies
- Git (to clone the repository)
6. Installation & Setup
git clone https://github.com/ZackAkil/rgb-neural-net.git
cd rgb-neural-netsudo apt-get install arduinoFull setup instructions are in the project README.
7. Future Enhancements
Suggested extensions you can add to make this your own project.
- Add a mobile dashboard using Blynk or Firebase
- Store readings in a cloud database for history charts
- Add alerts via SMS / Telegram when thresholds are crossed
8. Viva / Review Questions
Common questions examiners ask for projects in this domain.
- Which microcontroller / board and sensors are used and why?
- How does the device send data (Wi-Fi, MQTT, HTTP, Bluetooth)?
- Where is the sensor data stored and visualised?
- How is power consumption managed?
- How would you secure the device and its communication?
9. Source Code & License
This project is developed by ZackAkil and published on GitHub under the GNU General Public License v3.0. Please follow the license terms and credit the original author when you use or modify this code.
Want to build this as your internship project?
Work on an Internet of Things (IoT) project like this with mentor guidance, weekly reviews and an internship certificate from Training Trains, Erode — online or offline.
Apply for Internet of Things (IoT) Internship