Groove Music Cube

by Team Groove

Groove Cube: Unlock Your Musical Journey

Our project is an interactive musical installation that connects the world of music and the real world. It is primarily designed to help newcomers who want to create music but lack the relevant production knowledge (mainly acoustic effects) to explore the world of music, understand the function of different instruments in music, and understand the use and operation of acoustic effects.

Our project consists of four cubes, representing different instruments: bass, drums, guitar, and piano. The six sides of each cube correspond to five different styles of playing loops for that instrument, as well as a mute side. When the user places the face of the cube on it, the corresponding audio loop is played. The user can rotate the cube to switch between the different audio for each instrument, as well as understand the role of each instrument in the overall audio.

Also, our project contains three physical interactive devices that allow users to explore acoustic effects such as reverb/echo/equalisation and gain a deeper understanding of these effects by interacting with the devices to change the sound field (e.g., sound field size/sound medium).

In addition, user testing and feedback indicated that the auditory feedback of the cubes was a bit monotonous for beginners. Therefore, we added LED lights for visual feedback. The LED lights change according to the volume of the music, thus enhancing the user's understanding of the music. The volume is softly accompanied by soft music.

Technical Description

Hardware

Arduino Pro Micro/ Arduino Leonardo

These boards use ATmega32u4 which supports native USB MIDI plug and play functionality and keyboard functions. These were used to create a MIDI interface with MPU6050, ADXL345, potentiometers and arcade buttons.

Arduino UNO

Used to control the Frequency sensitive LED matrix with digital LEDs and analog sound sensor.

Slider Potentiometer

This gets +5v and GND and outputs a signal

MPU 6050 module

This module outputs the acceleration, temperature and rotation values (rads-1) with SCL and SDA pinouts

ADXL345 module

This module outputs the acceleration and rotation values (rads-1) with SCL and SDA pinouts

Arcade Style Push buttons with LED
WS2812B Digital LED Strip

This is a programmable Digital LED Strip that can be programmed with FastLED.h libraries. can be controlled with just one pin out from a development board.

Analogue sound Sensor

This sensor gets a +5v and GND and outputs an analog sound signal from another pin.

Software

Ableton Live is a powerful tool through which we have edited/created the audio we need. We connected the Arduino to various buttons/knobs/gyros, sending MIDI signals to Ableton Live and assigning each button to the parameter to be modulated via MIDI mapping. We also used Ableton Live's Session View Clip to assign multiple loops of different styles to each instrument track, triggering the corresponding loop when the cube was flipped.