Inspiration
The BSH challenge really inspired us, as we are all fans of both music and hardware. The idea of having the little magic box play the StarWars theme or do the Happy Birthday jingle to commemorate the fifth anniversary of Hack Kosice was just too good to pass up on.
What it does
Our progressive web application (PWA) interacts with the STM32 Nucleo board through serial ports via cable. The app checks whether the user is valid e.g. whether they are registered / logged in. Then the user is prompted with the Launchpad which helps create intuitive and groovy tunes and upload them on to the board. On the back-end of the app we have implemented a custom parsing algorithm, ensuring smooth notes can be played on the board. The board itself is interactive and can store multiple jams in our custom made file system.
How we built it
Our design philosophy for this project, both for the looks and the functionality, was simple. A clean, fast solution that is minimal, creative, and pleasant for the potential user to user. Our algorithms ensure only a minimal amount of bits go to waste with every new jingle added by the user. Thanks to our effective compression and powerful file system, the user experience is not hindered by annoyingly slow performance.
Challenges we ran into
It is common to run into issues with making the board beep or light up , which was not our case during this project. Our biggest challenge was not wasting precious resources most notably, the memory of the board. Another fun, yet challenging part was the communication between our application and board. At the end, we got the serial ports working, and were able to stream the musical notes directly to our back-end which was able to handle them accordingly.
Accomplishments that we're proud of
We are mostly proud of how we were able to work together despite not being to accustomed to each others' style. We also found, that we all were very contempt with our decisions on allocation of resources such as time. and, perhaps most importantly, how we helped each other push through times where all hope seemed lost.
What we learned
This challenge helped us advance our skillsets in multiple ways, we learned about new protocols, had to use our math skills, figure out a little bit of music theory, create a artistic and fresh design, build complex backends and rely on the machine instructions happening underneath it all, not just the code we could see.
What's next for JetJam
Next we want to look further into speech - or human communication via the board, currently we offer support for morse code and we are looking for a text to speech solution.
Log in or sign up for Devpost to join the conversation.