Why we did it

Cause it's cool! We all got excited about the idea of a virtual instrument, so we figured we might as well do it.

How we built it

Using the built in gyroscope on an Arduino 101, we were able to develop accurate rotational position tracking. We created spatial definitions for drum planes, and whenever the tracked position goes downwards through a particular drum plane, that drum is triggered. This is then sent to the base laptop, which plays it through the JBL Pulse 2.

Challenges faced

Accounting for a 6DOF system with a gyroscope and accelerometer to track the motion of a rigid body proved to be a formidable task. Additionally, we encountered several unexpected obstacles when trying to interface with Arduino, Android Stuidio, and the JBL Pulse 2 simultaneously.

Accomplishments that we're proud of

We are very happy we were able to connect four different devices together, communicating across protocols and environments.

What we learned

Keep it simple. The more devices that need to be connected, the more room there is for things to malfunction.

Future work

Because this was done in the course of a weekend, there is much room for improvement. Firstly, the overall topology of the design can be simplified down to three devices. Also, position tracking with the gyroscope can be further improved to reduce the error in yaw.

Built With

Share this project: