Aurora - a Budget Wifi Controlled LED Matrix
by Shriyans Gandhi in Circuits > LEDs
4268 Views, 83 Favorites, 0 Comments
Aurora - a Budget Wifi Controlled LED Matrix
Need something to light up your desk? Want to add some colour to your room? Looking for a budget Nanoleaf alternative? Or perhaps a futuristic-looking compact gadget? Well, I was and needed something that was small and inexpensive to make, yet looked like a high-tech gizmo from the future.
Introducing Aurora, an everchanging DIY LED matrix that can display hundreds of cool effects and 2D animations. Its compact size makes it easy to carry and extremely portable. Aurora is controllable through its wifi server, dedicated mobile app and even Alexa, making it convenient to control.
What's more, is that Aurora is completely made from things found around the house. Have some spare addressable LED strips and a wifi board? Add some cardboard, a plastic file binder and an old USB charger, and you can build your own Aurora for less than $10.
This project is also entered in the "On a Budget" contest. If you liked the project, consider voting.
Supplies
Parts
- An ESP32 board Cost: ₹385 / ~$5
- An 8x8 WS2812B LED matrix Cost: ₹400 / ~$5
You could also create your own 8x8 matrix using WS2812B LED strips by sticking them on a piece of cardboard and arranging them in a square. I decided to use the matrix instead because I already had it lying around from an earlier project.
Materials:
- Cardboard
- Rigid paper sheets (optional)
- Sheet to diffuse the LEDs. Translucent plastic sheets, Printing paper, Parchment paper and Acrylic sheets also work well. I used the sheet of an old plastic binder.
- Hot glue gun/ strong adhesive
- Double-sided tape
- Scissors
- Acrylic paint for the cardboard
Others:
- A couple of jumper cables
- A USB cable to supply power.
- Soldering iron and some solder
- Electrical tape
- A wifi connection
Software
Originally I planned to write my own custom software but decided to use WLED sound reactive instead. It did everything I needed and already had many inbuilt 2D effects. As an added benefit it could also easily sync up with the other WLED light strips in my room.
Installation
- Connect the ESP32 Board to your computer using a USB Cable.
- Go to the WLED online installer and install the latest Sound Reactive version.
- Choose the communication port used to connect to your ESP32. Should have the name of the USB to Serial chip on your board (Commonly CH340 or CP2102).
- Click on install and wait for the software to flash into your board. Some boards would require you to hold down the BOOT button during this step.
Configuring WLED
- Use a computer to connect to the Wifi access point "WLED-AP" using the default password "wled1234".
- Configure your Wifi network and set up a mDNS address. The mDNS helps us assign a static ".local" hostname to Aurora. This helps us connect to Aurora at the same address every time it connects to our Wifi.
- Connect back to your network and access Aurora using the configured mDNS address.
- Once the WLED page opens, head to "Config" and then "LED preferences". Here select "2D Matrix Panel" and set the dimensions to "8x8". In the LED output section set the length to "64" and GPIO to 5.
- You can also install the WLED mobile app (IOS/Android) to control it through your phone.
Frame
The idea behind this project was to keep the cost as low as possible. So I decided to make the frame out of an old cardboard box and a rigid paper sheet I got from the packaging of a product. My cardboard box had small edges so I decided to incorporate those into the frame.
- Cut one corner of the cardboard box into a square (9cm) with the edges.
- Cut the edges of another where each edge is 9.1cm.
- Hot glue both parts together and cut out a square of 8 cm from the centre.
- Rigid cardboard often doesn't give clean cuts so I decided to cover the top with a frame cut out from a rigid sheet.
- Make a square of 8.7 cm from the sheet and cut out a square of 7.7 cm from the centre.
- Hot glue this to the top of the frame.
- Paint the whole frame white using three coats of acrylic paint.
Backplate
For this project, I decided not to separate each pixel using a grid but let the light merge together to get 2D animations as smooth as possible.
- Cut a square piece of your diffuser sheet to place in front of the matrix.
- Using the rigid sheet cut out a square of 8.5 cm. Cut a square from the centre of 7.7 cm. This should hold the diffuser in place. Put the diffuser and this piece inside the matrix.
- Cut out a square of 8.5 cm of cardboard to act as the backplate. Cut out a small hole on the back to route the wires through.
- Stick the RGB matrix to this plate using double tape and make sure it fits inside the frame.
- To create spacers use thick cardboard pieces on the sides of the matrix. I went the easy route and stuck multiple layers of double-sided tape together.
- Assemble everything together!
Bringing It Together
To power up Aurora I decided to repurpose a USB Power Supply. I also wanted both the matrix and the ESP32 board to run on the same power supply. I cut a broken USB cable and soldered the VCC and GND to jumper cables.
Connect the RGB matrix to the pins of the ESP32 board as given below.
Power Supply | LED Matrix | ESP32 |
---|---|---|
VCC | VCC/ V+ | VIN |
GND | GND/ V- | GND |
DATA | D5 |
Final Product
What's next?
In the future, I plan on making multiple Aurora's that could sync across the room opening up a whole world of possibilities for animations. I also hope to add an INMP441 I2S digital microphone, making Aurora sound reactive. Now that a compact version has proven to work well I also want to make a bigger version using 16 x16 matrixes made using WS2812B LED strips.
That's it for now, folks. I hope you liked the project. Any questions or feedback are more than welcome in the comments.
Until next time.