Introduction: LED Matrix VU-Meter
The inspiration for this project came from a big electronics youtuber GreatScott, where he created a LED matrix with 100 LEDs. I really wanted to recreate this project so I went and created a matrix with twice the number of LEDs.
Also, I love the look of music being displayed with color, that being a color organ or a vu-meter. So I knew that I would somehow program the matrix to do one of those effects.
The project will be made in these stepps:
- Gathering all the Materials and Tools
- Prepearing the Backboard
- Mounting the LEDs
- Making the square Foam Grid
- Prepearing Acrylic Borders and Front-board
- Making the Controller Board
- Making the Aluminium Stands
- Assembling everything together
- Uploading the sketch and testing
Step 1: Gather the Required Materials/Tools:
To build the LED Matrix you will need the following materials:
- Adressable LED Strip 4m
- Arduino NANO
- MSGEQ7 - 7 band Sound Equalizer
- 5V Power supply (Computer PSU)
- Electronic components (Capacitors, Resistors, Prototype PCB, ...)
- MDF backplate - 10mm
- Diffused white acrylic plexi glass (3mm)
- Black acrylic plexi glass (3mm)
- Foam board (3mm)
- Plastic square profile
- Aluminium T profile
- Solid core copper wire (22AWG) - UTP wire
- Solid core copper wire (10AWG) - Mains wire
- Small wood screws
- Wood/Aluminum glue and super-glue
You will also need the following tools:
- Soldering gear (Iron, Solder, ...)
- Wire cutters
- Jig saw
- Drill (and small bits)
- X-Acto knife
- Angle grinder/cutter
- Hot glue gun + glue sticks
- 1m Ruler
Step 2: Prepare the Backboard:
Let's start this project by making the main back-board on which we will glue the LEDs later. For the material I used 10mm MDF (Medium-density fiberboard) and that is because I had it lying around and it was perfect because it was stirdy yet easy to cut.
First, draw the shape of the rectangle on the plate with a ruler and a pencil so you will have guide lines to follow when cutting. The rectangle shoud have the next dimensions: 65,5cm x 32,5cm. You should make the rectangle as square as possible so that the acrylic borders we will create later will fit.
Next, cut out the shape with the help of a Jig-saw (or a handsaw). Make as straight cuts as possible.
After cutting, clean the edges a little bit with some sandpaper so they will be smooth and straight.
Now use the ruller to draw a grid which will help us place the LEDs in the next step. Draw the first row 16,25mm bellow the top of the board, then draw rows every 32,5mm. The first column is 16,38mm from the left of the board, every next column is 32,75mm from the last one. When finnished, you should have 10 rows and 20 columns evenly spaced...
Step 3: Mount the LEDs:
For this project you will need 4 meters of individually adressable LED's which in my case came in 4 rolls of 60 LEDs per meter and that gave me 240 LEDs (200 needed).
Start by cutting every LED on the pad where it is ment to be cut. You can use scissors or wire cutters to cut them.
Next, use some superglue under every LED and glue them on the grid we drawed in previous step (where the lines intersect). Pay attention to the arrows on the LED's - they need to be orientated the same way in that row. In every next row, the orientation will be flipped so that we will have one continuous path.
Now comes the soldering - a lot of soldering:
We need to connect all the LEDs together in the right way. Get your thin solid core copper wire (in my case I used UPT wires) and start soldering all the horizontal LEDs by connecting GND -> GND, DO (data out) -> DI (data in), 5V -> 5V. When you come to the end of the row, simply connect the last (DO) to the (DI) on the LED that is bellow in the next row.
Now we will drill some vetical holes in the center so we will bring power to the LEDs. Drill one hole per LED in that row so that you will have power comming to every row. We need to have multiple power points because there would otherwisebe be too big of a voltage drop on the last LEDs. Now put the thick copper wire in each hole and solder to coresponding power pin.
Flip the board around and conect all ground and +5v wires comming through the holes. Use the thicker copper wire. Also connect two insulated wires to the power rails - those will then be connected to the Controll Board.
The last thing is to drill a hole at the first LED, put a wire (this one with the insulation on) through it and solder it to the DI (data in) on that first LED.
Step 4: Make the Square Foam Grid:
In this step we will be making the foam grid that will act as a barrirer for the light to be rereflected on the diffused acrylic as a pixel for every LED.
Get your 3mm foamboard and cut out two sets of different strips. You will need 9 long ones and 19 short ones.
Next, you will need to cut some groves in to the strips that wil later be used to join the long and short strips together. The groves need to be 3mm wide and 25mm long. On the long strip there needs to be 19 and on the short ones 9 grooves. See the Foam_Grid.pdf for more detailed instructions.
Now join the strips together, put the short ones vertical and the long ones horizontal.
If you have white foamboard you will need to paint the whole grid black so that light won't be passed through to the next pixel.
Step 5: Prepeare Acrylic Borders and Front-board:
The light comming from the LED needs to be diffused on a semi-transparent material in order to get a square looking pixel shape. For that we will use 3mm white acrylic plate that we will cut to the same dimensions as our back-board: 65,5cm x 32,5cm. That will be our front-board.
Now we need to make the borders that will hold the front and the back board together. This will be done out of 3mm black acrylic. In my case, I didn't have any acrylic at home so I got the borders from a company and they've laser cut them to match my size. If you don't have such a company/laser available you will have to get the acrylic and cut out the pieces by hand.
You need to have two 66,3cm and two 32,3cm long pieces, both 3,8cm wide.
At the ends you need to make grooved cuts so that the borders will sit nicely together. On the long two borders you need to make a 10mm groove in the center and on the short two you need to make a 10mm tab at the center. You make the tab by cuting two grooves at the opposite sides where you created a groove on the long border. Again, you have the Borders.pdf for more instructions.
You now need to drill a few holes for screwing the borders on the back-plate later. Drill 3mm holes 5mm from the end (so that the screw will then go in the center of the backboard). Drill 3 holes on the short borders and 4 holes on the long ones. Space them evenly.
The last thing is to prepare the plastic square profiles that will bond the borders with the front-board and also give the matrix a nice looking bezel. Cut two 66,5cm and two 32,5cm long pieces. Now cut a 45° angle on every edge so that the bezels will later nicely sit together.
Step 6: Make the Controller Board:
The main microcontroller for driving the LEDs will be an Arduino NANO. Since we want our matrix to display a Vu-meter, we need to somehow get the audio signal in to the controller. For that we will use an IC - MSGEQ7 - that is a 7 band audio graphic equalizer.
There are a few different ways you can make the controller board:
- Make the circuit on a Breadboard (No soldering needed)
- Make the circuit on a prototype board
- Make your own PCB by etching it
- Order your PCB from a manufacturer
I've made my board on a prototype board and I will include the schematic and the board file so you can choose which way you want to create your board.
Here is a good Instructalbe if you want to etch your own board: PCB Etching
Step 7: Make the Aluminium Stands:
For our matrix to stand on its own, we need to make something so it wil support it and not fall over. It is a simple design but it gets the job done.
Get your T shaped aluminium profile and cut two lengths of 30cm.
Now make a V slot 10cm from one the end.
Bend the profile 90° where the V slot is and the stands are done.
I've also added a screw and a nut for rigidity.
Step 8: Assemble Everything Together:
We now have every part of the matrix ready to be put together.
Start by joining the borders with the front-board. We will use the plastic square profiles we prepeared earlier. Use hot glue to glue the 3 components together (border - square profile - front-board).
Now align everything together and use a verry small drill bit to drill pilot holes. We can now screw everything together using wood screws.
Let's glue on the aluminium stands using some aluminium/wood glue. Allign them both 10cm from the edge.
We can now screw on the controller board and wire the last few things. The wire we soldered to the data in of the first LED goes to the terminal on the board that says "OUT".
We now need to conect all the grounds and the +5v together using thicker copper wire. Solder two insulated wires to ground and +5v and connect them to corresponding pins on the control board. I have also added a 470uF capacitor to smooth the voltage a little bit.
The last thing is to connect the power from the power supply (ground and +5v dc).
Step 9: Upload the Sketch and Test:
We are now ready for testing.
Upload the sketch I have included and connect an audio cable to the audio pins. Plug in the power supply and play some music. The Vu-meter should start displaying.