Custom firmware for your devices

I got the idea to write this after reading an article on the maximumpc site. Instead of simply linking to the site and copy pasting what they have written, I thought I would write my own article about the topic, although I admit its based on their article. If you are wondering what the word firmware means, fret not, I will try and cover some basics here.

Firmware
Firmware are fixed, small programs that are used to control hardware like MP3 players, digital cameras, routers etc. The interface you see on your MP3 player to select songs, or the settings you adjust in your digital camera are all happening because of firmware.

Why does the question of hacking firmware come into the picture?
Simple – Manaufacturers protecting their own interests. This is the number one reason why factory firmware is limited. If basic digicams start coming with DSLR features like complete manual control, exposure control etc. manufacturers would lose a chunk of the DSLR market. Not the best example but you’re probably getting what I am trying to say.

Who hacks firmware and how is it done?
You can breathe easy, you need not do the modification yourself. There are a group of people who are consumers like you and I and want most from the devices they paid their hard earned money for. The normal routine is to obtain an official firmware update, reverse engineer and understand it and then add features that are possible. I am a programmer myself and know the kind of effort that goes into such activities, which is why I have nothing but respect for these individuals

What are the devices that can be hacked with custom firmware?
MP3 Players –. Custom firmware for MP3 players has existed for a while now. Features vary from better shuffle to album art support etc. Note that not all MP3 players can be flashed with custom firmware. Below is a list of efforts I am aware of –

1. iPod Linux – http://ipodlinuxinstl.sourceforge.net/
This is an effort to get linux running on your Apple iPod. Check out the site above for details like which models are supported.
2. Rockbox – http://www.rockbox.org/
Rockbox is an open source firmware for mp3 players, written from scratch. It runs on a wide range of players like Sandisk, Apple, Cowon, iRiver etc.

Game consoles – Gaming consoles like the XBOX, XBOX360, Sony PS2, Sony PSP can be hacked for running homebrew software, and supporting features which are otherwise locked.

1. XBOX Media Center – http://xbmc.org/
This is hands down the best media center software I have used. It started out as a dashboard replacement for the original Microsoft XBOX and has grown into a fine application which can now run on Windows, Linux and even the MAC! Highly recommended by me.
2. PSP Custom Firmware – http://www.dark-alex.org/
Once you load custom firmware on your PSP, you truly unleash its potential. You can run a variety of software like MP3 Players, Video Players, Games and applications like RSS Readers etc. on your PSP. Although used popularly for running game backups, the custom firmware truly has many applications that outweigh its misuse.

BIOS – Thats right, you can load your motherboard with custom BIOS firmware which could speed up boot times or add new features.
1. OpenBIOS – http://www.openfirmware.info/Welcome_to_OpenBIOS
2. Coreboot – http://www.coreboot.org/Welcome_to_coreboot

Routers – Now you can get sophisticated features like Bandwidth Management, FTP, HTTP servers etc. out of that cheap router you bought. No need to spend extra money for features which should have been present in the first place.
1. Tomato – http://www.polarcloud.com/tomato
Tomato is a small, lean and simple replacement firmware for Linksys’ WRT54G/GL/GS, Buffalo WHR-G54S/WHR-HP-G54 and other Broadcom-based routers. It features a new easy to use GUI, a new bandwidth usage monitor, more advanced QOS and access restrictions, enables new wireless features such as WDS and wireless client modes, raises the limits on maximum connections for P2P, allows you to run your custom scripts or telnet/ssh in and do all sorts of things like re-program the SES/AOSS button, adds wireless site survey to see your wifi neighbors, and more.
2. OpenWRT – http://openwrt.org/
OpenWrt is described as a Linux distribution for embedded devices.

Digital Cameras – Those petite Canon powershot digital cameras are not so petite when it comes to features once they are flashed with custom firmware. Full manual control and exposure becomes possible once these babies are loaded with custom firmware.

1. CHDK – http://chdk.wikia.com/wiki/CHDK
One of the best alternative firmware for Canon Powershot cameras, CHDK boasts an impressive feature set and supports a variety of models. The community is active and new firmware versions are released all the time.

2. Magic Lantern – http://magiclantern.wikia.com/wiki/Magic_Lantern_Firmware_Wiki

Magic Lantern is an open platform for developing enhancements to the amazing Canon 5D Mark II full frame digital SLR.

Digital media players – These enhance the feature set of digital media players.

1. WDLXTV – WDLXTV is a souped up unofficial firmware for the Western Digital WDTV. It is based off of the 1.02.10 firmware, but with many extra features.

Other devices – These are other devices whose firmware can be hacked to add additional features or improve speed etc.

1. NSLU2 – http://www.nslu2-linux.org/
Change your NSLU2 into a tiny Linux computer. After that, the sky is the limit. This is a great way to download using torrents without leaving your main PC switched on all the time. The applications are endless.
2. iPhone Jailbreak – http://lifehacker.com/398906/jailbreak-iphone-20-with-pwnagetool

Please let me know in comments if I have left something out. Also note that in a lot of countries installing custom firmware is considered illegal, so make sure you don’t break the law 🙂 Happy hacking!