So; you want to update to the latest version of OpenELEC and the Raspberry Pi firmware, eh? (For just updating OpenELEC, follow the OpenELEC manual update method here)

Just for the sake of being cutting-edge

(this guide assumes you have a working version of OpenELEC running, know the ip address of it, and know how to ssh in (hint: password is “openelec” (no quotes))

Step 1: Download the latest version

This will be named something like OpenELEC-RPi.arm-devel-20120704203304-r11493.tar.bz2 (20120704 being the date, and r11493 being the revision number; handy for troubleshooting) Grab the “official” version here: http://sources.openelec.tv/tmp/image/openelec-rpi/ Grab an unofficial version here: http://openelec.thestateofme.com/

Step 2: Extract the file

Since I’m on Lion, I can simply double-click the file that was downloaded, wait a few seconds, and end up with this folder:

Note: The Raspberry Pi Firmware has changed since this guide was first created; the files we need from the ‘bootloader’ folder are now ‘bootcode.bin’, ‘fixup.dat’, and ‘start.elf’. The guide has been updated to reflect that.

Step 3: Transfer the files to OpenELEC

Connect to the OpenELEC Update Network Share (in the finder, do this by selecting OPENELEC, then “Update”)
Copy these files:

bootcode.bin
start.elf
fixup.dat
KERNEL
KERNEL.md5
SYSTEM
SYSTEM.md5

(Note: for those that know what an MD5 file is; Yes you need them – OpenELEC verifies them before install, and will trash the file it is doesn’t match)

Once the transfer is complete, eject the  network share.

Step 4: Move everything around and reboot

SSH in to the raspberry ( in a terminal, “ssh root@<raspi-ip>”, password “openelec” (no quotes))
Run these commands, in order:

mount -o remount,rw /flash
mv -i /storage/.update/bootcode.bin /storage/.update/fixup.dat /storage/.update/start.elf /flash/
sync
reboot

I threw in the -i so that it will prompt you to overwrite the older files, giving an indicator that it’s working.

Step 5: Verify, Verify, Verify

I’m throwing this in because this is all very much a work in progress, and if you did an unofficial build of any kind, there is a very real possibility that something important is broken. Point: When I updated from r11493 to r11535 and rebooted, OpenELEC showed the logo, and then sent a broken signal to the Analog TV. To resolve this, I created this guide as I went through the steps, but choosing r11493 instead of the more recent update. Test that it shows the screen when you reboot, test that you can connect to network shares (if any), and test that you can play video with sound. Feel free to test anything that you will regret not testing when you invite someone over and press play. 🙂