A unique experience for each user


We designed and engineered an interactive electromechanical machine that generates
sound by integrating machine elements, sound design and technology.





We used tools such as brainstorming, benchmarking, and mood boards to generate ideas, uncover our creative sides, and widen the concept exploration.

We wanted to create a fun and interactive installation. Our vision became to combine computing, electronics, and mechanics to give each user a unique experience and different outputs from time to time.



We chose to document our design process by filming our work from the early prototyping stages to the final design.

As the clip shows, low fidelity prototypes showing proof of concept were continuously iterated and redefined before coming together in the final design.


Screen Shot 2017-10-24 at 14.55.53.png


We developed two main mechanisms for hitting the percussion instruments, one for the snare drum and one for the base drum, each actuated by a solenoid motor.  

The mechanisms were first prototyped low-fidelity, using cardboard, plywood and string. Basic CADs were then created, and SolidWorks motion studies was used to define their dimensions. Parts and links were laser cut and iterated, before the final mechanisms were assembled.



Circuits for the solenoids were constructed, including a diode to eliminate flyback and a transistor to separate the solenoid power supply from the RPi. These components were selected dependent on what was available and best suited to the voltage required by the solenoids. The diagrams below show the various circuit used to control the bass drum, the snare drum and the cymbal. 

Screen Shot 2017-10-09 at 20.40.00.png

Controller & Code

The controller works similarly to a step sequencer. The three horizontal rows each represent a drum and the four vertical columns represent the four counts. The user can select the preferred combinations of drums and counts to create variations of rhythms.

The python code for the BMIC ran on a Raspberry Pi 3. We first wrote a program for one row of the controller and tested this with a simplified breadboard prototype. We then added the rest of the rows and expanded the code to work for all four.


Final design


Please note that this was a group project and not my sole work.
Fellow team members were Matilda Supple, Carla Urbano, and Bea Lopez.