Adventures of a geek

To content | To menu | To search

Microsoft Techdays 2013

For the 4th year in a row I will be attending the Microsoft Techdays in Belgium: A conference organised by Microsoft for Developers and IT professionals that want to stay up-to-date with Microsoft technology. During these 3 days there are a lot of sessions to attend. To keep track of this, Microsoft released official Techdays apps for windows 8 and windows phone 8.
Ofcourse, if your mobile devices do not run windows or you simply prefer a more efficient way of keeping track of the techdays sessions, I made a public google calendar containing the entire developer track. It works on just about every platform that knows what a calendar is: All you have to do is add/import the following address: boe2.be_utmcqooa0valdla389admcgjlg@group.calendar.google.com

XBMC and RaspBerry Pi: A delicious marriage

Raspberry Pi
a creditcard-sized minicomputer using an ARM11 based chipset. It has moderate processing power and pretty decent video decoding capabilities. Originally designed to teach people to program, it is very cheap (35 euro) and is capable of running ARM based linux distributions. Notable is it's power usage: When stressed, it consumes about 4W power, less than a small lightbulb.

XBMC
A multiplatform media center software package that started out as a homebrew mediacenter for the original Xbox (hence it's name, XBox Media Center), jumped to other platforms (windows, linux) and trough many years of development became the most powerful and versatile free mediacenter software available. XBMC allows you to browse and play a wide variety of video formats, it automatically fetches movie/series metadata from the internet and it's functionality can be greatly expanded trough it's plugin system.

Now, let's shake those together, aaand:

RaspBMC
XBMC on the raspberry pi. Lovely.
Disclaimer: What RaspBMC is doing is not unique. There is nothing stopping you from installing a linux distro on the raspberry and grab the latest xbmc package from xbmc.org. There is another project running (OpenElec) that also offers a linux package with XBMC pre-configured. In the past few months, I tried both RaspBMC and OpenElec and stuck with RaspBMC. The main advantage of these two is that you don't need any linux knowledge to get them running: You boot straight into XBMC.

Installation
This couldn't be easier: Get a decently sized SD card, hook it up to your computer and download the installation tool for either windows or linux. Run the tool to prepare your SD card, then enter the SD card in your raspberry and plug in the power. Make sure the raspberry is connected to your network as it will automatically start downloading and installing the most recent version of RaspBMC. This will take a while, but your patience gets rewarded: 20 minutes later, the raspberry reboots and you have a fully functional mediacenter, waiting for you to add videos. OK, not entirely: You might want to adjust the display and language settings to your liking first.

Ordering around your mediacenter
You CAN attach a keyboard/mouse to the raspberry to control it that way, but 2 issues arise:
  • Most likely you will need a powered USB hub, as the raspberry can't deliver enough juice to power your keyboard by itself.
  • Let's be honest: Who wants to have a keyboard lying in his living room just to watch a movie?
Luckily there are alternatives. If you have a universal remote, you can buy a USB infrared receiver and attach it to your raspberry. There is plenty of documentation on how to bind infrared commands to XBMC commands.
I don't have a universal remote. I DO have an android powered smartphone: Yatse is a virtual remote control that works over your phone's wifi connection and has some really cool tricks up it's sleeve. After indexing your collection on XBMC you can let Yatse request the content of that video library and cache it locally: Doing this, you can browse your entire library on your phone's screen, while XBMC is doing something else. Found a video you want to see? Hit "play" on your phone and XBMC will start playing the video. The android youtube client also gets extra functionality: Browse youtube video's on your phone, found a video you want to show to people? Tap the share button and hit "send to XBMC", tadaa! There is xbmc remote software available for a lot of platforms (including iOS and windows phone), so this will be the solution for most people.

Performance
So how does a tiny, 35 euro computer deal with all of this? Short story: Pretty decently, as long as you don't try to do 2 things at once. Don't try to load a video while your library is scanning, don't decide to add some new plugings while watching that 1080p video. Want to let XBMC search for subtitles online for that currently playing series? Sure, but it'll pauze the video first. Other than that, everything runs nicely, exept for some stuttering in the first 5 seconds of a few HD movies. Nothing that ruins your movie experience.

Basically, if you are looking for a cheap mediacenter: Investing in the above configuration is not a bad idea. It's easy to set up, easy to use, plenty of features and it barely consumes any power.

Welcome

I am a Microsoft .NET software developer born in 1982 and live in Sint-Niklaas, Belgium. Trough training I grew from grumpy IT helpdesk support guy to software developer, a job I've been doing professionally since 2009.

As a teenager I learned the ropes of html/css, did really messy stuff in 'classic' asp and started fiddling with php later. Aiming to get a job in development I took proper full-time training and decided to focus on the .NET platform. These days I can call myself proficient in desktop WPF applications using MVVM, WCF webservices and website development using asp.net and the MVC pattern.