ECE434 Project - LED Matrix

Revision as of 11:43, 10 November 2019 by Grinstba (talk | contribs) (Hardware)
Jump to: navigation, search

Team members: Brock Grinstead and Blake Emmert

Grading Template

I'm using the following template to grade. Each slot is 10 points. 0 = Missing, 5=OK, 10=Wow!

00 Executive Summary
00 Installation Instructions 
00 User Instructions
00 Highlights
00 Theory of Operation
00 Work Breakdown
00 Future Work
00 Conclusions
00 Demo
00 Late
Comments: I'm looking forward to seeing this.

Score:  10/100

(Inline Comment)

Executive Summary

LED Matrix Spectrometer

Our project involves interfacing with six LED matrices and audio input. The goal is to take the audio input, perform a frequency domain analysis, and then display the frequency spectrum onto the LED matrices as a spectrometer.

Give two sentences telling what works.

Give two sentences telling what isn't working.

End with a two sentence conclusion.

The sentence count is approximate and only to give an idea of the expected length.


If you have hardware, consider Small Build, Big Execuition for ideas on the final packaging.

Installation Instructions


The project is located on GitHub here:


Here are the links for the specific hardware we used for this project.

We borrowed a six panel LED Matrix, power supply, pocket beagle, USB audio dongle, and pocket scroller cape from Dr. Yoder.

  1. LED Matrix -
  2. Pocket Beagle -
  3. Micro USB Cable -
  4. 16 GB Micro SD Card -
  5. Pocket ScrollerV2 Cap -
  6. TODO Power Supply -


Go to and follow the instruction to download the latest falcon player image and then flash it to one of your SD cards. Make sure to download the Beagle Bone image and not the Raspberry Pi image. Also, we were not running the falcon player off of eMMC.

Once falcon player is installed, boot up your Beagle Bone and ssh into it with the following credentials:

  • username: fpp
  • password: falcon

By default the image we are running doesn't allow a root login. You will need a root login in order to get internet access on the Beagle Bone. In order to setup internet access, first ssh into the Beagle Bone with the default username and password listed above. The root access directions below are modified from,_Bone

Then run the following commands on the Beagle Bone

bone$ sudo bash
root@bone# nano /etc/ssh/sshd_config

Search for the line

#PermitRootLogin prohibit-password

and change it to

PermitRootLogin yes

Save the file and quit the editor. Restart ssh so it will reread the file.

root@bone# systemctl restart sshd

And assign a password to root.

root@bone# passwd

Now open another window on your host computer and enter:

host$ ssh-copy-id root@bone

and enter the root password. Test it with:

host$ ssh root@bone

You should be connected without a password. Now go back to the Bone and turn off the root password access.

root@bone# nano /etc/ssh/sshd_config

Restore the line:

#PermitRootLogin prohibit-password

and restart sshd.

root@bone# systemctl restart sshd
root@bone# exit
bone$ exit

You should now be able to ssh as root into the Beagle Bone.

TODO Once you have root access,

Once connected to the Beagle Bone, go ahead and clone our GitHub project from

Once the projected has cloned, run the script to install the needed packages for the project to run.

User Instructions

Many of the following images and directions come from Mark A. Yoder's documentation found here

In order to light up an entire 32x64 LED panel white (Red, Green, and Blue all on), you will need at least a 5V 4A power supply. Each panel has a single power connection and a data in and data out connection. The data in connections control how the panel operates and the data out connections allow you to daisy chain the panels together to created a large display. The image below shows the connection.

Once the falcon player image has been flashed to an SD card, insert the SD card into your Beagle Bone and connect it to a host computer via USB cable. Browser to and you will see the falcon player control panel shown below.


Here is where you brag about what your project can do.

Include a YouTube demo the audio description.

Theory of Operation

Give a high level overview of the structure of your software. Are you using GStreamer? Show a diagram of the pipeline. Are you running multiple tasks? Show what they do and how they interact.

Work Breakdown

Date Milestone Notes
10/26/2019 Controll LED matrix with Falcon Player Brock primarily downloaded and installed Falcon Player to the pocket beagle. Blake primarily setup the LED matrix with the power supply and configured Falcon Player to control the LEDs.
10/29/2019 Gain root access to the Falcon Player Brock primarily gained root access to the pocket beagle and allowed the pocket beagle to connect to the internet through a host computer
11/4/2019 Control the LED matrix via a script running on the pocket beagle Blake and Brock worked together to figure out how to control the LED matrix with a python script. The script is found in the test folder of the project GitHub and is called
11/9/2019 Have audio input and frequency domain calculations working
11/12/2019 Have the audio spectrometer fully working
11/16/2019 Add some flashy features to the spectrometer display
11/18/2019 Final documentation

List the major tasks in your project and who did what.

Also list here what doesn't work yet and when you think it will be finished and who is finishing it.

Future Work

Suggest addition things that could be done with this project.


Give some concluding thoughts about the project. Suggest some future additions that could make it even more interesting.