[Samsung Galaxy S (4G Model)] Juls317:
How To Flash a Kernel with Heimdall:

Alright, so to start off, I'm going to show you how to flash a kernel with ODIN so that you will have CWM and root so you can flash a rom.

First, grab Heimdall from HERE

Then grab FBis251's kernel from HERE and extract it.

Now open up the folder that you just got from the extraction and open up the folder called "kernel_flasher" and then move the zImage file somewhere that you will remember (I would suggest your desktop).

Now download THIS file and put it on your desktop (I would ultimately suggest just creating a folder for all of your Android files).

Now open up Heimdall-Frontend and click on the Flash tab. Now select your .pit file that you downloaded and load that into the .pit slot and then select "Add" and change the partition type to "KERNEL".

So your Heimdall setup should look like THIS:

Now to put your phone in Download Mode. This will require two hands.

Take out your battery, plug your USB cord into the computer.

Then, push and hold the Vol Up and Vol Down buttons and plug the USB cord into your phone.

Then put the battery back in and you should have a big yellow triangle with and Android digging with a shovel in it. This means you are in Download Mode:D!

Now just click the "Utilities" tab and have it attempt to detect your device (just to make sure). If it detects it then go ahead and click "Start" and let it do it's thing.

How To Flash a Modem with Heimdall:​

Flashing a modem with Heimdall is just as simple as flashing a kernel. The steps are:

Boot into Download Mode and plug your phone into the computer.

Open Heimdall, open the Utilities tab and detect device (once again, just a precaution).

Load the .pit file located HERE (this is the same .pit file as you would have used to flash a kernel so no need to redownload if you already have it).

Now, download the CWM package for whatever modem you would like to flash and unzip it.

Open the folder that you just unzipped, navigate through the "updates" folder and move the "modem.bin" folder to somewhere that you will remember it (your desktop, or somewhere else).

Now back in Heimdall, add a new partition and select "Modem".

Select the modem.bin that you took out of the .zip file.

Hit start and let Heimdall do it's work!

How To Flash a Modem With ODIN:​

Flashing a modem with ODIN is very simple. Here are the steps:

Boot into Download Mode and plug your phone into the computer.

Open ODIN.

Download the ODIN package (it is a .tar.md5 file) of the modem that you would like to flash.

Load the .tar.md5 file into the "PHONE" section of ODIN.

As long as ODIN has detected that your phone is plugged in, go ahead and hit start and let ODIN do work!

How To Flash with CWM:​

First off, depending on which kernel you are using you will have a different version of CWM. If you are using any of drhonk's kernels or any of bhundven's kernels BEFORE v3, you will have CWM v3.x. If you are using either bhundven's kernel v3 or v3.1 you will have CWM v5.x. You CANNOT make a backup with v3.x and restore it on a kernel that is running v5.x or vice versa. That said, if you have v3.x, some of the menu terminology will be a little different but you should still be able to navigate the menus all the same.

So now that you have your rom/kernel I'm going to walk you through, step-by-step how to flash a modem, kernel and rom. I am posting these walkthroughs in no particular order. They do not have to be done in this order. I suggest that you have your phone plugged into the charger while flashing anything.

You are first going to need to know how to boot into recovery mode. You can use the Quick Boot app from the market (found HERE) or, if you would like, you can do it manually by turning off your phone and then push, at the same time, the Power, Volume Up and Volume Down buttons until you see the screen where your phone initially powers on (Samsung Galaxy S 4G exclusively by T-Mobile, or something to that affect). Once that screen pops up, release the power button. Then you should boot into CWM (you will see a bunch of red text come up).

So, the first step to flashing anything is downloading it and placing it on your SD Card. Most people say to put it in the root of your SD, meaning not in a folder, but I keep my files together in one folder, that way it is easier to locate all of the files that you want to flash. You navigate CWM using the volume buttons to move up and down and using the power button to select your chosen option.​

To flash a kernel or modem follow these steps:​

Boot into CWM and select the "Wipe cache partition" option, navigate through the "no" options until you hit the "Yes" and select it.

Then go to the Advanced menu and select "Wipe Dalvik Cache", once again, navigate through the "No" options, select yes, and let it do it's thing.

Then select the "Flash zip from SD Card" option. After that select "Install zip from SD" and locate the modem or kernel you are looking to flash. Select the file, navigate through the "No" options, select yes and let it work (you will see blue and white text flash across the screen that doesn't actually fit the screen, this is normal. When I first saw this, I freaked out too.)

After the process is complete, you will find yourself back at the four option menu you found yourself at after you selected "Flash zip from SD Card", select "Go Back".

You will be back at the CWM Main Menu, select "Advanced" and "Fix Permissions" (this is really just a precaution, but is a good thing to do).

Then navigate back to the CWM Main Menu, select "Reboot System Now" and let your phone sit for no less than 10 minutes to allow for the cache and dalvik cache to rebuild, this will prevent your phone from lagging.

--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

The steps to flashing a rom are not much more difficult, it just takes time in some cases.​

Your first step is obviously to download the file, so if you haven't already, hit that download button for your chosen rom!

IF YOU ARE FLASHING A TEAM ACID ROM (Valhalla Black, ICBINB, MIUI) YOU WILL HAVE THE AROMA INSTALLER. YOU DO NOT HAVE TO GO THROUGH THE STEPS BELOW WHILE ACTUALLY IN CWM. YOU CAN DO THEM BY SELECTING "CUSTOM" IN THE INSTALLER SETUP! (You can not however make a NANDROID backup in the installer so you need to do that before you flash).

I suggest doing this with ≥80% battery and having your phone plugged in (I've always done it this way, I don't know if there is any risk in doing it another way or not).

Now to flash the rom follow these steps:

Boot into CWM and make a backup using the "Backup/Restore" option (precaution, just in case something goes wrong). This will take a while depending on how much you have on your phone and this will also take ~1 GB of space on your SD Card, If you make a backup and would like to move it to your computer later, the file will be locate in /sdcard/clockworkmod/backup. This will backup all of your contacts, texts call logs, apps, etc. I DO NOT suggest restoring any of this through CWM (though I will cover how to do that later on). Instead I would say backup your contacts by going into the Contacts app, hitting the Menu softkey and then hitting "Import/Export" and selecting "Export to SD", using SMS Backup + (on the Market HERE) to backup your texts (or if you use GO SMS Pro, you can backup through their backup/restore system), and Titanium Backup to backup your apps (this is a root application but at this point in the flashing process, I assume you are rooted).

Next, wipe your cache partition, as you did to flash the kernel/modem.

Then wipe the Dalvik cache, once again like you did before.

Now you need to select the "Mounts and Storage" option and check that your mounts are set to:

Unmount /cache
Mount /data
Mount /sdcard
Unmount /system

^This is what people mean when they say "UMMU"

Now go back to the CWM Main Menu and select "Wipe data/factory reset". THIS WILL ERASE ALL OF YOUR PERSONAL DATA! MAKE A BACKUP BEFORE YOU DO THIS (whether in CWM or the backup apps listed above)

Now double check your mounts in "Mounts and Storage" and make sure that they are set to UMMU

Now select "Flash zip from SD Card" > then "Install from SD Card" and find your rom file just like you did for the kernel/modem. This will take a little longer to flash

Then back out to the CWM Main Menu, select "Advanced" > "Fix Permissions" and let this run it's course

Now, to convert your /system, /data and /cache partitions to ext4, got to the "Voodoo Lagfix" menu and select "enable lagfix" and "/system lagfix on" (they are set as default, but just in case)

Now go back to the CWM Main Menu and select "Reboot System Now". You will hear a voice (her name is Linda) and she will be updating you on the progress of your conversion. Just let her do her thing and once again let the phone sit for at least 10 minutes before messing with it (I know it can be hard to do if you are really excited about messing with your new shiny custom rom, but please resist the urge for at least those 10 minutes :D:p:D)