How to install OpenELEC on USB stick for Raspberry Pi?

We have clearly detailed setup OpenELEC on SD card and now we will show you how to install OpenELEC on USB stick for a Raspberry Pi media center. OpenELEC is one of the leanest media center operating system without any unwanted overhead. This gives it some performance advantages and makes OpenELEC fluid and responsive compared to other OSes. With moderate OpenELEC overclocking, you can have a great little low power media player that only uses 3 Watts of power. But some people like to get the most out of Raspberry and push it to the extreme overclocking limits. One drawback in doing so is SD card corruption. Installing OpenELEC on USB stick can prevent this. It also provides speed boost because a USB drive is faster than a SD card. So let us see how to install OpenELEC on USB stick for Raspberry Pi. [Read: What you need to know about overclocking Raspberry Pi]

Running OpenELEC from USB Stick

I was getting a bit tired of sluggishness (compared to my HTPC and Raw Mini) on my Raspberry Pi units. So I wanted to overclock it to max with 1000 MHz arm_freq, 500 MHz core_freq, 500 MHz sdram_freq, and 6 V over_voltage. To avoid SD card corruption and to give it a bit more performance boost, I decided to install OpenELEC on USB stick.

Essentially installing OpenELEC on a USB stick means installing the system files on the SD card and the custom files (/storage), including XBMC folder on the USB drive. This has an added advantage that any time you you update / upgrade OpenELEC you won't lose the configuration data. [Read: Enable and configure OpenELEC Samba share on Raspberry Pi]

Requirements

There are some requirements to accomplish this small project. You will obviously need Raspberry Pi media center and compatible accessories. [Read: 7 Raspberry Pi accessories to build a XBMC media center]

Build a Low-Cost Raspberry Pi Media CenterPrice
Raspberry Pi 4B Starter Kit with case, power adapter, and heat sinks~$82.00
Sandisk Ultra 32GB Micro SDHC UHS-I Card 98 MB/s~$8.00
SANOXY Wireless USB PC Remote Control Mouse for PC~$8.00

To install OpenELEC on USB stick, on the software side, you will need a partitioning tool to partition your USB stick and SD card. On windows, the free MiniTool Partition Wizard is a great option. [Read: 5 Best Raspberry Pi Wifi adapters for you media center]

Partition SD Card and USB Stick

Using the MiniTool partition wizard format your SD card as FAT32 primary active partition of at least 150 MB size. You could also just format the entire SD card as FAT32 as I did. Label the FAT32 partition as SYSTEM.

Sd Card Fat32 And Usb Ext4 Partitions
Sd Card Fat32 And Usb Ext4 Partitions

Next, create a EXT4 primary active partition on the USB stick or just use the entire USB stick. Label the partition as STORAGE. [Read: 10 of the Best XBMC Addons in 2014]

Note: Improper partitioning will make OpenELEC unbootable.

Download OpenELEC

Head over to OpenELEC download page and download the latest stable release (not the diskimage).

Download Openelec For Raspberry Pi
Download Openelec For Raspberry Pi

After downloading, extract the compressed file. I suggest using the free archiving program called 7zip.

Install OpenELEC on USB Stick

To install OpenELEC on USB stick, you will have to copy a few files from the extracted compressed file to the SD card. From the extracted root folder, copy the following two files to the root of the SD Card:

openelec.ico
README.md

Then, copy the following files from the folder target to the SD card's root directory:

KERNEL
SYSTEM

Next, from the 3rdparty/bootloader folder, copy all the files to the SD Card's root:

bootcode.bin
config.txt
fixup.dat
LICENCE.broadcom
start.elf

Lastly To install OpenELEC to USB stick, rename the KERNEL file in the SD card's root to kernel.img. The picture below shows the final list of files in the SD card's root folder. [Read: 8 Raspberry Pi OpenELEC tweaks to do after installation]

Install Openelec On Usb Stick
Openelec Files In Sd Card Root

Nothing has to be copied to the USB stick. OpenELEC will create the .xbmc folder in the USB stick upon first boot. Alternatively, if you have a backup of the .xbmc folder from your previous OpenELEC install, you may copy it to the USB stick. Since the USB stick is formatted to EXT4, you will have to do the copying on a Linux system. If you don't have access to a Linux system to access the EXT4 partition on the USB stick, you may setup Samba sharing on OpenELEC after booting, map the shared (/storage) folder on Windows, and restore the .xbmc folder to it (you may replace the existing .xbmc folder that OpenELEC created during boot. [Read: 10 Tweaks to improve XBMC performance on Raspberry Pi]

Create Startup Files

In the root of the SD card, create a file called cmdline.txt and add the following line to it:

boot=/dev/mmcblk0p1 disk=/dev/sda1 console=ttyAMA0,115200 kgdboc=ttyAMA0,115200 console=tty1 ssh

This makes OpenELEC boot from SD card but use the USB stick for data and configuration. Finally, before booting OpenELEC on Raspberry Pi, you may edit the config.txt file the SD card's root to overclock Raspberry Pi. That is all there is to Raspberry Pi OpenELEC USB install. Pop in the SD card and the USB stick into the the Raspberry Pi and boot it to run OpenELEC from USB. You should now see noticeable improvement in speed and responsiveness. The only disadvantage of running OpenELEC from USB is that one of the USB port is used up. But this may not be a problem in the Raspberry Pi B+ model which has 4 USB ports. So go ahead install OpenELEC on USB stick for Raspberry Pi and speed it up.

Be the 1 in 200,000. Help us sustain what we do.
25 / 150 by Dec 31, 2024
Join Us (starting from just $1.67/month)

Anand

Anand is a self-learned computer enthusiast, hopeless tinkerer (if it ain't broke, fix it), a part-time blogger, and a Scientist during the day. He has been blogging since 2010 on Linux, Ubuntu, Home/Media/File Servers, Smart Home Automation, and related HOW-TOs.