# Title Team Members TA Documents Sponsor
34 Music-Visualization and Motion-Controlled LED Cube
Hieu Huynh
Islam Kadri
Zihan Yan
Zhen Qin design_review
Hieu Tri Huynh, NetID: hthuynh2 (
Islam Kadri, NetID: ikadri2 (
Zihan Yan, NetID: zyan9 (

Link to discussion:

Our project’s main inspiration came from a video about an art piece called Kinetic Rain at Singapore’s Changi Airport ( Instead of bronze droplets, we’d like to use a cube of LEDs achieve the same effect and additional features.

Our project goal is to build a LED cube of size 10*10*10 with 2 features. Every 10 LEDs will be on the same wire and the wires will be supported by a board at the bottom. User can switch between these 2 features/modes by using a button on the board.

Feature 1. Music Visualization. This LED device will have microphones attached to it to listen to sound. The sound will then be analyzed and four values will be extracted and used: frequency, amplitude, angle of arrival, and beat per minute (bpm). The LED colors and configuration will adjust based on these values.

Frequency: Frequency will be used to control the color of the LED. To extract the frequency from the sound, we will use the short-time Fourier transform (STFT) algorithm.

Amplitude: Amplitude will be used to control the brightness of the LEDs.

Angle of Arrival: This value will be used to control the orientation of the animation of LEDs. In order to detect the angle of arrival in a 2D plane (0-360 degrees horizontal plane), we will use 3 microphones, and the Generalized Cross Correlation – Phase Transform (GCC-PHAT).

Beat per Minute (BpM): This value will be used to control the speed of the movement of the animation.

Feature 2. 3D Snake game. We would like to implement a 3D Snake game so that a user can play using this LED device. The Snake will be controlled by a user hand's motions.

Display: We will turn off all the LEDs except the Snake (initially a small length of LEDs) and the fruit (one LED with different color) to create the movement of the Snake. The length of the snake will grow larger as the user captures more fruit.

Hand Motion Detection: We will create a pad that has 4 proximity sensors on the board. The user will move his hand above the pad, and we will use the values of those sensors to detect the motion. For example, if the user moves his hand from Left to Right, the sensor on the left will change its value before the sensor on the Right. Based on those difference in value of 4 sensors, we will be able to detect the motion of user’s hand in 6 different directions (Up, Down, Left, Right, Outward, Inward)

We are thinking of using either a Raspberry Pi or an Arduino for the controller unit. We will design the circuit for the LEDs.

Our project is innovative and unique because it serves as an aesthetic project, like the Kinetic Rain project, with the additional use of sound as an input to affect the LED's color and shape. There are a few existing products that can visualize music using a sound's frequency, but none of them extract the previously mentioned 4 categories (frequency, amplitude, angle of arrival, and BpM) to influence the LEDs. Therefore, by extracting all 4 values listed above, we will be able to create a more visually appealing and accurate device.

Furthermore, by implementing the 3D Snake game, we will fully utilize the resource (LEDs) to increase the entertainment factor of the device and will also encourage the user to interact with it, as well as having a more hands-on use.

Drum Tutor Lite

Zhen Qin, Yuanheng Yan, Xun Yu

Drum Tutor Lite

Featured Project

Team: Yuanheng Yan, Zhen Qin, Xun Yu

Vision: Rhythm games such as guitar hero are much easier than playing the actual drums. We want to make a drum tutor that makes playing drums as easy as guitar hero. The player is not required to read a sheet music.

Description: We will build a drum add-on that will tutor people how to play the drums. We will make a panel for visual queue of the drum and beats in a form similar to guitar hero game. The panel can be a N*10 (N varying with the drum kit) led bar array. Each horizontal bar will be a beat and each horizontal line above the bottom line will represent the upcoming beats.

There will be sensors on each drum that will fire when the drum heads is hit. The drums will be affixed with ring of light that provides the timing and accuracy of the player according to the sensors.

Of course with a flip of a switch, the drum could be a simple light up drum: when the player hits the drum, that particular drum will light up giving cool effects.

The system will be on a microprocessor. Or for more versatile uses, it could be connected to the computer. And a app will be written for the tutor.

Project Videos