School: William Fremd High School Discord: YugMittal #8402

Inspiration

In 6th grade, I did LEGO League club, and one part was a research part. For our research part, we were planning on making an app that tries to help with a string instrument player’s fingering by putting LEDs on the places where people are supposed to put the LED and turning on the LEDs. This was meant to help students because music education is growing and the LEDs could help people practice better with fingerings.

What it does

While the original intention was to make the app with LEDs on each row of the string instrument fingering board, it did not work out because the hardware was not available. Instead, this app plays a major/minor scale through media playing code and the user just plays along with the scale. Sure, this looks easy, but this isn’t the full development yet. In the future, I plan to improve and expand on it more(sorry for the disappointment).

How I built it

I used Android Studio and Java to make it. I first made a login screen where people could log in and sign up. I used Firebase to create a sign in and sign up system where people can sign in/sign up with their emails. I then made a screen that tells people which scale should be played and when that scale plays, the person plays along with that scale. The scale is an mp3 that is played by a media player(Even though it doesn't really work)

Challenges I ran into

One challenge was trying to figure out how to play a scale of a note. There were many ways to do this. One was to figure out the frequency of each note and play it. However, I could not do that because Android Studio doesn’t have a good way to play something given a frequency and a wavelength, so I looked for MP3s that played the scales.

Accomplishments that I'm proud of

Learning how to use Java to write Android apps and play MP3 files.

What I learned

One thing I learned was how to play media files with Android Studio and much of the Android studio aspects(Even though it didn't really work well). I also learned about using Bluetooth with Android Studio(even though it wasn't much)

What's next for String Buddy

When I get the hardware, I will use Arduino, LED strips, and a multiplexer to set up the LED fingering board on the stringed instrument. I will also use Flutter to make the app for both Android and iOS. I will also use Bluetooth to communicate with app and Arduino. I will also make the app work not only with minor and major scales, but also with many other pieces(YouTube, PDF, etc). I am also thinking of adding a convolutional neural network that detects which note is which in the music piece, and with that note, it sends the note to the Arduino and makes the Arduino light up the LED.

Share this project:

Updates