Troubleshooting
Sometimes your iPod may get into an unusable state, which is often called "bricked". It does not mean that your device is permanently broken, it means that you should follow the instructions that describe best your case.
Different devices have different methods for getting out of a "bricked" condition. Here is a summary of each device and the conditions that it may get into.
Contents
Nano 2G
After installing or updating iLoader, your iPod may not complete the flashing process successfully. This will lead to a unfinished installation which does not work as expected. To recover your device you will need some Python scripts from the SVN, a Python interpreter, pyUSB and a driver (for Windows only). You can get the script by checking out this folder.
Recovery mode
Sometimes iLoader may not finish loading and crash before showing the menu, because you have installed a faulty build (for example, when making changes and then building the code yourself). In this case, you need to enter emBIOS Loader's Recovery mode.
Getting to Recovery mode
Restart your iPod by holding MENU+SELECT until the screen turns off, then immediately turn the HOLD switch on. If you manage to do this fast enough, your iPod will show some text, similar to the following:
emBIOS Loader vX.X.X rXXX Switch HOLD on for recovery Entered recovery mode Connect via USB
At that point you can either run an emBIOS build directly to manually fix the problem, or reinstall iLoader, in case the problem was caused by a failed update.
Uploading an installer
After that, you need an installer binary. You can get the official version from TheSeven's Installation page or build one yourself. Place it in the same folder as the previous files, then run:
python embios.py runfirmware 08000000 installer.bin
(if you are on *nix, you may need to prefix it with "sudo" or run it from a root shell)
You should see something similar to that in your terminal window:
Connected to emBIOS Debugger vX.X.X rXXX running on iPod nano 2g Writing file 'installer-XXXXXXXX.bin' to memory at 0x8000000...done Running firmware at 0x8000000. Bye.
Your iPod should launch the installer program. Follow the instructions on the screen to update your iLoader installation.
Uploading an emBIOS binary
You will need a known-working emBIOS build, you can use one that you have built yourself, grab the latest from the build server (not recommended because they might not have been tested yet), or ask on IRC for one. After you get one and place it in the same folder as the scripts, you can proceed with the following command:
python embiosldr.py run embios-ipodnano2g.bin
(if you are on *nix, you may need to prefix it with "sudo" or run it from a root shell)
You should see this text in your terminal window:
Connected to emBIOS Loader Recovery Mode on iPod Nano 2G, USB version 1 Uploading embios-ipodnano2g.bin to 0x 8000000..... done Passing control to code at 0x 8000000... done
Then, you will (hopefully) see an emBIOS console on your iPod's screen. It will say somethins similar to this:
emBIOS vX.X.X rXXX Waiting for USB commands
DFU Mode
If something goes terribly wrong and your iPod does not display any contents on the screen when powering on, it means that it is in Bootrom DFU mode. This mode is a last resort for recovering your device.
Uploading an emBIOS Loader
First, you need to checkout this folder. Then you need a DFU image that contains emBIOS Loader. You can build one yourself (but only if you have access to a working Nano2G), or ask someone on IRC. Then you put it in the same folder as ipoddfu.py, turn your iPod's HOLD switch on and enter the following command:
python ipoddfu.py embiosldr-ipodnano2g.dfu
(if you are on *nix, you may need to prefix it with "sudo" or run it from a root shell)
You should see the following text in your terminal:
Connected to S5L8701 Bootrom DFU mode, USB version 1 Upload: ..... done
Then your iPod should be in emBIOS Loader's recovery mode. Proceed with the instructions from the previous sections in order to recover your iLoader installation.