My Brief Experience with iPodLinux and Rockbox

Sometime in 2005 I saw a video of someone playing Half-Life on an iPod and I thought it was kind of cool that it was possible.  I found out that the person was running Linux on their iPod with id Software’s Doom installed (a version ported to the iPod).  I also found out that Linux on an iPod comes in two flavors: iPodLinux and Rockbox.  I decided to try both.  I started with iPodLinux.

iPod Linux

The installation of iPodLinux requires the user to download the source code from their Subversion Repository and then compile it.  There were binaries available for download, but those were two years out of date.  Downloading the source code required the installation of an SVN client, and compiling the source code required the installation of Qt with MinGW.  I ran into a slight snag here as the installation guide on their site neglected to tell me that Qt would not set the system environment variables needed in order for me to follow the instructions in the guide as is.  Typing “qmake” kept giving me “qmake is not recognized” error in the Windows command line.  Once I set up the environment variables, I was able to compile the source code.

After compiling the code, I went onto installation.  Whenever I tried to install iPodLinux, the installer would close while trying to partition my iPod.  As a result, my iPod was left half partitioned with no OS.  I had to restore my iPod with iTunes every time this happened.  I figured it was because I was using Windows 7 Pro x64.  Even after setting compatibility options and running as administrator, the installer wouldn’t work.  I then repeated everything I had done so far on a Windows XP Pro machine and was finally able to install iPodLinux.

The next step was to boot the OS for the first time.  While loading the different modules, the OS would complain about how some modules were didn’t exist or my iPod had run out of memory.  Then the iPod later got stuck while initializing some module called “MPDc”.  So what I tried to do next was to install iPodLinux without this module.  Stupidly enough, the installer refused to let me uncheck any of the options while clearly stating that I could uncheck certain ones if I didn’t want them.  What I don’t get is why I’m getting all these errors with my iPod when the developers state that my 5th gen iPod Video is supported.  Maybe I’m missing something?

Then I found out about the ZeroSlackr Project, which is supposed to provide a “simple, coherent, easy-to-use and newbie friendly method of installing iPodLinux on iPods”.  After downloading, first thing I did was look at the readme’s to see how to install it.  I opened up the readme and it gave me the worst formatting I’d ever seen in a text file.  There were no line breaks.  Rather than searching through this wall of text I just looked up how to install it on Google.  I opened the batch file included with the install files and it gave me a message saying installation successful and that I could now boot ZeroSlackr from my iPod.  I took out the iPod and booted it up just to see no option for ZeroSlackr in the Bootloader.  Maybe I did something wrong.

I also tried a program called iPod Manager 2.0.5, but it didn’t even open no matter how many times I tried to open it.

Afterward, I figure I could use a program to see the ext2 partition that iPodLinux makes and delete the modules manually from there.  Browsing the iPodLinux forums and Google searches led me to a program called LTOOLS.  It was supposedly able to let me modify the ext2 partition.  No luck with that either.  I kept getting stopped by the “Windows could not find file specified” error whenever  I tried to look in the ext2 partition.  Next program I tried was Ext2 IFS for Windows.  I’ve used this program successfully in the past to grab files from my Ubuntu partition.  For some reason this program didn’t work either.  Luckily using my Ubuntu 8.04 Live CD to open the ext2 partition on the iPod worked for me.  The ext2 and the FAT32 partition appeared right away in Ubuntu and all I had to do was do a “gksudo nautilus” to delete the files I didn’t want.

After removing the problematic modules, I finally loaded up the OS.  However, the moment I selected any menu option, the iPod would freeze.  I waited about 30 seconds with no response.  This problem is probably quite beyond me so I stopped here.


The thing I liked the most out of Rockbox is that the installation of it worked, without any hassles.  All I did was download it, double click, follow the instructions and then bam it worked.  It also installs without requiring you to partition your iPod to ext2.  As a result, I could access the Rockbox files easily within Windows.  I loaded up iTunes and it was still able to sync my stuff onto it.

Once I synced my music onto the iPod again, I tried playing music with it.  Without looking at the manual, I could not use my library as one huge playlist.  I find that if using the interface on an mp3 player needs a manual for people to know whats going on, its probably too complex.  Take the iPod interface for example.  It is very intuitive.  There was virtually no learning curve in figuring out how to use it.

Another thing that really annoyed me on Rockbox is that even after setting the language options, I still was not able to see Chinese ID3 tags on songs.  How am I supposed to be able to choose a song if I can’t see the title?

What I did like about Rockbox are the apps.  I know iPodLinux has them too, but seeing that I never got past the freezing problem, I couldn’t try them out.  My favorite was RockDoom.  Being able to play a classic game like that on an iPod made me feel a bit nostalgic.


iPodLinux needs a little bit more work in making installation of the OS easier.  To be specific, their documentation needs to add solutions for problems like the one I mentioned before.  It should also let people uncheck things in the installer.  And most important of all, it should work without freezing up all the time.  If all 5th gen iPod Videos are standard, then if I have a problem on mine, wouldn’t that mean everyone else’s 5G iPod will have problems with it?

Really, I liked everything about Rockbox except its interface and its lack of support for seeing Chinese characters.  I was even able to play a Counter-Strike mod for RockDoom.  I thought that was fantastic.

There are probably also some fixes out there that I don’t know about that can solve my problems, but seeing that I only used iPodLinux and Rockbox so briefly, I probably never came across those fixes.  I also feel that the sorts of problems I had should not need fixes, but rather they shouldn’t occur at all.

Qt Environment Variables

A long time ago I had come across a project that involved porting Linux on the iPod called iPodLinux (read more at the link).  It basically adds additional functionality than that of regular iPods such as the use of third party apps such as gameboy and NES emulators.  Seeing that I like to mess with these things, I decided to try it out.  According to their website,

iPodLinux currently works on all iPod generations with the exception of the 2nd/3rd/4th generation iPod nano, 6th generation iPod classic, all iPod shuffles and the iPod Touch. Donations always help when it comes to supporting new hardware. Progress can be tracked on the Project Status.

The installation of iPodLinux is somewhat tedious.  They recommend that you download the source code and compile them yourself (instructions on the site), which is what I’m doing right now.  Compiling the source code requires a program called Qt.  I downloaded the Qt4 + MinGW installer to compile the code.  However, when trying to compile the code using “qmake”, Windows did not let me run the program.

Apparently the source of the problem is that my environment variables were not set properly.

The environment variables settings page can be found in Control Panel > System > Advanced System Settings > Environment Variables.  Click the New… button.

Here are the required environment variables:

Variable Name: PATH (should exist already)
Variable Value: C:MinGWbin and C:Qt4.x.xbin

Variable Name: QTDIR
Variable Value: C:Qt4.x.x (whatever your version is)

Variable Name: QMAKESPEC
Variable Value: win32-g++

iPod Only Plays Sound on One Side

Recently I’ve had this problem where my iPod would only play sound on the right side headphone. Most people would probably think that the headphones were broken, which is what I thought too. I went to try my iPod with different speakers and still had the same problem. Clearly it was because of the iPod. I decided to open up my iPod and see. Refer to this post on how to open up an iPod Video 5th Gen.

Once I opened it up, it looked like this:

The problem with mine was that the one of the two orange ribbon cables was too loosely connected to the iPod’s circuit board.  Refer to the image.  When the iPod is freshly opened, the hard drive (the blue thing) should be covering the circuit board.  As noted in the picture, the orange ribbon goes through that little gap.  What I noticed is that as I wiggle around that cable, my left speaker would start playing sounds.  Once I found the “sweet spot”, I immediately stuffed cut up bits of a rubber band into the gap until I could jam up that spot well enough to prevent the orange cable from moving.  I don’t have a picture of what it looks like after it was fixed, and I don’t really feel like grabbing the screwdriver to open it up again.

UPDATE (Jan 5, 2010):

This is what it looks like fixed:

Notice the two bits of green rubber band filling up that slot.

How to Open Up an iPod Video (5th Gen)

Here is a guide on how to open up an iPod Video (5th gen).


Just a note: I take no credit for this guide. Link above shows where I got it from.

Step 1

  • Tools required:
  • Small Phillips Screw Driver
  • Small Flathead or exacto razor
  • A Safe Open Tool
  • Complete Toolkit available HERE
  • 1st use your thumb and index fingers to squeeze the middle of the ipod to create a small gap. Next insert the safe open tool and pry the front bezel along the full edge to open the unit.

    Step 2

    You now have the front cover and backing apart. Be very careful because there are 2 ribbon cables still attached inside. One for the headphone jack and the other for the battery.

    Step 3

    After the backing is pried up a little bit, take a small razor or flathead and pop the battery cable clip up to remove the Battery cable.

    Step 4

    Picture of battery cable and how to remove.

    Step 5

    Picture of battery cable removed.

    Step 6

    Pull the hard drive out of the front panel and lay it down.

    Step 7

    Next you are going to want to take the hard drive out. Gently pop the black clip up and remove the drive.

    Step 8

    Now you can safely remove the headphone jack cable from the main board. Insert a fingernail or flathead and pop the brown clip up to remove the cable.

    Step 9

    Shows backing completely removed from front panel. We will show you how to remove the battery and headphone jack later.

    Step 10

    Shows complete front panel components.

    Step 11

    To remove LCD, take the flathead or razor and pop the black clip up.

    Step 12

    Carefully remove the LCD screen ribbon cable from the board.

    Step 13

    In order to get the LCD screen out we will need to remove the frame around it. You need to remove 6 screws with the small Phillips driver. (3 on each side of the iPod).

    Step 14

    After the screws are removed you need to remove the aluminum framing. Just pull up on this and it will come off.

    Step 15

    You can now remove the LCD screen for replacement. Picture shows all components removed from front panel bezel. Install New LCD screen and follow reverse steps to reassemble. In order to remove click wheel and other parts you will need to remove the main board from the aluminum frame (Pic 14). The main board is held on with mild adhesive so you can just push it off the frame. There is a ground connection holding part of the clickwheel to the frame. Carefully take a razor and pull it off.

    Step 16

    Once the main board is off the frame you can remove the clickwheel by inserting the flathead on the connector and pop the black part up. Click wheel cable may be held on the board with mild adhesive. Gently peel off board if needed.

    Step 17

    Shows disassembly of iPod video Clickwheel from main board.

    Step 18

    To remove the battery you will need to insert the safe open tool underneath and pry up. Or you can simply take your fingers and remove the battery (held on with mild adhesive).

    Step 19

    To remove the hold switch and headphone jack you will need to remove a few screws (indicated in pic 19).

    Step 20

    Shows disassembly of iPod Video Audio Jack..

    We are all done, just go backwards to reassemble. Let us know if anything else should be added to this guide.

    © 2018 Henry Poon's Blog

    Theme by Anders NorénUp ↑