Raspberry Pi: Difference between revisions

From Official Kodi Wiki
Jump to navigation Jump to search
mNo edit summary
 
(189 intermediate revisions by 26 users not shown)
Line 1: Line 1:
{{Infobox computer
{{mininav|[[Devices]]}}
| name        = Raspberry Pi
{{device notice}}
| logo        = [[File:Raspberry Pi Logo.png|50px]]
| image      = [[File:Raspberry Pi Beta Board.jpg|320px]]
| caption    = Model B (retail board will not include pin headers<ref name="GPIO" />)
| developer  = Raspberry Pi Foundation
| releasedate = Early 2012
| XBMC = pre-v12 (planned)<ref>XBMC can be compiled now to run on Raspberry Pi, but no stable binary is has been released yet from Team XBMC</ref>
| cpu        = ARM1176JZF-S 700 MHz
| storage    = SD card slot
| memory      = 256 MB
| connectivity = USB 2, composite video, HDMI, SD card slot, 3.5 mm audio, 10/100 ethernet<ref name="ethernet" />, GPIO<ref name="GPIO" />
| os          = [[Raspbmc]], [[OpenELEC]], Debian GNU/Linux, Fedora, Arch Linux
| website    = http://raspberrypi.org
}}[[File:Raspi-Model-AB-Mono-1.png|right|300px|border]]
The '''Raspberry Pi''' is a  single-board computer developed in the UK by the Raspberry Pi Foundation.


The design is based around a Broadcom BCM2835 [[w:System-on-a-chip|SoC]], which includes an [[w:ARM11|ARM1176JZF-S]] 700 MHz processor, [[w:VideoCore|VideoCore]] IV GPU, and 256 MB of RAM.  The design does not include internal memory, instead relying on an SD card for booting and long-term storage.
[[File:Pi2ModB1GB_-comp.jpeg|320px|right]]


==XBMC for Raspberry Pi==
{{forum link2|1=For more info and help, check out the [http://forum.kodi.tv/forumdisplay.php?fid=166 Kodi Raspberry Pi support forum]}}
Team-XBMC developers are working on porting XBMC to the Raspberry Pi using beta boards supplied by the RPi Foundation.
<section begin="intro" />The '''Raspberry Pi''', '''Raspberry Pi 2'''/'''3''' and '''Raspberry Pi Zero''' are a series of ARM-powered, credit card-sized single-board computers (developer boards) made in the UK by the non-profit Raspberry Pi Foundation organization for educational and hobbyist purposes. These low power computers are mass produced at very low prices and the high number of units sold gives it massive community support. As Kodi HTPC, all Raspberry Pis support full 1080p (Full HD) video playback of the most commonly used codecs, most if not all Kodi [[add-ons]], and have reasonably responsive GUI performance.<section end="intro" />


*[http://www.raspberrypi.org/archives/571 Raspberrypi.org- ''XBMC running on Raspberry Pi'']
== Installing Kodi ==
*[http://www.youtube.com/watch?v=4NR57ELY28s Video of XBMC running on Raspberry Pi]
{{Main|HOW-TO:Install Kodi on Raspberry Pi}}
*[[forum:113824|XBMC.org forum thread on RPi]]
{{#lst:HOW-TO:Install Kodi on Raspberry Pi|install}}
*[[Raspbmc]] - XBMC-centric linux-based OS install
*[[OpenELEC]] - XBMC-centric linux-based OS install
{{YouTube|4NR57ELY28s}}


==Specifications==
{| class="wikitable"
!
! Model A
! Model B
|-
| Target price:<ref name="faq" />
| $25
| $35<ref>{{cite news| url=http://www.telegraph.co.uk/technology/news/9112841/Mini-Raspberry-Pi-computer-goes-on-sale-for-22.html | location=London | work=The Daily Telegraph | first=Donna | last=Bowater | title=Mini Raspberry Pi computer goes on sale for £22 | date=29 February 2012}}</ref>
|-
| [[System-on-a-chip|SoC]]:<ref name="faq" />
| colspan="2" | [[Broadcom]] BCM2835 (CPU, GPU, DSP, and SDRAM)<ref name="Broadcom-BCM2835-Website">[http://www.broadcom.com/products/BCM2835 BCM2835 Media Processor; Broadcom.]</ref>
|-
| CPU:
| colspan="2" | 700&nbsp;MHz ARM1176JZF-S core ([[ARM11]] family)<ref name="Broadcom-BCM2835-Website"/>
|-
| GPU:
| colspan="2" | Broadcom [[VideoCore]] IV,<ref name="hq-qa">
{{cite web
  | title      = Q&A with our hardware team
  | publisher  = Raspberry Pi Foundation
  | url        = http://www.raspberrypi.org/2011/09/qa-with-our-hardware-team/
  | accessdate =20 September 2011
}}</ref> [[OpenGL ES]] 2.0, [[1080p]]30 [[h.264/MPEG-4 AVC]] high-profile decoder<ref name="Broadcom-BCM2835-Website"/>
|-
| Memory (SDRAM):
| colspan="2" |256 Megabytes (shared with GPU)
|-
| USB 2.0 ports:<ref name="VerifiedPeripheralList">[http://elinux.org/RaspberryPiBoardVerifiedPeripherals Verified USB Peripherals and SDHC Cards; eLinux.org]</ref>
| 1
| 2 (via integrated USB hub)<ref name="SMSC-LAN9512-Website">[http://www.smsc.com/index.php?tid=300&pid=135 SMSC LAN9512 Website; smsc.com]</ref>
|-
| Video outputs:<ref name="faq" />
| colspan="2" | [[Composite video|Composite RCA]] (PAL & NTSC), [[HDMI]] (rev 1.3 & 1.4) <ref name=quickguide>[http://elinux.org/RPi_Hardware_Basic_Setup Embedded Linux Wiki: Hardware Basic Setup]</ref>, raw [[Liquid crystal display|LCD]] Panels via [[Display Serial Interface|DSI]] <ref name="DSI">[http://elinux.org/Rpi_Screens Raspberry Pi Wiki, section screens]</ref><ref>[http://elinux.org/File:Raspi-Model-AB-Mono-2-699x1024.png diagram of Raspberry Pi with DSI LCD connector]</ref>
14 HDMI resolutions from 640×350 to 1920×1200 plus various [[PAL]] and [[NTSC]] standards.<ref name="video">[http://www.raspberrypi.org/forum/general-discussion/config-txt/page-3 Raspberry Pi, supported video resolutions]</ref>
|-
| Audio outputs:<ref name="faq" />
| colspan="2" | [[TRS connector|3.5&nbsp;mm jack]], HDMI
|-
| Onboard storage:<ref name="VerifiedPeripheralList"/>
| colspan="2" | [[Secure Digital|SD]] / [[MultiMediaCard|MMC]] / SDIO card slot
|-
| Onboard network:<ref name="faq" /><ref name="VerifiedPeripheralList"/>
| None
| 10/100 [[Ethernet]] ([[Registered jack#RJ45|RJ45]])<ref name="SMSC-LAN9512-Website"/>
|-
| Low-level peripherals:
| colspan="2" | 8 × [[General Purpose Input/Output|GPIO]], [[Universal asynchronous receiver/transmitter|UART]], [[I²C]] bus, [[Serial Peripheral Interface Bus|SPI]] bus with two [[chip select]]s, +3.3&nbsp;V, +5&nbsp;V, ground<ref name="hq-qa" /><ref>[http://elinux.org/RPi_Low-level_peripherals Raspberry Pi GPIO Connector; eLinux.org]</ref><br/>''
|-
| Power ratings:
| 500&nbsp;mA (2.5&nbsp;[[Watt|W]])<ref name="faq" />
| 700&nbsp;mA (3.5&nbsp;W)
|-
| Power source:<ref name="faq" />
| colspan="2" | 5&nbsp;[[volt]] via [[USB#Mini and Micro connectors|MicroUSB]] or GPIO header
|-
| Size:
| colspan="2" | {{convert|85.60|×|53.98|mm|in|abbr=on}}<ref>[http://www.raspberrypi.org/archives/344 Final PCB artwork]</ref>
|-
| Planned operating systems:
| colspan="2" | [[Debian|Debian GNU/Linux]], [[Fedora (operating system)|Fedora]], [[Arch Linux]]<ref name="raspberrypi faqs">
{{cite web
| url=http://www.raspberrypi.org/faqs
| title=FAQs
| publisher=Raspberry Pi
| accessdate=3 November 2011
}}</ref>, [[RISC OS]] <ref name="osnews risc os" />
|}


;Notes:
== Maximizing performance ==
# '''Model A''' and '''Model B''' are cultural references<ref name="raspberrypi model names">{{cite web | url=http://www.theregister.co.uk/2011/11/28/raspberry_pi/page3.html | title=Psst, kid... Wanna learn how to hack? | publisher=The Register | date=28 November 2011 | accessdate=24 December 2011 | author=Williams, Chris}}</ref> to the original models of the British educational [[BBC Micro]] computer, developed by [[Acorn Computers]], who originally developed the [[ARM]] processors (the architecture of the Raspberry Pi) and operating system [[RISC OS]], which will also be able to be run on the Raspberry Pi (version 5.17).<ref name="osnews risc os" />
<section begin="performance" />
# On the model B beta boards, 128 MB was allocated by default to the GPU, leaving 128 MB for the CPU.<ref> [http://www.reddit.com/r/raspberry_pi/comments/oicyr/i_have_a_raspberry_pi_beta_board_ama/c3hj3n0 I have a raspberry pi beta board ama] </ref> On the release model B (and Model A) three different splits are possible: 192 MB (CPU RAM) is the default split. It should be sufficent for standalone 1080p video decoding, or simple 3D (but probably not both together). 224 MB is for Linux only, with just a 1080p framebuffer; likely to fail for any video or 3D. 128 MB is for heavy 3D, possibly also with video decoding (e.g. XBMC).<ref>[http://www.raspberrypi.org/forum/general-discussion/config-txt/page-3 Raspberry Pi boot configuration text file]</ref> Comparatively the Nokia 701 uses 128 MB for the Broadcom VideoCore IV.<ref> [http://www.raspberrypi.org/forum/general-discussion/nokia-701-has-a-similar-broadcom-gpu Nokia 701 has a similar Broadcom GPU] </ref>
{{note|Some of these tweaks are more aimed at the Pi 1 CPUs (A, B, A+, B+, Compute Module, Zero) as they only have a slow single-core CPU. Raspberry Pi 2/3 probably doesn't need some of these tweaks to run Kodi really well, but it also won't hurt anything, if you really want to push things to their limit.}}
# Level 2 Cache is 128 KB, used primarily by the GPU, not the CPU.
# The [[ARM11]] is based on version 6 of the [[ARM architecture]], which due to its age is no longer supported by several popular versions of Linux, including Ubuntu.
# The available memory, 128–224 MiB, after subtracting 32–128 MiB for graphics memory, is less than the stated minimum requirement of 768 MiB to run a standard build of the Fedora operating system.<ref> [http://fedoraproject.org/get-fedora Fedora, What will I need?]</ref> Neither the memory nor processing power meets the Debian recommended minimums, even for systems without a desktop. However, 128 MiB meets the absolute minimum for an i386 system, even with a desktop. The Debian manual states: "most users risk being frustrated if they ignore these suggestions."<ref>[http://www.debian.org/releases/stable/i386/ch03s04.html.en Debian Minimum Hardware Requirements ''(Retrieved 16 February 2012)'']</ref>
# The 128–224 MiB of available memory is twice the minimum requirement of 64 MiB needed to run [[Slackware Linux]] on an ARM or i386 system.<ref>[http://www.slackware.com/install/sysreq.php The Slackware Linux Project: Installation Help<!-- Bot generated title -->]</ref> There are reports of Slackware running well on 32 MB ARM<ref>[http://lists.armedslack.org/pipermail/armedslack/2010-March/thread.html#356 The ARMedslack March 2010 Archive by thread<!-- Bot generated title -->]</ref> and i386<ref>[http://www.slackbook.org/html/book.html#INSTALLATION-REQUIREMENTS Slackware Linux Essentials<!-- Bot generated title -->]</ref> systems. (While Slackware can load and run a GUI, it was designed to be run from the [[Shell (computing)|shell]].) The [[Fluxbox]] window manager running under [[X Windows]] requires an additional 48 MB of RAM<ref>[http://linuxreviews.org/software/desktops/#toc4 Desktops: KDE vs Gnome (Linux Reviews)<!-- Bot generated title -->]</ref> (112 MB total).
# the Raspberry Pi (model B) also contains a 15-pin [[Mobile Industry Processor Interface|MIPI]] [[Camera interface]] (CSI) connector, which at the moment is unsupported, but the foundation is planning to release a camera module for it, sometime in the near future.<ref>[http://www.raspberrypi.org/forum/features-and-requests/camera-for-the-csi-2-port camera for the CSI-2 port]</ref><ref>[http://elinux.org/File:Raspi-Model-AB-Mono-2-699x1024.png diagram of Raspberry Pi with CSI camera connector]</ref>
# Support for Raw [[liquid crystal display|LCD]] Panels is available in hardware through the available DSI connector from the [[Mobile Industry Processor Interface]] (MIPI®) Alliance. <ref name="DSI" /> Software support is being planned.
# Supported digital video resolutions are: 640x350  [[Enhanced Graphics Adapter|EGA]]; 640x480  [[Video Graphics Array|VGA]]; 800x600  [[Super video graphics array|SVGA]]; 1024x768  [[XGA]]; 1280×720  [[720p]] [[High-definition television#High-definition display resolutions|HDTV]]; 1280x768  [[Graphic display resolutions#WXGA|WXGA]] Variant; 1280x800  [[Graphic display resolutions#WXGA|WXGA]] Variant; 1280x1024 [[SXGA]]; 1366x768  [[Graphic display resolutions#WXGA|WXGA]] Variant; 1400x1050 [[SXGA+]]; 600x1200 [[UXGA]]; 1680x1050 [[WXGA+]]; 1920x1080 [[1080p]] [[High-definition television#High-definition display resolutions|HDTV]]; 1920x1200 [[WUXGA]].<ref name="video" /> Also to be supported are the generation of [[576i]] and [[480i]] composite video signals for [[Pal#PAL-B.2FG.2FD.2FK.2FI|PAL-BGHID]], [[PAL-M]], [[PAL-N]], [[NTSC]] and [[NTSC-J]] <ref name="composite">[http://www.raspberrypi.org/forum/general-discussion/pictures-of-screen-displaying-example-of-rpi-composite-output?value=480i&type=1&include=2&search=1 examples of Raspberry Pi composite output]</ref>


==Notes==
* Avoid "heavy" skins and lots of "service" type add-ons that run in the background.
<references />


==See also==
* Turn off RSS feeds and any scrolling text options for your skin. Depending on the skin/text, this can really boost a Pi 1, sometimes even a Pi 2/3.
*[[Raspbmc]]
*[[OpenELEC]]


==Further reading==
* Use an SD card with good rewrite speeds. The class of the SD card doesn't always mean it will be better, as that speed classification is for sustained reading and writing, whereas for Kodi, random read/write speeds are more important.
*[http://raspberrypi.org RaspberryPi.org]
::* [http://elinux.org/RPi_SD_cards#Working_.2F_Non-working_SD_cards Raspberry Pi only supports SDHC cards], apart from a few exceptions where the cards are marked as SDXL but maintain SDHC compatibility.
*[http://elinux.org/RaspberryPiBoard Raspberry Pi Hub Wiki]
::* [http://swag.raspberrypi.org/products/noobs-8gb-sd-card The class 6/8 Samsung SD cards sold on the Raspberry Pi Store] (the ones with NOOBS on them) typically have much better performance than many class 10 cards.
*[[Wikipedia:Raspberry Pi]]
::* Samsung "EVO" SD/mSD cards also have very excellent read/write speed for their price.
::* For [http://www.raspberrypi.org/forums/viewtopic.php?p=53159 more information about SD card speeds, read this excellent thread on the R-Pi forum].


[[Category:Linux]]
* You can also try a combination of SD and fast USB drive for your Kodi install, but with the recent software improvements even just using a good SD card is about as fast as using a fast USB drive.
[[Category:Raspberry Pi]]
 
[[Category:Broadcom]]
* Avoid using wifi. If you do use wifi, use a wifi adapter that contains two antennae (internal or external) that advertises "300 Mbps". Otherwise, stick to wired ethernet, local USB drives, or ethernet-over-power devices (like Homeplug).
 
* 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.
 
* [http://forum.osmc.tv/showthread.php?tid=6825 Try mounting network shares through OS rather than Kodi]. This allows more tweaking of filesystem options, like chosing UDP and larger block sizes.
 
* [http://forum.kodi.tv/showthread.php?tid=199272 Overclock]. Most Pi's can handle a significant overclock, as long as they have a good power supply. There is no universal setting that will work for everyone (except for the default speed that you get without overclocking). Try various overclocking settings and run Kodi for a while to see if it's stable. If one group of overclocking settings causes crashes, try a group of lower settings.
:: {{note|Overclocking is pretty important for the Raspberry Pi 1 (A, B, A+, B+) and Zero, but much less so on the Pi 2/3 due to the multiple CPU cores as well as increased speed per core. You can still overclock the Pi 2 if you really want to, but for most users it makes little difference.}}
 
* By default, "Extract thumbnails from video files" (in '''Media Video Settings''') is disabled on the Pi, improving browsing performance.
 
* For smoother video playback, enable "Adjust display refresh rate" in |playback settings
 
* When using dvdplayer, "Sync playback to display" for sync method are recommended; see playback settings.
 
* Make sure the video is using H.264 (up to High Profile — Hi10P will not work), or MPEG-4, or, if additional codecs have been 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 via SSH and run this command: <code>/opt/vc/bin/tvservice a</code> (on LibreELEC: <code>tvservice -a</code>).
 
* Feeling adventurous? [https://forum.kodi.tv/showthread.php?tid=298461 Check out the latest LibreELEC test builds], which often have even more speed improvements. Just remember that these builds can often be unstable!
 
* For locally connected drives containing videos and music, the filesystem can have an impact on read and write speeds. NTFS for example tends to be much slower on any Linux-based system than the more native ext2, ext3, etc.
 
* If you use [[MySQL]], you will want to make sure that 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. Using MySQL can improve performance as the database queries are handled by another machine.
 
* Organizing your movies in single folders for each movie, rather than all movies in one folder, is recommended. The individual folders reduce the time it takes for Kodi to look for supporting media like external subtitles, which makes browsing, scanning and starting playback a little faster. 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.
 
* [http://forum.kodi.tv/showthread.php?tid=222498 For Raspberry Pi units with only 256MB of RAM, see this thread].
<section end="performance" />
 
== Remote controls ==
[[File:gpioir.png|right|250px|thumb|Wiring instructions for a TSOP4838 GPIO IR sensor.]]
;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 Kodi install options for the Pi should work with the GPIO IR out of the box, or by enabling a setting from within Kodi. Go to a local electronics store or search on eBay for "<code>TSOP4838</code>" and use some simple jumper wires (or solder the pins directly, if you wish). ''<small>(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.)</small>''
 
:If you are using '''[[LibreELEC]]''', just add this to your config.txt file ''(full help page '''[[LE:Guide_To_lirc_rpi_GPIO_Receiver|here]]''')'':
::<pre>dtoverlay=lirc-rpi</pre>
 
:The default GPIO pin used is 18. This can be changed by using the following
::<pre>dtoverlay=lirc-rpi,gpio_in_pin=18</pre>
:Where <code>pin=18</code> would be changed to whatever GPIO pin number you would rather use.
 
:If you are using '''[[OSMC]]''', your remote will probably work out of the box. If it doesn't, go to My OSMC -> Remotes and select your desired remote. There is also [https://osmc.tv/store/product/osmc-remote-control/ an official OSMC remote] which also works on other distributions.
 
;CEC
:If your TV supports '''CEC''', you should be able to use the remote control that came with your TV to control Kodi. The remote control signals are sent over the HDMI cable and most often don't require any further settings or configuration.
 
;MCE remote controls
:Various '''MCE''' USB receivers and remotes will work on the Pi.
 
;[[Keyboard controls]] 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 Kodi from anything that has a web browser.
{{-}}
 
== Further reading ==
* [http://raspberrypi.org RaspberryPi.org]
* [http://elinux.org/RaspberryPiBoard Raspberry Pi Hub Wiki]
* [http://lea-linux.org/documentations/Raspberry_Pi Raspberry Pi French Wiki]
* [[Wikipedia:Raspberry Pi]]
 
== Random notes ==
{{large|''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.''}}
* Notes for using a Pi with a GPIO touch screen:
** http://forum.kodi.tv/showthread.php?tid=222880&pid=2000331#pid2000331
** http://markamc.traki-iski.co.uk/raspberry-pixbian-egalax-touchscreen/
** http://arendwierks.blogspot.nl/p/touchscreen-fix-raspberry-pi-xbmc-kodi.html
 
* Add-on for turning off the HDMI port when idle: https://github.com/timker/kodi.screensaver.pimon
 
* How to enable and configure onboard Wi-Fi and bluetooth: https://www.digikey.com/en/maker/blogs/raspberry-pi-3-how-to-configure-wi-fi-and-bluetooth/03fcd2a252914350938d8c5471cf3b63
 
{{Updated|17}}

Latest revision as of 04:18, 28 July 2020

Home icon grey.png   ▶ Devices ▶ Raspberry Pi
Stop hand.png These pages are maintained by the community and should not be considered an endorsement or recommendation. Device pages are made when there's a bunch of useful information for a particular device, and someone takes the time to make that page. Keep in mind, some devices simply don't need a page of specific information, but are still excellent devices. *


Pi2ModB1GB -comp.jpeg
Attention talk.png For more info and help, check out the Kodi Raspberry Pi support forum

The Raspberry Pi, Raspberry Pi 2/3 and Raspberry Pi Zero are a series of ARM-powered, credit card-sized single-board computers (developer boards) made in the UK by the non-profit Raspberry Pi Foundation organization for educational and hobbyist purposes. These low power computers are mass produced at very low prices and the high number of units sold gives it massive community support. As Kodi HTPC, all Raspberry Pis support full 1080p (Full HD) video playback of the most commonly used codecs, most if not all Kodi add-ons, and have reasonably responsive GUI performance.

Installing Kodi

Easy / Kodi centric distributions


Advanced / can be used with Kodi

Note that Arch ARM provides different Kodi packages optimized for different RPi models. All builds offer some flavor of HW accelerated decoding just like LibreELEC. The following packages will supply the current stable version of Kodi:

kodi-rpi for RPi 3/4/400

kodi-rpi-legacy for RPi 2

Users wanting to track the master branch may select:

kodi-rpi-git for RPi 3/4/400 only

  • Raspberry Pi OS - Up-to-date versions (Currently Leia 18.7) of Kodi are now on the default Raspbian repositories. See full guide here.


Maximizing performance

Note: Some of these tweaks are more aimed at the Pi 1 CPUs (A, B, A+, B+, Compute Module, Zero) as they only have a slow single-core CPU. Raspberry Pi 2/3 probably doesn't need some of these tweaks to run Kodi really well, but it also won't hurt anything, if you really want to push things to their limit.

  • Avoid "heavy" skins and lots of "service" type add-ons that run in the background.
  • Turn off RSS feeds and any scrolling text options for your skin. Depending on the skin/text, this can really boost a Pi 1, sometimes even a Pi 2/3.
  • Use an SD card with good rewrite speeds. The class of the SD card doesn't always mean it will be better, as that speed classification is for sustained reading and writing, whereas for Kodi, random read/write speeds are more important.
  • You can also try a combination of SD and fast USB drive for your Kodi install, but with the recent software improvements 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 antennae (internal or external) that advertises "300 Mbps". Otherwise, stick to wired ethernet, local USB drives, or ethernet-over-power devices (like Homeplug).
  • Try using NFS file shares instead of SMB file shares.
  • Overclock. Most Pi's can handle a significant overclock, as long as they have a good power supply. There is no universal setting that will work for everyone (except for the default speed that you get without overclocking). Try various overclocking settings and run Kodi for a while to see if it's stable. If one group of overclocking settings causes crashes, try a group of lower settings.
Note: Overclocking is pretty important for the Raspberry Pi 1 (A, B, A+, B+) and Zero, but much less so on the Pi 2/3 due to the multiple CPU cores as well as increased speed per core. You can still overclock the Pi 2 if you really want to, but for most users it makes little difference.
  • By default, "Extract thumbnails from video files" (in Media Video Settings) is disabled on the Pi, improving browsing performance.
  • For smoother video playback, enable "Adjust display refresh rate" in |playback settings
  • When using dvdplayer, "Sync playback to display" for sync method are recommended; see playback settings.
  • Make sure the video is using H.264 (up to High Profile — Hi10P will not work), or MPEG-4, or, if additional codecs have been 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 via SSH and run this command: /opt/vc/bin/tvservice a (on LibreELEC: tvservice -a).
  • For locally connected drives containing videos and music, the filesystem can have an impact on read and write speeds. NTFS for example tends to be much slower on any Linux-based system than the more native ext2, ext3, etc.
  • If you use MySQL, you will want to make sure that 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. Using MySQL can improve performance as the database queries are handled by another machine.
  • Organizing your movies in single folders for each movie, rather than all movies in one folder, is recommended. The individual folders reduce the time it takes for Kodi to look for supporting media like external subtitles, which makes browsing, scanning and starting playback a little faster. 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.


Remote controls

Wiring instructions for a TSOP4838 GPIO IR sensor.
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 Kodi install options for the Pi should work with the GPIO IR out of the box, or by enabling a setting from within 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 you are using LibreELEC, just add this to your config.txt file (full help page here):
dtoverlay=lirc-rpi
The default GPIO pin used is 18. This can be changed by using the following
dtoverlay=lirc-rpi,gpio_in_pin=18
Where pin=18 would be changed to whatever GPIO pin number you would rather use.
If you are using OSMC, your remote will probably work out of the box. If it doesn't, go to My OSMC -> Remotes and select your desired remote. There is also an official OSMC remote which also works on other distributions.
CEC
If your TV supports CEC, you should be able to use the remote control that came with your TV to control Kodi. The remote control signals are sent over the HDMI cable and most often don't require any further settings or configuration.
MCE remote controls
Various MCE USB receivers and remotes will work on the Pi.
Keyboard controls 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 Kodi from anything that has a web browser.


Further reading

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.