I was in a bit of a tinkery mood today. Originally, I was intending to spend the day coding after once I was finished with groceries. Instead, I wanted to work with my hands. Coding and typing on a keyboard simply doesn't satisfy that craving.

I had the idea a few days ago to take one of the Raspberry Pis and put the media center software XBMC on it. Parts:

I had these lying around the house, but it didn't occur to me to combine them with XBMC as the application. I was originally planning on using this particular by with a small TFT touchscreen I had purchased months earlier. I never quite came up with a good use for it. The front end for a weather station or a car audio system came to mind, but I never could quite find the time to code the UI. XBMC, however, was easy and might have some uses in the house. 

Installation was pretty easy. The hardest part was figuring out why the darn thing would crash on inserting the USB stick and why it would constantly mount and unmount the drive. Originally, I used the Chromecast's USB power adapter since it was conveniently nearby. After turning the Pi off, I found out the adapter was only putting out 950mA. The Pi takes about 700mA by itself. The WiFi and the USB stick was probably too much for the adapter to supply. I swapped out the adapter for a 2.1A HP Touchpad USB adapter. Bingo, no crashes. 

I also discovered that, like the Chromecast, you can control XBMC from an Android app. A Nexus 7 already lives in the same room as the TV so it seemed a natural fit.

To my surprise, several house members expressed interest and asked if they could load some music on the USB stick. Given XBMC's ability to scan several USB sticks and add them to a unified library, I'm already thinking of possible expansions:

  • A new power strip for the TV. Our current set-up only provides three AC outlets. We're already exceeding that, but this will make it much more problematic.
  • A powered USB hub. This would make expansion easier and take some of the current draw off of the Pi itself.
  • Some Pi heatsinks. It's a small thing, but it would prolong the life of the device.