The Perfect XBMC Installation On Your Raspberry Pi

So you’ve got a Raspberry Pi (or it’s on your wish list) and want to turn it into a truly great media center? You’ve probably already heard the best media center software around, XBMC, runs pretty well on the Pi. This post will show you how to get the most out of XBMC on your Raspberry Pi.

XBMC Confluence Skin

XBMC Confluence Skin

It’s a great time to give XBMC on the Raspberry Pi a try (or tweak your current setup). The final version of XBMC version 12 was released at the start of this year and RaspBMC and OpenELEC followed shortly. These final versions resolved the last issues and bugs ensuring you get the best possible media experience.

[Update 03-03-2013] Added Video playback/screen frequency and HDMI Hotplug settings instructions.

[Update 04-04-2013] Updated text for final version of RaspBMC and OpenELEC and change link to my latest XBMC Shootout.

The ideal setup

To fully enjoy your movies, music, photos and other media I recommend a setup with the following components (next to your Raspberry Pi obviously):

  • Flat screen TV (preferably a recent model that supports CEC)
  • 5.1 or 7.1 AV receiver with HDMI inputs (and support for HDMI audio decoding)
  • NAS for central storage of your movies, music and photos
  • Wired network (at least 100 MBit/s)

A setup like this will give you the best audio and video quality but also has an additional advantage. Because your AV receiver does the decoding of surround audio, like DTS, your Raspberry Pi doesn’t have to. Relieving your Pi from this CPU intensive task allows it to focus entirely on video playback.

This guide assumes your setup looks like this. But if your setup isn’t exactly like this don’t stop reading quite yet. Most of tips and tricks will still help to make your XBMC installation better.

Which XBMC flavor?

The first thing you need to do is pick the best XBMC distribution for the Raspberry Pi. In my latest XBMC on the Raspberry Pi Shootout RaspBMC took over the crown from OpenELEC because of its easy installation and configuration. However looking at performance, start-up speed and time to get up-and-running from scratch, OpenELEC is still the champion. So for this guide we’ll continue with OpenELEC.

If you feel RaspBMC or XBian is better suited for you that’s no problem. Most of the topics covered here will be the same for all three distributions. Some options might be missing and the menus will be different from time to time but you should still be able to follow this guide.


Since OpenELEC doesn’t come with an installer you have to write a disk image to the SD card yourself. Don’t worry. It’s still really straightforward. All you need is a free program called Win 32 Disk Imager which can be downloaded here and an SD card reader.

With Disk Imager installed you can now write a pre-build OpenELEC image (download the file at the bottom of the list) to your SD card. After writing the image the installation is finished and the SD card is ready for use.

If you’re on a Linux or Mac OS X computer you can use the installation instruction on the OpenELEC wiki.


After booting XBMC on your Pi you will be welcomed by the blue colors of Confluence, the default skin. Now it’s time to start configuring your system. If your TV supports CEC you can control your Raspberry Pi with your TVs remote straight out of the box (almost like magic).

Since you need to do some typing and maybe even configure your remote it is nice to have a keyboard plugged in the first few days. Any USB keyboard will do but make sure you plug it in before your power up your Pi (otherwise the keyboard will not always be detected).

System settings

First thing to do is to get XBMC in line with your hardware configuration. Head over to System => Settings => System => Video output and change the video resolution to 1920x1080p and pick 60 Hz as refresh rate (or pick the maximum your TV can handle).

Also you need to adjust the audio settings. The Raspberry Pi has no optical or RCA digital audio outputs but luckily it can play almost all surround formats over HDMI (Unfortunately DTS-MA and Dolby TrueHD are not supported on the Raspberry Pi). Just below Video Output you’ll find Audio Ouptut where you need to check if Audio output is set to HDMI. Also set the Speaker Configuration to 5.1 or 7.1 depending on your setup.

Video Playback

To ensure your Raspberry Pi can keep up in fast moving complex scenes you need to set the refresh rate of your monitor to match that of the video. To achieve this head over to System => Settings => Videos => Playback and set  Adjust display refresh rate to match video to Always.

Now fast moving scenes will play without glitches or stuttering because XBMC no longer has to pull up the refresh rate to 50 or 60 Hz.The only downside is the slightly increased chance of interference patterns. But these are still far less annoying than shocking movement in scenes.

Network settings

XBMC connects to your network just fine out of the box but it uses a dynamic IP address. For several reasons (which I will discus later) it is easier to give your Raspberry a fix IP address.

Under System => OpenELEC => Settings => Network => IP Settings enter an easy to remember IP address which is valid for you network and doesn’t clash with your local IP range. Also enter the addresses of your gateway and DNS servers. (You can find the values for gateway and DNS servers by opening a Command prompt on your computer and type ipconfig /all ).

If this is all abracadabra to you it’s also possible to skip all of this and use the dynamic IP address given to your Raspberry. This address is unlikely to change either but there are no guaranties. You can find your IP address under System => System information.


OpenELEC has a few built-in services that make your life a lot easier and more fun. Let’s explore the most interesting ones.


One of those services is Samba which lets you connect to your XBMC machine like any other Windows network share. I suggest you go to System => OpenELEC => Services and enable this.

With Samba enabled you can manually update to the latest and greatest version of XBMC without loosing your settings. Nice for the daring and impatient. Samba also lets you upload movies and other media to your Raspberry Pi’s storage (SD card or external USB drive). Finally you can also edit your configuration files directly over Samba, a feature we’ll use later on.


When you own an iPad, iPhone or iPod another service definitely worth enabling is AirPlay. AirPlay lets you stream videos, music and photos to your Raspberry Pi directly from your Apple devices. Just like on the Apple TV but for less than half of the price. You can enable AirPlay under System => Settings => Services.


The last service you should enable is the webserver. With this service turned on you can control XBMC with your tablet or phone (discussed later on) or even from a web browser. After enabling the webserver in the Services menu open your favorite browser and navigate to http://openelec.

Remote control

If CEC is supported by your television you’re probably already controlling XBMC with your TVs remote. Great! This works very well out of the box but there are a few issues we need to resolve.

Pushing the right buttons

Your TV only sends CEC signals to your Raspberry Pi it doesn’t use itself. So pressing the Menu button will open the menu of your TV instead of the XBMC menu. This is probably not what you want.

To fix this XBMC has a feature called Custom Mappings. You can use custom mappings to map one of the buttons on your remote you don’t use to become the Menu button for XBMC. I don’t use the color buttons on my remote for XBMC so let’s map Yellow to the XBMC Menu.

To do this you need to create a file called keymap.xml and edit it to have the following content:


As you can see this also maps two other buttons that I find rather useful.

Once your file is ready you need to copy it to the Raspberry Pi using Samba. Open the Windows File Explorer, go to \\openelec\Userdata\keymaps and copy the keymap.xml there (replace openelec with your Pi’s IP address if it doesn’t open). After rebooting your Pi the yellow, green and blue buttons should work.

Tweaking CEC

Like said before CEC works out of the box. Unfortunately it tries to be a bit too smart resulting in some unwanted behavior.

Because I use a Logitech Harmony remote I want to control all devices myself and don’t have the CEC adapter turn on or off my TV. Since we’ve connected the Pi to the TV over an AV receiver letting CEC control my devices probably wouldn’t work perfectly anyway.

Also I sometimes leave my Pi powered on while switching off the TV and AV receiver so I can continue to watch that movie straight away. Since the Raspberry Pi only consumes a few watts I don’t think Al Gore will get too upset reading this. But it is pretty upsetting to find out your remote isn’t working anymore when you come back.

Fortunately you can remedy these issues by changing the CEC adapter settings. The menu you’re looking for is hidden under System => Setting => System => Input devices => Peripherals => Raspberry Pi CEC Adapter.

If you want to control all devices yourself just like me set options 3 and 4 to none and disable options 6 and 8 (see screenshot bellow). Changing the “When the TV is switched off” option to Ignore fixes the problem of the remote not working when you come back.

XBMC CEC Settings

XBMC CEC Settings

Controlling XBMC with a tablet or phone

XBMC can also be controlled with your tablet or smartphone. This eliminates the need for a CEC compatible TV. But even when you do have a working CEC configuration using your phone or tablet to control XBMC is still worth setting up.

All you need to do is to enable the XBMC webserver (see instructions above) and install an XBMC remote app on your phone or tablet. For iOS the official XBMC Remote will do just fine. On Android the official remote seems to be broken but Yatse is a great alternative. Both apps can automatically find your XBMC instance (and only need to do this one time if you gave XBMC a fixed IP address).

Once connected you can use your phone like a regular remote control. But you can also use the library mode to browse through your media collection on your phone and start movies and music directly. This means you don’t need to turn on your TV when you just want to listen to an album. On top of that you can configure XBMC to automatically pause playback when you receive a phone call. How cool is that?

Media Center Remote

When all the ways to control XBMC described above are not an option you’re not condemned to the keyboard quite yet. Microsofts Media Center remotes work well with XBMC too and can be picked up from shops or eBay for little money. Again maybe some custom button mappings need to be created but apart from that it should be plug-and-play.

The Need For Speed

The user interface of XBMC on the Raspberry Pi is known to be a bit laggy. Although things have improved a lot since the first test releases the Pi still isn’t the king of speed. Time to do something about it.

First thing that has to go is the RSS feed at the bottom of the screen. I use my tablet and phone to read my RSS feeds. So why should my Pi burn its precious CPU cycles on showing me stuff I already know? Disabling the RSS feed seriously helps and you can do this under System => Settings => Appearance.

Another way to speed up your Pi a bit further is to overclock it. Normally the Pi runs at 700 MHz but you can make it run up to 1000 MHz with loosing your warranty. Not all Raspberries will run stable at 1000 MHz and you’ll have to figure out the maximum frequency yours can handle. But 800 or 900 MHz should be just fine.

The easiest way to overclock your Pi is to mount the SD card on your PC and edit the config.txt file in the root of the SD card (using WordPad of Notepad++). Find the Overclocking section and edit the frequencies and voltage to match one of the suggested presets. After your finished save the file and boot your Raspberry Pi to enjoy a (slightly) faster XBMC. I run at Medium (900 MHz) without any problems.

Both steps described above will only make the user interface smoother. Video playback is mainly handled by the graphics processor which already does a good job at playing (full HD) videos. So if you’re happy with the standard performance of the user interface you can just leave things the way they are.

HDMI Forever

One of the last things you probably want to do is tell your Raspberry Pi to always use HDMI as output. If you power up your Raspberry before your TV or AV Receiver is switched on your Raspberry Pi doesn’t detect an HDMI output device. As a result it falls back to composite output and you’ll just see a black screen once you turn on your TV.

It’s very easy to solve little glitch. In the same config.txt file as the step above look for the line that says: # hdmi_force_hotplug=1 and remove the # and the first space. After that you need to make sure your Pi also boots in the right resolution otherwise you’ll end up with something like 720P at most. To do so add the next two lines:


and save your changes. This will start your Raspberry Pi in 1080P at 60Hz (and CEA mode). If your TV doesn’t support this resolution or mode pick a supported resolution from this webpage.

From now on your Rasperry Pi will always boot into XBMC using HDMI and your preferred resolution.

Adding and configuring Media

Of course the main purpose of running XBMC is to watch movies and listen to music. In order to do so you need to tell XBMC where to find your media files. You also need to tell XBMC what types of media you’ve got so it can index them properly.

Like said before I assume you’ve got a central place on the network, like a NAS, were all media files are stored. This means you’ll be streaming movies and music over the network to your Pi. This works fine if you setup things properly.

XBMC lets you choose between a few different network protocols to connect to your remote file storage. NFS is the protocol with the smallest overhead and best performance and this makes it the best choice for streaming videos and music to your Pi.

How to set up a NFS file server is beyond the scope of this guide but most NAS systems support NFS out of the box. If you’re using a Synology NAS like I do, you should read this article. While configuring NFS I’d suggest creating 4 different shares: Movies, TV Shows, Music and Photos. This makes it easier to set the content type for indexing later on.

Once your NFS shares are in place you can add them to your XBMC media library. To add your music and photo shares simply go to Music and Photo and select Add source. In the menu that opens click on Scan, select Network Filesystem (NFS) and hit OK. XBMC should now find your NFS server. Click it to show all its shares. Pick the appropriate share, give it a useful name and you’re done.

Adding your video shares works slightly different. Head over to Video => Files => Add Videos… and perform a scan just like you did for Music and Photos. Now pick your Movies share and again give it a good name. Next you get to set the media type for this share. Select Movies and click OK. Also click on Yes in the next menu to immediately index your library. Repeat these steps for your TV Shows as well.

If the previous steps went well you should see two new menu items on your home screen: Videos and TV Shows.


Add-ons are a great way to expand XBMCs functionality even further. They are divide into 4 categories: Video, Music, Photo and Program add-ons. The last category contains add-ons that add features to XBMC itself.

Installing add-ons can be done in two ways. The first way is to go to Photo/Video/Music/Program => Add-ons => Get more… . In this menu you can browse and install plugins from the official XBMC add-on repository.

To install third-party Add-ons or add new add-on repositories you must head over to System => Settings => Add-ons. With the Install from zip file option you can install downloaded Add-ons and even third-party repositories. The Add-ons menu is also the place where you can enable, disable and remove installed Add-ons.

Which Add-ons are interesting for you depends on your personal interests. Many people will probably install the YouTube, Flickr and Picasa add-ons. Another interesting add-on is XBMC Backup. You can use this add-on to backup your entire XBMC configuration to any location XBMC has write access to or even straight to Dropbox. You don’t want to lose your precious configuration. Right?


Another powerful feature of XBMC is Profiles. Profiles let you create different configurations for different purposes. I’ve got a profile called ‘Children’ that only contains videos and music for my kids. On top of that it automatically selects the Dutch audio track if a movie has multiple tracks and never loads subtitles because they’re too young to read anyway.

On the Raspberry profiles have another advantage. Indexing your libraries can slow down your system noticeably especially on devices with limited resources like the Raspberry Pi. Splitting up your media library with different profiles means you’ll only have to scan parts of your entire media collection. Also not having to browse through all albums and movies you’re not interested in helps you to find what you’re looking for a lot faster.

Making new profiles is really easy. Use System => Profiles => Add profile… to create a new profile. Give it a sensible name and just go with the default directory. You can use “Copy from default” if you want to use the same settings as the master profile. You can also reuse the media locations but often it makes more sense to start of fresh.

To switch between profiles you can use the power menu to log off the current user. This takes you to the login screen you also see when you start up XBMC (if enabled under System => Profiles). Unfortunately logging off and on again can be quite slow on the Raspberry Pi. There is a shortcut though. Go to System => Profiles, select the profile you want to switch to and press Menu => Load.

Is that all?

By now your XBMC configuration is pretty much complete. You can finally start to do what you installed XBMC for in the first place: sit back, relax and watch that awesome movie.

“What about Netflix or Hulu?” I hear you say. And the new PVR feature? Or all those other great plugins out there. I know. There is so much you can do with XBMC that I could write an entire book about it (maybe I should…. someday). This guide just covers the most common XBMC pitfalls and Raspberry Pi specific issues.

The best way to discover XBMC is to just play with it. So grab your remote (or phone) and start exploring the menus, libraries and add-ons. You’ll see XBMC is really user-friendly and you will discover lots of great features not discussed in this blog post. And if you get stuck you can always hop over to the XBMC Wiki for further information. Also this great article on Lifehacker contains some of very useful information.

I hope this guide will help you to set up and fine tune XBMC on your Raspberry Pi so you can enjoy it as much as I do. If you think I’ve missed something truly important or have any other suggestions or comments feel free to contact me or leave a reply bellow.

106 thoughts on “The Perfect XBMC Installation On Your Raspberry Pi

    • Great guide Gijs!

      Which 7.2 receiver do you recommend? Cost/Benefit one cause i´m on a budget!

      Thanks in advance!

      • Hi Bucker.

        7.2 setup and on a budget?!? 😉

        I’m using an Onkyo TX-SR313, which is a 5.1 model from their entry level line but I am really happy with it. Probably not as audiophile as some may like but I use it mainly for watching movies and TV Shows and the sound is great.

        So if it is movies you’re after get an entry level Onkyo 7.2 receiver. If music is also important too you probably want to spend some more cash on the receiver (and speakers).

    • Network settings
      IP address.

      “Under System => OpenELEC => Settings => Network => IP Settings
      Doesn’t seem to be there???”
      I’m running openelec 3.2.4
      Having real problems seeing my windows 8 pc from Pi Ok the other way…..???

  1. Fantastic work and good to see a one-stop shop of information from start to finish for setting up the pi. I’ve bookmarked this as a definitive checklist for when I wipe an sd card and want to start from scratch!

    • Thank you ceezey. I will update this post when the final version of OpenELEC arrives (hopefully with an installer this time) so it will still be up to date if you need this guide someday.

  2. Great guidelines! I’ve followed it as well and it ran smooth! For some reason, I couldn’t install the subtitle scraper so I’m trying out RaspBMC installation on a USB drive.

    • Hi Dieter. Good to hear you found this guide useful.

      Don’t think you have to install the subtitle scraper at all though. As far as I can remember it was already installed by default .All I needed to do was set the right subtitle providers.

      • Mine wasn’t installed by default. I did get it working though. RaspBMC didn’t work out so I decided to follow this guide again.
        Installed OpenELEC again & it seemed I messed it up by setting my Network settings without a DNS server (as I thought it would pick a default one provided by my ISP) – left it empty. Bookmark’d this, can’t wait until the final version is here!

  3. One thing that you should include is getting the screen to fit after selecting 1080p. I faffed about with the configuration (left corner, bottom right corner, make a square) before finding the zoom screen function – setting this to -4% had it fixed.

    • For me calibrating the screen (left corner, right corner, square) did the trick. Maybe I’ll add this section and use your zoom function trick.

    • After following this guide? Could be many things…

      – What network do you use? Wireless/wired? What speed?
      – Do you stream movies from a NAS or PC?
      – What kind of movies have you tried (resolution and bit rates)?

      Streaming a full Blu-ray rip over a 54 MBps wireless network isn’t going to work. But 10 GB BR rips over a 100 MBit network shouldn’t be any problem with the latest versions of XBMC on the Raspberry Pi.

      • That was the issue I was having, as expected though with a 38GB movie. The Raspberry performs better than some mid-range notebooks.

  4. Pingback: The Perfect XBMC Installation On Your Raspberry Pi | | cs97jjm3

  5. Hi….I used your step by step guide and it worked very nicely. Thanks for taking the time to document it for the rest of us….much appreciated. I have a couple of small issues. Is there a way to connect a usb drive (mine is a WD 500gb)? I tried to access it but I couldn’t find it with the choices. It is plugged directly into the USB port. Also, is there a way to enable wifi instead of hard connecting? I would like to setup a few for family members. Thanks again.

    • You need a powered usb hub. raspberry pi provides little power to usb ports for things like keyboard and mouse.

  6. Great page! Excellent instructions. However I have a question. Ive bought anither Pi and want the same configuration. Is it possible to copy the contents of the SD card to another SD card so you can plug it into the other Pi or do you have to set it up from scratch?

    • There’s a couple of options.

      A. Install a fresh distribution and use the XBMC Backup add-on to copy your settings from your original installation

      B. There’s an article in MagPI magazine 9 and 10 that describes how to backup your SD card. But it requires a Linux computer.

      C. Download a copy of HDClone from Miray ( The free edition will let your backup and restore your entire SD card. Works on Windows but requires that your new SD card is at least the size of your original one. The free edition has a speed limit though so it will take 15 minutes to grab the image (of my 16 GB card…. 4 GB will take less than 5 minutes)and about the same to write it again. But this is by far the easiest way.

  7. Great article, very helpful for a newbie like me.
    I have 2 USB HDD connected and seem wanted to see whether xmbc would download the movie details like art, synopsis etc.
    also, I understand there is the new xmbc for do, I wasn’t sure whether this was the program I have currently, I presume somewhere there is an about section which shows what version I am using?

    Finally, for about 10tb of movies, can you recommend a NAS that I could or should I just use several USB HDDs and link via a powerd USB hub?
    Thanks once again.

    • If you set the right type when you add the movies on the external disk to your Library XBMC should download fanart, details and synopsis automatically.

      Version number is a bit tricky indeed. Under Settings -> System Info you can see the compile date and version info. If you’ve followed this instruction you are running an XBMC 12 final build.

      10 TB really calls for a big NAS. I’d suggest a 4 (or more) bay Synology or QNAP.

    • Hi Gareth John, did you resolve your problem? I’m having the same issue when playing video files through my external hdd. Video will stop playing or sound will disappear?!? Frustrating! Pls let me know if you found a solution? Cheers, Tracey

  8. Thanks for the Excellent Tutorial

    You mentioned the Raspberry PI can pass through DTS MA and Dolby TrueHD; which does not seems to be true.

    It downgrades DTS MA to DTS and Dolby TrueHD to Dolby.

    Am I missing some settings?

    • DTS MA and Dolby TrueHD can only be played back / passed through if your running the new XBMC AudioEngine.

      The AudioEngine is disabled by default because it doesn’t run smoothly on the Raspberry Pi yet. I’ve tried enabling it under RaspBMC but I ended up with no sound at all.

      So you’re not missing anything and for now it indeed is not possible to enjoy full DTS MA or Dolby TrueHD unless you can get the AudioEngine running onyour Pi.

      • Hello, great tutorial, really helped me out and I hope to actually learn some of this code myself someday… as for the audio! any updates on the AudioEngine now that we are in 2014?

  9. As far as the “add ons/plugins”, if an external hard drive is mounted, can the “add ons” be stored the the external drive?

    • I think you can change the Add-ons location so it should be possible.

      By why do you want to do this? Plugins are very small so you don’t need to worry about your SD card capacity. Or is it to share them between Pis? Then I would still just install them twice… Not that much work anyway.

      • Thanks!

        Intend to go a lill crazy down loading apps, so I’m concerned with bogging down the RAM with all those apps.

  10. Thank you for sharing your Rpi XBMC experiences with us. The main use I want from XBMC is to play music from my ReadyNAS. I can see the music albums but the songs refuse to play. I ripped them to .wma lossless using Windows Media Player. What are my choices for ripping music that I can actually play via the XBMC via the HDMI stereo?

  11. Pingback: RaspBMC vs OpenELEC vs XBian: The Final XBMC Raspberry Pi Shootout

  12. Can you search the internet if the right add-on is put on (If so what is it called)
    I mean can you get an internet browser.

    • Even on Raspbian browsing the web is agonizingly slow. So even if there is a plugin I don’t think it will be very useful.

      You’re better of grabbing your tablet or notebook I guess.

  13. This is a great tutorial and please do keep up the good work!!

    I was wondering how the components of your system were connected together, especially regarding the PI -> AV receiver -> TV. (Do you perhaps have hdmi inputs and output on your AV receiver ?)

  14. Can I get it to work with wi-fi? My RPi is surfing the web nicely with wireless internet with a different SD card. Once the new SD card is inserted XBMC starts fine but has no settings for my WEP key or SSID. I’d run a CAT5e cable to it but its not close to my router – wiring would be dificult.

    • You should look under System -> OpenELEC -> Network. There you can change you network type to WLAN and after that you should be able to enter your network settings.

      Since I run all my Pi’s over wired networks I’ve never tested this myself. But if your wifi-card is supported you should be able to get things up and running.

  15. Hi,

    what a great guide – I’m using XBMC since version 8 and very impressed with improvement and problem fixing, but this guide definitively thought me some additional settings.

    I’ve one question regarding management of a multi-XBMC installation. That means, I have 2 pi and 2 win7 running XBMC accessing the same SQL database and movie/music share. Installing all with same version (same DB versions) is a little bit of a mess. I’ve stopped automatic updates at all but now all add-ons are broken. (had 12.0beta running smoothly on installations).
    Now I wanted to update to lastest stable 12.1 but couldn’t get a raspbmc installer for that version (only newest version available), so I’ve to install nightly builts of PC version which are similar to the actual raspbmc built.


    • Philipp,

      version numbering with RaspBMC is a bit tricky. But if you use the latest version of the installer for a clean install (or use Auto Update for an existing install) you’ll end up with the latest stable version of XBMC. When I go to System Information my RaspBMC install says it’s running XBMC 12.1 (Git 20130317) which indeed is the latest stable XBMC as found on GitHub.

      So if you can run the 12.1 stable on your other systems as well you should be fine. Actually I think 12.0 or any of the RCs should work as well with the shared database. The structure of the library hasn’t changed so it should just work.

      I haven’t tried this myself so no guaranties but I think the best plan is to install 21.1 stable on each system (and maybe go for OpenELEC since you can run it on bot the Raspberry as well as your Windows PCs).

  16. Hi Phillip,
    I can’t believe this “thread” is still being maintained, and questions answered. How awesome. I’m fuzzy on my remote options. I have an older (circa 2010 Vizio) tv that I don’t think supports CEC. I can use my phone, but want the option of a physical remote. I’ll reread this tomorrow and see if I just missed the part where all hope is not lost. Thanks man, lots of good stuff in here.

    • Hi Phillip,

      Don’t worry. There are a few options which will let you use a normal remote.

      In my post I mentioned the MCE Remote by Microsoft. This is probably the easiest way to get up and running. It’s just a matter of plugging in the USB ir receiver and it will work straight away. After that you need to fine tune things a bit as described in this post as well.



  17. Hi Gijs,

    thanks for the fast reply. The problem with different version is not the database structure but the database version. XBMC creates new database with new version number during startup, if the DB version is older than the actual one. So, on the “newer” system I read/write to newer DB, systems which are not up2date read/write to older DB. – you will get inconsistent data!


    • Okay, I didn’t know that. Thanks for explaining. But if you stick with 12.1 Stable on all systems things should work well I guess. Keep auto updates turned off and fingers crossed……

  18. Hello,

    Great manual man!
    Im still missing one section – how to run IPTV. I am watching IPTV on windows XBMC and configuration is very simple, i just have to put my .m3u file into directory
    and i see all channels in my XBMC playlist menu.
    Where should i put this file in ELEC or raspBMC?
    Thanks for reply!

    • Hi,

      all you have to do is make sure Samba is enable under Sytem Settings -> Services. After that open a Windows File Explorer on your pc and type \\[ip-address-of-your-pi] (for instance \\ (in my case)) in the address bar. Now you should see a bunch of directories including Userdata. Just copy your playlist files to Userdata\playlists\video.

      Good luck.


        • You may need to edit the paths in the .m3u if you are accessing files via smb. Instead of:
          it will look something like:
          depending on the share folder path you have set up.
          Note the reversed slashes!

  19. the problem: XBMC 12.1 stable and lastest raspbmc built have different video&music DB versions. (I tested it on Monday)

  20. Hi
    Looks like a great thread. Just got my pi today. I went the easy way as I have no programming knowledge and got a pre installed xbmc card. But after pluging everything in I cant get the wifi to work. Wired lan works but not wifi. Cant seem to find any solution yet . Any help will do. Thanks

    • Strange. Most WiFi adapters should work straight out of the box. Which one are you using? Does it see the adapter under OpenELEC Settings -> Network?

  21. For the life of me I can’t add addons from zip files??? Where do I add these, I only see default options like 4oD player, I want to add iPlayer (BBC), I have the zip, I just can’t add it??? I’m running the latest stable OpenELEC 3.0.0 and XBMC 12.1 on a RPi


  22. Hey folks,

    I have a problem with lan bandwidth. If i get a 1080p file over smb protocol my pi is puffer all 10s for 2s and stops until. Did somebody solved this e.g. by change the MTU? Is it basically solvable or have I to live with it?

    cheers Tino

    • Hi Tino,

      SMB is known for its high overhead (and therefore lower network speeds). So if your server/NAS/host supports NFS switching to NFS might be worth trying.

      Having said that, SMB should work fine as well if you have a clean 100 Mbps network connection. Maybe checking your network configuration wouldn’t hurt either.

      • I was just going to post a problem identical to Tino’s as I’m running the pi wired to my windows 7 box where all the movies are located in my den. Some 1080p files play fine others have a slight stutter or buffering but now that I know about the NFS solution I’ll give that a go. thanks, this has been the best step by step getting my pi setup i’ve found on the web!


        • Just to follow up on the NFS share, I have gotten it setup using HaneWin NFS Server and after opening the necessary ports on the windows machine’s firewall I have shared out the files to the pi via NFS. I tried a 1080p rip of Avengers and it only stuttered for a second at the very beginning, I watched another 5 mins of the movie before coming to the conclusion that it wasn’t choking anymore and was playing smooth. Again, thanks for this blog! It is by far the easiest and cleanest way to setup xbmc on the pi.

  23. Great guide, just a quick tip, if instead of setting a fixed IP on the RPi, set your router to always give the RPi the same IP address. Advantages being able to put the name of the RPi into your browser and having it resolve and also when searching SMB shares, not having to worry about gateway & DNS etc. Setting is normally something like ‘DHCP Reservations’ on your router setup page and selecting the relevant device eg RPi in the DHCP list and clicking add client. Obviously different routers different words, but most routers that I have come across seem to use dnsmasq to handle DHCP & DNS Cache therefore underneath function the same way.

    Works well for me so I thought I would pass it on.

    Great work and thanks


      • Thanks for the advice…. could be quite useful indeed.

        But I run several Pi’s and therefore I prefer the fixed IP apporach. Just take out the card and pop it in another Pi and you’re of. No need to figure out the ip address.

  24. Great post (thanks!!).

    My xbox(1) died after 10 years of loyal service and now I’m suffering xbmc withdrawals. In comparison the PS3 is such a frustrating user experience for me. It’s amazing to see how widespread xbmc has become. I just ordered a raspberry pi and can’t wait to set it up!

    • Great article, thanks very much. It made me finally settle on the Pi as my full time media center after playing with a few other devices and android sticks. Stability, lack of noise and HDMI-CEC also help.

      A couple of tips that improved my experience immensely are:

      Put your Storage partition on a USB 3.0 stick, it speeds up metadata reads and writes, image loading, skin animation, you name it. Sounds strange as the Pi only supports the USB 2.0 spec, but it still beats out my best USB 2.0 sticks.

      There is a really nice Holo themed skin by the author of Aeon Nox called Droid, it’s just simple enough to suit the Pi and seems faster by far then any other skin in the xbmc repo.

      Happy Pi’ing (That sounds rude!)

      • Yes, the Pi is a little mean machine. I’ve been using it as my primary HTPC without any problems.

        Tried the Droid skin but it isn’t my thing. Also I only reached 35 FPS which is remarkably slower than the 50 FPS I get from the default skin. I like Quartz a lot and it’s really fast except when browsing my movie library… Then it is truly slow. So I’ll stick with Confluence for now. Fast enough.

        You’re the fourth person to mention the speed increase you get from a USB 3 thumbdrive. Really must get my hands on one soon…

        • I just picked this rather cheap integral one from amazon.

          It’s strange the droid skin is so slow on your Pi, it’s really quick on mine, But I’m slightly over clocked and the USB stick probably helps. Confluence is very snappy though it is true.

          I just picked up a couple of homeplugs too, I was getting audio glitches streaming over the wifi dongle and the higher bandwidth seems to stop that from happening at all. It’s a shame because apart from the occasional glitch wifi streaming works well. And now of course I am using quite a bit more power with the two homeplugs added in. Oh well maybe a better wifi dongle could also be a solution. I may try that too.

  25. Can anyone mail me his original “confiq.txt”-File with all included comments? I lost my file during overclocking 😉 … thx in advance! Mailto martin(at)

  26. Hi, I use a 
RPi with OpenELEC from Media Center pack for 70 € at Pi Hut.

    The set made the interface between a Syno DS212J and a Sony TV KDL EX500 (2010). In addition to movies, the NAS centralizes data bases of XBMC. Scrape from the iMac makes it faster and SD card RPi is less stressed. Also, Bravia sync from Sony allow to pilot remotely XBMC (I feel better the keys than on the iPhone 🙂

    Finally, I installed a foot switch (for lamp – for supplying the RPi. At startup, it turns on the TV and in the end I turn off the projection system, that turns off the TV. A little “shot” to switch and RPi is isolated from the electric network.

  27. Pingback: » Blog Archive » Raspberry Pi – oppdaterte distros

  28. Hi Guys,

    Definitely the best guide out there. Thanks for taking the time…

    I have been a XBMC user on ATV2 for some time now and have recently bought my first Pi.

    Got MySQL server running between both my Pi and ATV2 through a QNAP Nas,

    I have 2 questions and both of them really relate to speed –

    – You mention in this tutorial that OpenElec is faster than RaspMC; in what ways? Is there any limitations?

    – Should you choose OpenElec, how would you go about adding the USB thumb drive for the storage partition?

    OK, that’s really 3 questions, sorry.

    My Pi works pretty well in Quartz but is woeful when it comes to coverart. I’m not sure but is it possible that MySQL is slowing it down? I am running 1Gb ethernet everywhere so I wouldn’t suggest this is a bandwidth issue.

    Keep up the good work,


    • Hi Ben,

      OpenELEC is the fastest booting distro and in terms of UI speed it used to be the best too. But RaspBMC has made such strides forward the UI speed almost equals that of OpenELEC and this is no longer an argument to stick with OpenELEC.

      Installation and setup of OpenELEC is a whole lot faster but requires more manual operations.

      When it comes to the USB stick for OpenELEC. What you need is a Ext4 formatted USB thumb drive and edit the cmdline.txt to disk=/dev/sda1 . Haven’t tried this myself but it should work.

      I gave Quartz a spin and it was really fast until I started browsing my libraries, just like you describe. Don’t think it’s your SQL connection but more likely the loading of the cover art images. Upgrading to a fast USB stick will probably help a lot. Let me know if you’ve tried it.



  29. Hi,

    Thanks for your great article.

    I have everything set up on my Piusing XBIAN but am finding that movies do not play from the start but jump to either 10 or 20 minutes into the movie.

    I thought it may be a resume issue in the settings menu but can’t find anything.

    I’m sure it’s something really simple that I’m missing but any help/thoughts would be appreciated.



    • Weird. I’ve never experienced or heard of this problem. Doesn’t sound like a Resume issue. Resume works really nice and always asks you if you want to continue from position x.xx .

      I’m afraid the quickest way to fix things is to re-install your XBMC. Shouldn’t take that long with XBian.

      Good luck and hope you can get things up and running soon again.

      • So a month or so in and I love this. I thought I’d stop by ask about where openELEC landed as far as playing video_ts and dvd rips. Hard to get a straight answer from my friend Google.

  30. Gijs,
    Thank you so much for this page. I’ve got my Pi for a few months now but I’ve still not watched one single movie on it because they all looked horrible and I couldn’t find any helpful page on whether this was normal behaviour.
    Thanks to you I’ve now changed the “Adjust display refresh rate to match video” to “Always” and I’m so happy with my little Pi now! =D Video’s finally look like they’re supposed to.
    I’ve also set my refresh rate to 50 because it makes my Frodo run a lot smoother than on 60 Hz.

    • Forget about the 50 Hz bit. Now that I’ve changed it back to 60 Hz it decided to keep on running smoothly…

  31. Hi,

    thanks for that great tutorial.

    For those who looking for a remote i think the best way is to use a flirc USB-Dongle so you can use every IR remote, even the remote of your tv.

    I have an Samsung LED TV here with CEC enabled. Is it possible to tell raspbmc to shut down when the TV is turned off and start the raspberry when the TV is turned on?

    Best regrads,


  32. Great tutorial mate,
    Did you ever try using openelec with touchscreen? I have been searching forums about it, and i think it is very problematic. Do you know anything about it?

    • My only experience is XBMC on an iPad which works pretty well. But you have to keep in mind XBMC was designed for regular remotes.

      What are the specific issues that make the touch interface problematic?

  33. Hi, great tutorial, always use it.
    Bought one of these usb hubs for my external HDD. I have 4 connected currently each one around 2-3TB. The issue I am having is playing 1080p movies. The picture and sound stutters and is very very laggy.
    I wonder if there is a solution at all?
    Is it just better to get a NAS drive? Been playing with the idea of getting a Synology 412+.


    • Hi Gareth,

      surprised to hear you’re experiencing problems with USB mounted HDDs. Usually it’s Lan and WiFi resulting in stuttering and other problems while local (USB) disks do just fine.

      What kind of 1080p movies are you trying to watch? Full 50 GB BR rips will always be a problem on the Pi regardless of the source. H.264 MKVs of 10 GB and smaller should play without a problem.

      Have you ever tried running videos from a network share (on a pc or something)?

      But with the amount of disks you have, it sounds like a good idea to invest in a proper NAS (like the 412+) anyhow. It would be a shame to have so much disk space and make it only available to one Pi.

      • The USB HHDs (around 5 of them) are connected to a USB hub which in turn is connected to the Pi.
        I am trying to watch between 7-12GB 1080p movies, but then again simple avi movies of 700MB also sometimes cause issues.
        Comparing this to connected each HDD to my TV, I get a far better performance when doing this, being able to pause, skip and rewind almost instantly. The Pi struggles with this tho when connected to the USB hub.

        Not tried running from a PC yet, may need advice on how this is done.

        true, I really should get the NAS drive…but a PS4 beckons…..

        thanks for advice.

  34. THanks for the article, useful info. I had my RasPi set up before reading this article, hoping to make some tweaks when I get a chance.

    My media center config is as follows:
    I am streaming (ethernet over power adapter)from a Zyxel NAS. I loaded rasbmc on a Target brand Dane 8gb SD card class unknown.I play movies and music using HDMI on a Toshiba with output to my stereo. Everything worked first time, just had to adjust the screen. I control XBMC using either Yatse on a Nexus 7(preferred) or the TV remote using Toshibas Regza link.

    1) Since the SD card slot is easily damaged (did it already) I am planning to run the pi off of a fast 8gb USB. Anyone think that is unadvisable?
    2) I am thinking about a dedicated remote and the article mentions MS Media Center remote. Has anyone found a better option
    that might not require programming?

    • I bit late maybe…. but here we go:

      1. Yes running XBMC of a fast USB thumb drive is faster than running it of a SD card so it is a good idea. Having said that, the Pi can only boot from SD Cards so you still need an SD card to boot your Pi and start loading file from the USB drive. So don’t break your SD card slot (I’m also afraid it will happen to me as well).

      2. Running a Microsoft MCE remote works out of the box and only requires you to create a small xml file to do the final fine tuning. It probably is the easiest way of hooking up a dedicated remote (which indeed is highly advisable)

  35. Great post, Gijs, it helped me in getting the most out of my Pi with OpenELEC.

    Keep up the good work!



  36. Hi, well detailed post, I am going to try it out. I have a doubt, once Raspbmc is installed and configured as Media Center on the Pi and if an EHD is connected to the Pi, can the Raspbmc be used as Media Center & NAS?


    • You can run your Pi as an XBMC mediacenter and NAS at the same time but I wouldn’t advise to do so. The pi just lacks the power to do both well (simultaneously). You’re probably better of buying a cheap dedicated NAS which will give way better performance and less configuring than a Pi NAS.

      If you still want to go ahead and build a n XBMC / NAS combination, OpenELEC is not the right distro since it is completely stripped down. Go for RaspBMC of XBian instead which are far better at doing non-XBMC stuff.

  37. How do i download from icefilms there is à download button but its says something needs configuring in addon

    • I’ve never looked at Icefilms so I am not of much help to you. But once installed you configure it just like on any other XBMC system I guess. So Google probably is your friend.

  38. I have been applying all of this slowly but do you know anything about fixing two problems I have been having?

    1. I install repo’s from zip files and even the repo’s from the openelec install i open them they are empty. I force refrest, check for updates, force refresh, delete addons15 and reboot. I have tried everything and still some repo’s are still empty. Any help?

    2. Since I can’t get any other repo’s besides default I basically just have youtube so far and in the middle of a video sometime it just stops and exits. or my least favorite it tells me playback failed when I try to open a video. So only some videos work.

    • I had to give up on this setup. It was just too buggy. Some files not supported (even after buying codecs pack) and even if it DID work, there would be odd audio sync problems, or just horrible choppiness. I’d like one of the other, newer Raspberry type bards to try this again. Any suggestions?

  39. I have to admit, I have tried the Rapberry Pi and did not enjoy it very much.
    Using it primarily as a HTPC / media streamer, it was too slow and would not perform as I would want.
    I have a Synology NAS with over 16TB of data so I wanted something with a little more grunt.
    I ended up getting a NUC2820 HTPC, having XBMC on this is a dream and it is by far faster than any PI I have owned.
    It also plays all the files I have, not encountered one file yet which it does, still early days but so far its really great.
    Appreciate not everyones choice, but this is from my experiance.

  40. I have the problem that when playing media (from plugins/media) it results in black screen… when this happens, the web interface says : connection to server lost… only restarting the raspberry pi resolves this issue.
    Any idea?

  41. Hello, then if I connect de Pi to an AV receiver, will I control with tv remote by using CEC? My AV (Pioneer) and my TV(Samsung) are CEC compatible.
    Thank you.

  42. Pingback: New Edugeek Users - Introduce yourself here :) - Page 191

Leave a Reply