|For more info and help, check out the XBMC Raspberry Pi support forum|
The Raspberry Pi is an ARM powered, credit card sized computer developed in the UK by the Raspberry Pi Foundation for educational and hobbyist purposes. The low power computer is mass produced at very low prices and the high number of units sold gives it massive community support. As an XBMC HTPC, the Pi supports full 1080P video playback, supports most major codecs, most if not all XBMC add-ons, and a reasonably responsive GUI.
1 Installing XBMC
The easiest way to install XBMC on an R-Pi is to use one of these pre-made OS/XBMC packages:
2 Frequently Asked Questions
- See: Raspberry Pi FAQ
3 Maximizing performance
- Use a lightweight skin such as the default Confluence, Amber, Quartz, Bellow, or xTV-SAF.
- Turn off RSS feeds and any scrolling text options for your skin.
- Use an SD card with good rewrite speeds. The class of the SD card doesn't always mean it will be faster, as that speed listing is for sustained reading and writing. For XBMC/Kodi random read/write speeds are more important. The class 4/6 Samsung SD cards sold on the Raspberry Pi Store (the ones with NOOBS on them) typically have much better performance than most class 10 cards. For more information about SD card speeds, check out this excellent thread on the R-Pi forum: http://www.raspberrypi.org/forums/viewtopic.php?p=53159
- You can also try to use a combination of SD and fast USB drive for your XBMC/Kodi install, but recent improvements to the software make it so that even just using a good SD card is about as fast as using a fast USB drive.
- Avoid using wifi. If you do use wifi, use a wifi adapter that contains two antenna (either internally or externally). Otherwise, stick to wired ethernet, local USB drives, or ethernet-over-power devices (like Homeplug, etc).
- If you are using wifi and it seems just on the edge of being fast enough, check out HOW-TO:Modify the video cache.
- Try using NFS file shares instead of SMB file shares.
- Overclock. Most (but not all) Pi's can be overclocked to some point, as long as they have a good power supply. All Raspberry Pi's are clocked at a speed that will work by default, but when the CPUs are made they can sometimes handle a faster speed without crashing. This depends on each individual unit, and there's no universal setting that will work for everyone (except for the default speed that you get without overclocking). Try various overclocking settings and run XBMC/Kodi for a while and see if it's stable. If one group of overclocking settings causes crashes, try a group of settings that are lower than that. For more information about this check out this forum thread: http://forum.xbmc.org/showthread.php?tid=199272
- Disable "Extract thumbnail and video information" from file lists settings for faster menus
- For smoother video playback enable "Adjust display refresh rate to match video" from playback settings
- Make sure the video is using H.264 (up to High Profile. Hi10P will not work) or MPEG-4, or, if a codec was purchased and enabled, MPEG-2 or VC-1.
- Passthrough is recommended as it lowers CPU usage for DTS and AC3. Use audio passthrough if your TV/receiver supports it.
- To determine which audio passthrough formats your HDMI-connected TV supports, you can log in to your chosen distribution, via SSH, and run this command:
/opt/vc/bin/tvservice a(on OpenELEC:
- Feeling adventurous? Check out the latest OpenELEC test builds, which often have even more speed improvements. Just remember that these builds can often be unstable: http://forum.xbmc.org/showthread.php?tid=192380
- Some additional advanced tips for speeding up boot times. http://forum.xbmc.org/showthread.php?tid=201354
- For locally connected drives containing videos and music, the format of the drive can have an impact on read and write speeds. For example, NTFS tends to be much slower on any Linux-based system than the more native EXOFS formats (ext2, ext3, etc).
- If you use MySQL then you will want to make sure your images are pre-cached using the Texture Cache Maintenance utility tool. Local libraries typically don't need this as their images are cached when videos are scanned in.
- Organizing your movies in single folders for each movie, rather than all movies in one folder, can improve library scanning time. The individual folders reduce the time it takes for XBMC/Kodi to look for supporting media like external subtitles, making browsing and playback a little faster as well. You might also want to consider pre-scraping the meta data using a Library manager to reduce the time it takes to scan in both movies and TV shows.
4 Remote controls
- GPIO IR receiver
- Don't have a CEC TV or a smartphone remote? For less than a dollar/euro, you can add an IR receiver to your Raspberry Pi that works with most MCE and Apple remotes (and a few others). Most XBMC/Kodi install options for the Pi should work with the GPIO IR out of the box, or by enabling a setting from within XBMC/Kodi. Go to a local electronics store or search on ebay for "
TSOP4838" and use some simple jumper wires (or solder the pins directly, if you wish). (We need a link to a good, up to date GPIO IR guide. Most of the links I found are outdated and contain instructions for additional configurations that are no longer required. If you find a good link/guide, please add it to the wiki.)
- If your TV supports CEC then you should be able to use the remote control that came with your TV to control XBMC/Kodi. The remote control signals are sent over the HDMI cable and most often don't require any further settings or configuration.
- MCE remotes
- Various MCE USB receivers and remotes will work on the Pi.
- Keyboards and mice
- Any Keyboard such as wired, wireless, bluetooth. This includes remotes that are seen as keyboards, such as Rii remotes, the Mele F10-Pro remote, or the (very awesome) Flirc.
- Smartphone/tablet remotes
- Use your smartphone or tablet as a remote control.
- Web interfaces
- Control XBMC/Kodi from anything that has a web browser.
5 How good is it, really?
See for yourself: https://www.youtube.com/watch?v=ErWF2sYgJec
6 Further reading
7 Random notes
Feel free to place various notes, tips, and links here. As this section of the wiki gets more organized, those notes will be properly sorted. Consider this like a dumping ground for when you're not sure where to put something.