Hacking IPod Firmware From LINUX

19K137

Intro: Hacking IPod Firmware From LINUX

Many of you may realize that iPods (5th gen video and lower) can be customized or hacked. Until now, this process was restricted to Windows users, and it is being further developed from Mac; now Linux users will also have that ability.

NOTE: PLEASE DO NOT TRY THIS IS YOU DON'T KNOW WHAT YOU ARE DOING! YOU CAN BRICK/BREAK YOUR iPOD - PERMANENTLY...

You have been warned!!

In the picture below, the iPod is a ipod video 30gb (5.5g) It kind of looks like the new 'classic', but it doesn't have to.

STEP 1: Getting a Firmware

Technically, downloading any firmware is illegal under Apple's EULA - however, modifying your own isn't (I don't think :P).
Being on Linux, you already know you cant get 'legal' firmware updates from iTunes, but you can get them here. Once you have the firmware file from felixbruns or here, you can start modifying them...

STEP 2: IPod Wizard

The generally accepted tool for modifying firmware for iPods is called iPodWizard, and can be downloaded free of charge from the iPodWizard Site. unfortunately it is Windows only, with no development for Linux.

Luckily, Wine allows us to run iPW with almost full functionality. Grab Wine in a format suitable for your distro, for debian users, just type at a prompt: 'sudo apt-get install wine' (without quotes :P).

Once you have wine set up, download the ipod Wizard STANDALONE file, as this saves much time! Run the program through wine as you would with any other windows program (Check the site for your specific command).

Once you have iPW open, choose 'Firmware FIle', as through Wine, it will not recognize your iPod. Actually modifying the firmware with iPW is too broad for this tutorial, so check the forums at the iPod Wizard site for info, and for lots of themes/custom firmware (hosted off-site).

Now that you have any mods/themes loaded, click the 'Write' button, not 'Write to iPod' it will prompt wou about legal implications, click ok :P

You now have a custom firmware file to load to the iPod. Normally iPW takes care of this for you, however it is not able to when running in wine... hence the next step...

STEP 3: Uploading the Firmware to the IPod

Ok, so we have our file, but now we need it on our iPod. The ipods generally have two partitions, one for general ipodiness (like music, pictures and videos...) and one hidden one just for firmware.

First mount your device, whether you do so from the terminal of the GUI is your choice, just remember which device it is, eg /dev/sdb2 Not the mount point, but the actual device location. It will be /dev/sdaXY where X is the device letter, and Y is the partition number. it will be 2 generally, but 1 is the one we want, the one that is hidden. my firmware partition is at /dev/sdc1

Now that we have that, we can't just copy the file across, a) because the partition is hidden,. and b) as it is a binary firmware file. This is where the command 'dd' comes into play. You need sudo rights on your machine, as dd accesses devices on block level.

The command we need to use is:
sudo dd if=/path/to/firmware.bin of=/dev/sdXY
Replace the path to the absolute path to the firmware file, and the X and Y to the appropriate values.

Hit enter and enter your password, now wait. It only take a few seconds, but ejecting, unmounting, or pulling the plug now is FATAL. Do Not Do It!!

Wait until it tells you it is complete, it even tells you the speed it transfered at :P.

Finally unmount and eject the iPod, only it will fail and the iPod will reboot immediately. Don't worry, this is normal. Wait for the iPod to load and check the results... then do it all again... There are no limits to the mods you can do, but if you want it back to stock, just dd a fresh firmware from felixbruns.de to the iPod and it will be as good as new!

Congratulations, you now have a (almost) unique iPod!!

Final Note, I would recommend having all your data files backed up before flashing firmware, but in general nothing goes wrong music side, and if it does, like displaying no tracks, just plug it into gtkpod, or other ipod management program and rebuild the music database :-)

Enjoy!!

7 Comments

Is there a way to instead of downloading the firmware from the internet, copying the firmware binary file strait off of the firmware partition of the iPod and then modifying and flashing it to the iPod? That would be good to know just for those of us that don't want to take our chances with whether or not the download is legal.
Yes there is, using the command in the instructable but the other way around works:
sudo dd if=/dev/sdXY/ of=path/to/yourfirmware.bin
just change the command like it says in the 'ible.
Enjoy
Okay so the "if" part of the command tells bash where to copy from and the "of" part tells it where to copy to? And /dev/sdXY is the path to your ipods firmware partition?
I think of it as IF = input file and OF = output file (i know they are not both files) and yes, /dev/sdXY is your ipod firmware partition

Please rate my instructable ;P
isnt OF official firmware?
not in this case hayden. OF is part of the linux command line option for dd.
Thanks, that's really helpful. Sure, I'll definitely rate your Instructable.