Toilet Roll Light Wall
LED Screen Made of Empty Toilet Rolls
Why?
The initial idea was to find a creative way to reuse empty toilet rolls while having some fun with Arduino and LEDs. I started by gluing together the first block, consisting of 4x3 LEDs connected to an Arduino Nano. As the project progressed, I thought it would be interesting to control the LED screen directly from an Android device. To make this possible, I added a Bluetooth adapter and developed a Android app.As time passed and more empty toilet rolls became available, I continued building one block after another. Eventually, I set a goal to create a 4x4 grid of blocks, totaling 192 LEDs. As I expanded the physical screen, I also enhanced the functionality of the Android app, adding new features to control the growing display.
first 6 blocks |
What Can It Do?
Since the video below demonstrates it clearly, I'll just briefly list the features of the Android app:
- Draw (real-time): Allows real-time drawing on the LED screen.
- Toggle Random LED (Screen Saver): Randomly toggles LEDs, creating a screen saver effect.
- Animation: Includes an editor for creating key-frame animations.
- Font Loop: Displays scrolling text or messages using custom fonts.
- Incoming Sound: Responds to sound inputs, visualizing audio on the LED screen.
- Simple Game Using Accelerometer: A basic game controlled by the device's accelerometer.
front view |
Was There Something Interesting?
Beyond the gluing, soldering, and programming, I encountered a few interesting challenges:
- Custom Protocol: To achieve real-time light display, I had to develop a custom protocol. Each block uses 2 bytes—12 bits are dedicated to the light data, and the remaining 4 bits serve as an identifier within the grid.
- Multiple Bluetooth Devices: I had never worked with multiple Bluetooth devices simultaneously before. Due to insufficient power resources, I had to split the screen and use multiple Bluetooth adapters to manage the setup effectively.
view from the back |
Result
In the end, I created a fairly large screen (76x60cm) with a very low resolution (16x12px) that can only be controlled via Bluetooth using a custom protocol. While the resolution is limited, the screen could serve as a unique piece for an art exhibition or as an unconventional, creative screen saver at home.
You can find the source code here: https://github.com/mbodis/toilet-wall-android
Comments
Post a Comment