We as a group were interested in using MYO armbands to create a cool project. One of our team members came up with an idea of making a drumset after reading the specifications and functions of the device. We thought it fit well with what the MYO kit provided and started working.
What it does
It allows the user to play a virtual set of drums that includes a cymbal, 2 snares, 3 tom-toms, and a bass drum. All of the drums are played by movements recorded by the arm bands.
How I built it
We decided that the Unity game engine was the quickest way to start programming the MYO, as it provided us with an intuitive interface that we could design the drum set in. We imported a open source drum set as a .blend file and used that as a basis for our project. We then connected a MYO band to Unity and used a modified example as the drumstick. We used collisions in Unity to determine when to play the drum sounds. After we were able to create this functionality, we added a second MYO / second drumstick to simulate a drummer playing in real life.
Challenges I ran into
Our first problem was figuring out how to use Unity. None of us had used it before, so we spent most of the first night looking at documentation, searching the internet, and finding out what Unity provided us. We also had the challenge of figuring out the MYO band API, but with the documentation readily available on the MYO website, that was an easier task. We also had to figure out the difficulties of creating sounds based on collisions. It took a while, but we finally got it.
Accomplishments that I'm proud of
We were able to create a working drum set that we were able to play our favorite riffs on. The biggest satisfaction came from being able to recreate Phill Connely's famous drum part in our program.
What I learned
We all learned that game development is a lot harder that it seems. We also learned that no matter how cool a new technology may seem, it still has its limitations, which influences the design of your project a lot.
What's next for MYOwn Drums
Create a more responsive interface, and different kinds of drums. We would also like to incorporate even more gestures that would allow the user to move their drumsticks in the x, y, and z directions rather than just pivot about an axis.