Heimdall

Heimdall
HEIMDALL
Heimdall is an alternative, cross-platform tool to flash firmwares for the Galaxy S series of devices, including the Tab
android_teach.png
There are many apps that can flash files to your device, but Heimdall and Odin are the most recommended ones, being safer. Flashing ROMs or kernels on your device is quite dangerous and you should always use a trusted software.
Heimdall Suite is an open-source application used to flash custom ROMs or kernels on Android devices. Unlike Odin, Heimdall is cross-platform, being available on Linux, OS X and Windows (XP, Vista, 7 etc.)

HOW DOES IT WORK?
Heimdall uses the same protocol as Odin to interact with a device in download mode. USB communication in Heimdall is handled by the popular open-source USB library, libusb-1.0.
You should always use the latest version because it’s also the most stable.

WHY USE HEIMDALL WHEN WE CAN USE Odin?
Odin only runs on Windows systems. Furthermore, it`s leaked Samsung software that is not freely available or well understood by the community.

IS HEIMDALL SAFE?
No matter what method you chose, flashing firmware onto your phone has a lot of potential for disaster. Heimdall was tested with a variety of phones flashing several different firmware versions resulting in a 100% success rate. As such we believe that Heimdall is generally reliable. However keep in mind, just like any flashing software, Heimdall has the potential to brick your phone if not used correctly.

This guide will walk you through the steps to work with Heimdall. Screenshots you'll see will be Mac-y. However, since the app and GUI are cross-platform the same apply for both Windows and Linux.


DISCLAIMER:

Proceed with caution and at your own discretion, both the developers of Heimdall and I can not be held accountable for the possible damage you do to your device by following this guide or using Heimdall.

FLASHING WITH HEIMDALL
Flashing with Heimdall is a little bit different than with Odin. With Odin you usually select a PIT, if necessary, add the PDA.tar.md5, Modem.tar.md5 and CSC.tar.md5 to the locations, put the phone in download mode and hit go.

Heimdall takes a different approach. In the Heimdall GUI you need to select all components you want to flash. This means extracting the TAR-archives and pointing Heimdall to their respective files. This allow relative fine-grained control over what you flash and doesn't depend on files being named correctly.

Do yourself a favor, even if you're on Linux or Mac, just reboot after the install. On OS X the installation includes a Kernel extension and though this can usually be reloaded by logging out and back in again the reboot is safer and can't hurt.


I'm going to assume that you have downloaded a firmware, for example from samfirmware, and have extracted the .RAR and the .TAR inside and now have a folder with at least the following:
  • factoryfs.rfs (PDA > FactoryFS)
  • param.lfs (PDA > Param.lfs)
  • zImage (PDA > Kernel (zImage))
Additionally you might have:
  • cache.rfs (CSC > Cache)
  • modem.bin (Other > Modem)
Be aware, there are other configurations possible. For example, when you're Rooting by flashing a rooted Kernel there will probably only be a zImage.
Start Heimdall or Heimdall-frontend, you should get a screen similar to this:
heimdall1.jpg
Now, unless explicitly stated that you need a .PIT to flash this firmware you can leave this field blank. If you load a PIT, be sure to see if you need to repartition. The general rule is that you don't, unless you flashed with a firmware that had a different PIT than what samfirmware is indicating you need.

After that, start hitting the browse button for the components you want to flash with Heimdall and add them. Your screen will probably look something like this:
heimdall2.jpg
Now, it's time to put your phone in download mode. Power off the phone and wait for it to completely have shut down and unplug it from USB / charger. Hold down the Home and Volume Down buttons and then press Power. Keep holding those three buttons until you get into download mode (you'll know when you see it).
Now, connect the phone over USB with your computer. If you're on on Mac and Linux you can proceed immediately. If you're on Windows you'll probably need to wait for Windows to install a driver or two.
Hit the Start button and watch it go!
If all goes well you'll see the progress bar on both Heimdall and in your phone filling up (might take a while for one to appear on the Galaxy S). Once it's done it'll probably say everything went OK and the Galaxy will reboot into recovery. Let it do it's thing, it will reboot again and begin booting the new firmware.
After having installed a new firmware the first boot might take a while. You'll just seem to be stuck at the glowing S, just let it run it will boot eventually.
If however Heimdall says "Failed" your phone will (probably) reboot or when you try to reboot you'll get stuck at the "black screen of death":
heimdall3.jpg
This isn't a "my device is bricked" screen, it just means that you f**ked up the firmware. Follow the instructions again, put it in download mode and try again.


Download Heimdall Suite for Windows here.
Download Heimdall Suite for Mac OS X here.
Download Heimdall Suite for Linux here.

credits: daenney (xda)
edited by arawn
Jul 21, 2012
T!v@K, Robbie Hood and comnam90 like this.