So last week I get a call:

“Hey man are you able to write me an Arduino sketch? I got this Arduino Mega, and it just has to move three servos.”

Michael needed it for a performance the next day, he was in Sydney and I Brisbane. I said yes, mostly because it would be very different to the way I usually work. The turn around time was shorter than usual, I hadn’t seen any drawings or the piece he had built and only a rough idea on how it was all wired from his description over the phone. It was a challenge, and a fun one at that.

I replied:

“Yeah sure, I can mash some stuff into my computer. However,  it might be just batshit insane. I just hope it helps out a little.”

With that, we hung up and I warmed up my trusty laptop, and started to whisper sweet syntax into it (OK that last sentence came out a little creepy). It was lots of fun trying to fill in the gaps and write something that would at least give Michael a head start in putting it together. About an hour later I fired off the first version.

The next day I gave him a ring to see how it was going. Michael hadn’t had a chance to look at it, when he got back to me after getting it uploaded - it turns out I had misunderstood the design the first time around. I had four inputs instead of one, an easy fix. Anyway, after a few other tweaks and Michael had it running. Well for a little while.

You can find the source for the piano thing here (the github versions contain a few fixes and improvements that didn’t make it onto the piano). You can see the piano thing in action here. It was a process that was a load of fun, one that made me put a lot more thought into the code and design ahead of time.