Sound Reactive RGB Speaker
by Pave Workshop in Circuits > Speakers
2824 Views, 34 Favorites, 0 Comments
Sound Reactive RGB Speaker
This is a slightly different instructable for me seeing as this was made for a school project. It's a plywood and acrylic floor speaker that lights up in time with the music you play through it. The shell is made up of alternately layered plywood and acrylic, lined with some neopixels for a real-time RGB light effect.
Although the panels are mahogany, the material brief for this project was based around plywood. I find plywood to be a very interesting material; when polished it can become a striking aesthetic feature rather than just the industrial sheet material we all know. I wanted to show off this flowing pattern around the whole curved back of the speaker and wherever else possible (such as the join between the front and top panel).
I'll illustrate the making process for this particular speaker below, but I think the lighting effect could be applied to many shapes and sizes of speaker cases. Thanks to the many different types of neopixels on offer, there's a lot you could do in the way of lighting effects: I've already made another speaker using rings of LEDs around each speaker driver too. For simplicity in this project, I up-cycled a set of old speakers, but you could buy drivers and an amplifier separately.
[Play Video]
(Apologies for the background noise in the demo)
Designing
I wanted to incorporate lighting into the speaker, and so it was obvious I needed a translucent/transparent material in some areas to let light through. I stacked some thin MDF and acrylic, and I really liked the effect it gave when light was shone through it (see above video). So I went about modelling the shell profile (the curved back of the speaker). I opted for a curved back because I thought corners wouldn't disperse the light as nicely. I modeled the design in sketchup - I changed from a single flat base to a slotted 4-leg base which could slide together or be disassembled in seconds for storage. I created a 2D shape which would be cut out in plywood and acrylic to make the shell.
Lots of Cutting
It goes without saying that with this many pieces to cut, CNC machinery was a necessity.
35 pieces were cut out of 12mm plywood. (CNC router)
35 pieces were cut out of 5mm acrylic. (Laser cutter)
This meant the speaker would theoretically be 595mm tall or about 23 inches.
I used clear acrylic, which was easily made frosted by sanding the surface; however after I waxed the speaker I ended up making it clear again, so frosted acrylic is probably better. If the acrylic is too clear, the individual LEDs can be seen and the light does not spread well either - this is no good.
I used a chisel and some p-60 sandpaper to remove the tabs and wood chips from the cut outs.
Lamination
I tried gluing layers together with clamps, but the layers were sliding around and I could only do a few at a time. With this quantity of layers to laminate, it proved worthwhile to make a quick gluing jig from dowels drilled into a piece of scrap wood.
I used 5 minute epoxy because it set clear and I had a lot to do in a short space of time. If the mixture isn't mixed very well, it will stay sticky for a long time and will lead to delamination in the worst cases. The reason why I used glue and not bolts or other fixtures was because I think these metal fixtures would have ruined the light effect, seeing as they would be visible when light shines through the shell. That being said, maybe a pattern of dowels could be made into a feature.
More Laminating
I glued the plywood and acrylic alternately, in groups of 4. I then glued these sections together one by one until the whole shell was assembled. The inside ended up being messy, but this is not a problem.
Sanding the Shell
I then began the long process of sanding the exterior to a smooth finish. I progressed through the grades of sandpaper from p-60 all the way up to 1200-wet and dry. It's the time spent at the low grits that counts, though. I applied several coats of yellow beeswax to give the shell a nice sheen and very smooth finish to the touch - the plywood feels like plastic which I think is really cool.
Front Panel
The front panel was cut on a CNC machine from a mahogany off cut. I installed the speaker drivers from the front, and then soldered the drivers from the back. The speaker drivers and amplifier were taken from a set of used stereo speakers that had roughly the same internal volume as my speaker. I have essentially created a mono speaker here since the left and right channels are in the same speaker, one above the other. The tweeter is connected in parallel with the woofer with a capacitor across its terminals. I found choosing drivers to be difficult and expensive, so this was the easier option for me.
Lighting
Before I finished the enclosure, I began work on the light effect. The arduino code is partly taken from a VU meter sketch for the neopixels, which has been adapted for my purpose, such as the use of an IR remote. I have supplied the code but it is by no means perfect. I connected a microphone to the arduino as well as 3 Adafruit neopixel strips. These draw a lot of current and so needed their own power supply, mounted with brackets on the inside of the case. I also cut out a top panel out of the same mahogany at this point and installed the amplifer through the top by creating a small cut out. I used a remote lying around for cycling through the lighting effects (constant white light that can be used for reading, sound reactive white light, sound reactive multicoloured light, and off). The great thing about arduino and neopixels is that the possibilities for the lighting effects are almost endless.
I found that the IR circuit was interfering with the realtime light effect, so I used two arduinos in the end - one to pick up IR signals and feed boolean states to the other arduino - this one was responsible for the lighting effects. (The two .ino files are supplied on the last page, I will update these in the future if they are unclear).
Closing the Case
I glued together some plywood blocks to create a curved plywood piece that would smoothly hide the joint between the two edges. Using plywood for this piece allowed me to incorporate the desired aesthetic into all faces of the speaker. The bottom panel is identical to the top panel, without the cut out. It also has a plywood piece which will fit into the stand. The final step in closing the case was gluing the front panel into the shell with silicone. An airtight seal is ideal here. I used screws for the top and bottom panels since I thought it was too risky sealing the speaker permanently if the electronics stopped functioning. I connected an IR receiver to the second arduino, and hid the receiver in the bottom plywood section in the second picture.
Making a Stand
The stand is comprised of two pieces which interlock and grip the speaker at four points. Not only does beeswax make the surface smooth, but it also helps to make the pieces slide in and out with ease.
Final Thoughts
I'm pleased with how this speaker turned out - especially the illuminated back. The purpose of this instructable was to demonstrate that you can take a 2D profile and create a laminated product for an interesting effect. I would have liked to add bluetooth capabilities and perhaps a phone dock on top of the speaker too to further improve the concept.
Thanks for reading!