Blog Home

This Arduino-powered piano can play just about any MIDI file

Arduino TeamJanuary 16th, 2019

After letting his Arduino languish in a drawer for some time, Brandon Switzer decided to take it out and start experimenting. While he could have started off small, Switzer chose to instead create his own player piano system, completing it at a cost of around $650.

While the details of the project aren’t explicitly spelled out, you can see a time-lapse of this amazing build in the video below. As you can imagine, it took a massive amount of breadboard space to get all the electronics laid out, and a similarly impressive number of solenoids to activate all of the keys. 

Additionally, he had to do plenty of mechanical work, including the cringeworthy job of actually drilling into a what appears to be a functional piano!

In early August 2017 I was looking to partake in some kind of engineering project that would be fun and also help me learn new things. For a long time I had an Arduino Uno that had been sitting in a drawer, and for the first time I took it out to experiment with it and create something new.

For a long time I had been inspired by player pianos — it’s something about the way the keys move on their own that make them so wonderful. I wanted to create something like that — something that didn’t only work but also impressed the viewer — for a cheap cost.

One of my goals in creating this was to show that it’s possible to replicate amazing things for little money, and I think I proved this. While a player system from Yamaha or Pianodisc cost upwards of $10,000, I built my own system for a measly $650. Not only that, but once you buy your $10,000 player piano, you have to purchase extra apps and songs if you actually want to play something on it. Overall I’m very satisfied with the way the piano turned out, and I’m excited to use it in the future.