MusiqueBox is inspired by the lack of convenience for controlling music without reaching for the computer/mobile. We were inspired by the fact that switching music while working on a laptop can require operations that can distract you from what you're working on (e.g. finding the window where the music is playing to hit next/previous), hence very inconvenient. We want to turn music playing into an enjoyable accompanying activity to your main workflow.
What it does
We came up with an idea to design an interface that interacts with Spotify and can help you play/switch tracks without having to visit the application. MusiqueBox can control Spotify on MacBooks with three simple buttons: Play/Pause, Previous, and Next. When one of these buttons is pressed, it will tell AppleScript to give commands to Spotify by using inputs from Arduino.
How I built it
We created MusiqueBox with the following hardware: Arduino Uno board, an Arduino shield, a Grove LCD screen and buttons. We wrote our application in Arduino and AppleScript. First, Arduino receives input from the buttons and give the corresponding outputs to AppleScript, which instructs Spotify to play, pause, skip to the next or previous track. As buttons are pressed, their functions are also displayed on the LCD screen.
Challenges I ran into
We planned to create a more complicated wireless version of MusiqueBox that receives and sends signals through Arduino Bluetooth shield and produce music with amplifiers and speakers. However, the unavailability of this hardware at HackUMass poses a challenge to our project.
We also tried to integrate a pulse sensor to our device and analyze heart rate data to produce the desired music track. We had some trouble integrating the sensor data read and manipulated through the serial port with AppleScript. It could work properly if we have more time to debug, and might serve as a nice complementing feature in the future.
The biggest challenge (and fun), after all, was that only one member of our team has ever worked with Arduino boards before and the rest of us were figuring a lot of things out along the way!
Accomplishments that I'm proud of
We created a beautiful user interface for MusiqueBox and got the basic functionalities working smoothly. We're glad to have achieved our baseline goal of making something that turns music listening into a more enjoyable experience.
What I learned
We learned how to make AppleScript and Arduino communicate with each other through the serial port, and also how to make a user interface that abstracts away the hardware. Team communications and working under time pressure were also extremely valuable experience.
What's next for MusiqueBox
We would love to add Bluetooth option, amplifiers and speakers to make a more advanced version. If possible, we also want to make our MusiqueBox smaller, ideally to the size of a wearable.