In this project, I made an infinity mirror based on a dodecahedron that reacts to sound.
Step 1: Materials
- Arduino Uno
- 3mm thick 100x50cm MDF
- 2mm thick 100x50cm plexiglass
- 3 meter WS2812B LEDstrip 60 LEDs/m
- Sound Detection Sensor Module 3-PIN
- Thin electric wire (10ish meter total)
- Simple rectangular rocker switch
- Wall plug to 5V 8A adapter
- 220Ω resistor
- 1 m^2 one-way mirror film (enough to cover the plexiglass pentagons)
- 470uF 16V capacitor
- Spray paint
- Soldering tools
- Somewhere to laser-cut (you could probably figure saw it with a lot of patience, but laser-cutting is advised)
- Soap and water
- Small window wiper
- Hobby knife/Stanley knife
- Clear glue (or any strong glue you prefer)
- Insulation tape
Step 2: Breadboard Prototyping
When you finally have all your materials it's time for experimenting. Basically just connect all the components following the picture and see if they all function correctly before assembling the whole thing for real. (the screw-like thing on the mic is there to adjust the sensitivity). Don't connect the Arduino to both the power supply and your computer, always just either one.
Step 3: Programming
To program the Arduino you need the Arduino IDE software, which you can download here.
Just copy paste the text into the editor and upload it to you Arduino after installing the FastLED library: Sketch > Import Library > FastLED.
Step 4: Cutting Parts
The next step is to actually produce the parts for the frame. this is where you will need the MDF and the plexiglass. If you're going the laser-cutting route just import the .dxf files into the machine and resize them if necessary (the box around the parts is purely for resizing purposes and does not have to be cut). the frame should be 90x50 cm and the plexiglass should be 64x44 cm. Make sure you do this with someone that is experienced with laser cutters.
After you cut the frame it should all fit together to form the dodecahedron.
Step 5: Soldering
When you're absolutely sure that the breadboard prototype works you can continue with soldering. For this, you need to cut the LEDstrip into 30 sections of 5 LEDs. The routing for the wires (which way they should go and if they should be long or short) can be found on the included picture (white being the strips, blue being returning wires and purple being the ribs that were already routed).
I recommend testing the newly added section with the Arduino to make sure everything works in the end. Also, don't forget that you're soldering LEDs so you can't make the current go through them backward and neither can you solder them parallel.
After you're done with the LEDstrip solder the rest of the electronics to the Perfboard, in the same manner, you connected them with the use of the breadboard (same circuit), just add the switch in the red cable of the power adapter before it's connected to anything else, so you can use this as an off/on switch.
Step 6: Glueing It All Together
After you're finally done doing all the solder work (took me like 8 hours at least) you can finally start to put everything together.
Start with applying the film to the plexiglass pentagons:
- Make sure there isn't any grease or dirt on the plexiglass by washing it with some tissues and spiritus
- Make the plexiglass wet with the soap and water combo
- Peel the protective cover from the film and stick it to the plexiglass
- Go over it with the small window wiper to remove any air bubbles (work from the middle to the edge)
- Let dry
Once you've done all 12, glue them to the frame in the middle of the wooden parts, so the plexiglass sticks out on the inside of the dodecahedron (make sure all the frame parts are in the same orientation and not flipped, otherwise they won't fit together).
Once that's all dry you can start gluing both the now completed sides together and gluing the LEDs to the ribs permanently (I recommend leaving the frame in 2 pieces until you've glued all the LEDs and then glue them together, also, don't forget to clean the inside of the one-way mirrors one last time with spiritus before everything is glued shut).
Let it all dry and you should be done :)