This project is a great mix of hardware & software - building it will give you skills to create and debug a project that's a mix of code and circuitry.

I've written a blog post about some design challenges of the project, the motivation behind the project, what I learned along the way, and some explanation of the difficult parts. You can find that blog post here.

For a quicker how to, checkout the video tutorial: