About technologies for your digital home

For beginners and tinkerers

Raspberry Pi XBMC

April 3rd, 2014


As it was already mentioned in a previous post about Raspberry Pi, it has some nice features as media player including a powerful enough GPU for decoding Full HD videos.

In this post, I am going to explain to you how to setup Raspberry Pi XBMC.

XBMC has quite a long history and is very well supported, as a result it was accepted to be part of Ubuntu distribution. Probably for those reasons, XBMC is my favourite and one of best media players on Linux (at least to me).

In order to have smoothly running Raspberry Pi XBMC, you will need few things:

  • accessories (power supply, keyboard, mouse, HDMI and HQ audio cables, supported remote control & HDMI enabled TV set)
  • put the heat-sinks on Raspberry Pi mainboard
  • SD card (higher class is better, e.g. Class 10)
  • prepare the operating system (e.g. OpenELEC)
  • over-clock it
  • put needed XBMC plugins
  • play & enjoy it 😉

Install the heat-sinks on Raspberry Pi XBMC

I tried Raspberry Pi XBMC without over-clocking first. However, it appeared that XBMC GUI interface runs mainly using Raspberries CPU (yes, the same 700MHz speed CPU) and it was quite sluggish. So, I decided over-clock it. The over-clock might be combined with overvolting Raspberry Pi.

You should expect an increase in thermal output of the device. Of course, it depends on the chosen over-clocking settings, which will be explained later.

By over-clocking Raspberry Pi, you risk to violate the warranty (sorry, but I am not responsible for the potential damage &  loosing the warranty)! 

But before doing it, you have to prepare properly and install the heat sink set for memory, CPU and power regulator chip. Below, you can see my version of the upgrade:

Raspberry Pi overclocking

You can find such sets of the heat-sinks for Raspberry Pi on eBay or Amazon. If you are going to buy them online, you should also remember that their photos are usually be made using macro mode. So, they will look bigger, at least until they arrive 😉

It happened to me. It might not be so critical to use the smaller size heat-sinks, however I did not want to risk. So, I used some other heat sink, which I originally bought on eBay for my router upgrade (black color in center).

Keep in mind, that in some cases, not all eBay sellers provide the adhesive tape together with the heat sinks. Such details can delay your project and it is better to check them in advance.

Operating System for Raspberry Pi XBMC

Once you have installed the heat sinks on your Raspberry Pi, it is time to fetch an operating system (OS).

The three main options for an operating system for Raspberry Pi XBMC are:

As an example, OpenELEC distribution will be used in this guide.

Here are the steps:

For Windows:

First, you have download the latest OpenELEC SD card image either from  or by using OpenELEC mirror or using this direct link (at the moment the version 4.0 is latest).
Next, download this Disk Imaging freeware software and install it. This software will be used to write the OpenELEC image to SD card.
Extract zip file to get .img file.
Run Disk Imaging Software, select .img file and choose the SD card disk letter, to which the image will be written.

For Mac OS:

First, you need to find your SD card in the system by issuing the command in your terminal window:

diskutil list

After this, you would get something like this:

0: FDisk_partition_scheme *16.0 GB disk4
1: DOS_FAT_32 UNTITLED 16.0 GB disk4s1

Then, you have to write the image to your SD card by issuing the command:

dd if=/Users/Username/Desktop/OpenELEC-RPi.arm-3.2.4.img.zip of=/dev/disk4

The writing process may take few minutes.

After you have finishing writing:

  • remove the SD card
  • put it into Raspberry Pi
  • connect a HDMI cable to your TV & an audio cable
  • connect mouse & keyboard
  • connect the power supply

You should boot your Raspberry Pi XBMC the 1st time.

Raspberry Pi XBMC over-clock

If you would put your SD card into the computer (Windows or other),  you will find the file called config.txt in the root directory of your SD card.

This file contains such sections:

# Overclock mode settings. # 
# default recommended values are: arm_freq | core_freq | sdram_freq | over_voltage
# no overclocking : 700 | 250 | 400 | 0
# mode  'Modest' : 800 | 300 | 400 | 0
# mode  'Medium' : 900 | 333 | 450 | 2
# mode    'High' : 950 | 450 | 450 | 6 
# mode  'Turbo' : 1000 | 500 | 500 | 6
# arm_freq=700 
# core_freq=250
# sdram_freq=400 
# over_voltage=0 
# set to 'force_turbo=1' to disable dynamic overclocking 
#(you can lose your warranty!) 

Basically, that is the place to tweak (but not too much!).

After choosing the over-clock and/or overvolt settings, you will have to just put the SD card back into a Raspberry Pi XBMC and after booting it, the changes should be applied.
I would recommend to start with lower over-clocking scenarios. When you will find what works smoothly enough, that’s great!
The ‘Medium’ is chosen on my Raspberry Pi XBMC, which is enough for me 😉

Using Raspberry Pi XBMC to access DLNA or Samba server

At the end, I will show how to access your DLNA server (or Samba) from Raspberry Pi XBMC.

Basically you have to map your DLNA server into your Raspberry Pi  XBMC. That can be done by going to ‘Videos’ in the main menu. After that, choosing ‘Files’ and next ‘Add Videos’.

You will get such window:

Raspberry Pi XBMC DLNA

You have to click ‘Browse’ and you will get the window where you will click either on ‘UPnP devices’ (DLNA) or ‘Windows network (SMB)’ (Samba shares).

After choosing e.g. ‘UPnP devices’, you should see your DLNA server:

Raspberry Pi XBMC DLNA

In my case, there are two of them 😉

Enjoy your Raspberry XBMC!