Disclaimer: Everything you see here is at-your-own-risk. If this doesn’t work for you, or it ends up bricking your phone, etc., it’s your own damn fault. Sorry. All I can say is that it worked great for me.
You’ll need to download all of these files before you get started. If figuring out how to download these things proves to be too hard for you to figure out, then you should not be attempting this project. You probably don’t understand enough of the basics, and will make a mistake that will likely brick your device.
- Heimdall Suite 1.3.0 (12.8 MB)
- Stock Gingerbread ROM I897UCKF1.rar (190.1 MB)
- Cognition 5 v2: Cognition5-v2-initial-kernel.tar (6.4 MB), Cognition5-v2.zip (148.4 MB)
Now, let’s get started …
1. BACK UP EVERYTHING FIRST!
Use Titanium Backup to back up all of your data and apps. Use ClockworkMod ROM Manager to back up your current ROM.
Don’t say I didn’t warn you …
2. Copy Cognition5-v2.zip to your internal SD card
You’ll need to do this first, before you start the following steps. Hook up your phone using your USB cable and use “mass storage mode” to copy the zip file over.
3. Reboot into download mode
Throughout this process, you’ll need to keep putting your phone into “download mode.” You’ll know you’re in download mode because the phone will display a screen with a big yellow triangle with the Android robot holding a shovel, and the word “Downloading…” underneath it, and the words “Do not turn of Target!!!” at the bottom of the screen.
To put your phone into “download mode,” use the following steps:
1. Disconnect the USB cable, remove your battery.
2. Wait 5 seconds.
3. Connect the USB cable.
4. Press and hold the volume up and volume down buttons.
5. Insert the battery.
If you’ve done this right, you should be in download mode.
4. Flash stock Gingerbread using Heimdall
I’m not thrilled with the Heimdall frontend, so I just use the command-line interface using Terminal.app.
First, verify that Heimdall can see your Captivate in download mode. You should see:
$ heimdall detect Device detected
If, instead, you see this:
$ heimdall detect Failed to detect compatible download-mode device.
Stop now. Go back, figure out what you did wrong. You cannot proceed until Heimdall can see your phone connected via USB and in download mode.
To flash the stock Gingerbread ROM, we’ll need to prepare a little bit, first. Start by extracting the I897UCKF1.rar file, which should contain the following files:
CODE_I897UCKF1_CL273832_REV02_user_low_ship.tar.md5 Kepler_odin_new_part_JE3_S1JE4.pit MODEM_I897UCKF1_CL1017518_REV02.tar.md5 odin v1.81.zip SGH-I897-CSC-ATTKF1.tar.md5
We will need to extract the files from two of these tar files:
$ tar xf CODE_I897UCKF1_CL273832_REV02_user_low_ship.tar.md5 $ tar xf MODEM_I897UCKF1_CL1017518_REV02.tar.md5
Now we should have the following files: Sbl.bin, boot.bin, cache.rfs, dbdata.rfs, factoryfs.rfs, modem.bin, param.lfs, zImage. With our Captivate in download mode, we will flash these using the following command:
$ heimdall flash --repartition --pit Kepler_odin_new_part_JE3_S1JE4.pit \ --factoryfs factoryfs.rfs --cache cache.rfs --dbdata dbdata.rfs \ --param param.lfs --primary-boot boot.bin --secondary-boot Sbl.bin \ --kernel zImage --modem modem.bin Heimdall v1.3.0, Copyright (c) 2010-2011, Benjamin Dobell, Glass Echidna http://www.glassechidna.com.au This software is provided free of charge. Copying and redistribution is encouraged. If you appreciate this software and you would like to support future development please consider donating: http://www.glassechidna.com.au/donate/ Initialising connection... Detecting device... Claiming interface... Setting up interface... Beginning session... Handshaking with Loke... Uploading PIT PIT upload successful Uploading KERNEL 100% KERNEL upload successful Uploading MODEM 100% MODEM upload successful Uploading FACTORYFS 100% FACTORYFS upload successful Uploading DBDATAFS 100% DBDATAFS upload successful Uploading CACHE 100% CACHE upload successful Uploading IBL+PBL 100% IBL+PBL upload successful Uploading SBL 100% SBL upload successful Uploading PARAM 100% PARAM upload successful Ending session... Rebooting device...
After the device reboots, you should have a working Captivate running stock Gingerbread ROM.
5. Flash Cognition 5 v2 using Heimdall
Again, put yourself in download mode using the instructions from the previous step, then flash the Cognition 5 v2 initial kernel:
$ heimdall flash --kernel Cognition5-v2-initial-kernel.tar [...] Uploading KERNEL 100% KERNEL upload successful Ending session... Rebooting device...
From here, follow the usual steps to get into ClockworkMod Recovery, and install the Cognition5-v2.zip update that we copied onto the internal SD earlier in step #3.
If all goes well, you should be able to reboot your phone after the update and be up and running on Cognition 5 v2!
If I’ve made a mistake in any of the steps, or have left out important details, feel free to help correct them by leaving a comment below.