0. Intro

Published on 05 June 2016

This is a post about pi-zero, usb and explorations.

A series of posts exploring the possibilities of using the Pi Zero as a USB MIDI device. The next post is called "Play us a tune".

Around January 2016 this guide from Andrew Mulholland did the rounds for enabling access to the Raspberry Pi Zero using just a USB cable without needing an ethernet or wifi connection (which comes with neither). As a bonus, this also powers the Pi Zero too.

The magic is possible because the Pi Zero supports USB On The Go mode that allows it to be a USB slave and appear as a peripheral, rather than a host that devices connect to.

Linux already has support for different devices as part of the Linux-USB "Gadget" drivers.

Initially, the setup was quite involved, requiring custom kernels but fast forward a few months and the code now ships with the Pi Zero stock Raspbian distribution and setting it up is as easy as changing a few config files.

This is exciting for loads of reasons beyond being able to programme the Pi Zero using a single cable. You can make your Pi Zero act like a Mass Storage device or it can become a USB MIDI device opening up lots of creative possibilities.

How to do this isn't very well documented, so as I explore the potential of this technology, I'm keeping notes as this series of blog posts to document the trials and errors on the way.