[Xperia Arc General] Someguyfromhell:
Tutorial includes stock firmware .ftf files for Flashtool!

Changelog:

22-08-2012 - Expanded to Xperia Arc section.

This tutorial has been created to help XDA members in order to modify their 2011 Xperia phone. This tutorial is originally made for Xperia Ray by hansip87, link to original topic xdaforums.com/showthread.php?t=1426912.

Same tutorial in Xperia Mini & Mini Pro & Active section: http://xdaforums.com/showthread.php?t=1568792

These tutorials can also work on other 2011 Xperia phones. Instructions will also work with ICS unless written otherwise, so read carefully!

All kinds of ideas/comments/critism are always welcome.

Everything you do is on your own responsibility. I am not responsible for any damage that you have made to your phone.

Tutorial includes:

Android Dictionary

Root the Phone(GB and ICS)

What to do after rooting(apps etc)

Installing stock firmware and downgrading

Install Busybox and CWM Recovery

Unbricking your phone(after OTA update)

Install Supercharger to optimize Memory and KAK to optimize Kernel

Edit build.prop for additional optimizations

Enable Dual Band and Burst Mode for Wifi

Unlocking bootloader

Installing custom kernel

Installing custom ROM

Relocking bootloader

Preparing for ICS

Overclock/Underclock/Undervolting guide

Downloads

Frequently Asked Questions(FAQ)

Yet to be added:

List of system apps and which can be removed - Gingerbread and ICS

Optimizing battery life

What will you need:

Stock ROM on your Xperia and USB cable

PC Companion installed on your computer (for base drivers)

FlashTool(Flashtool topic and download)

Enable "USB DEBUGGING" from Menu -> Settings -> Applications -> Development

Enable "UNKNOWN SOURCES" from Menu -> Settings -> Applications

Set Connectivity mode to MSC from Menu -> Sony Ericsson -> Connectivity -> USB Connection Mode

Root Explorer or any file manager that provides access to root (I personally used ES File Explorer)

1. Android Dictionary

ADB - Short for Android Debug Bridge. Part of the Android Software Development Kit (SDK), it allows for ROOT-level access to the Android device from a computer.

Android - Operating System for smartphones and tablets, based on Linux, built by Google, similar to Windows on PC.

AOSP - Short for Android Open Source Project. The open-sourced code from which individuals can build new distributions of Android.

APK - An Android executable file, similar to the .exe file in Windows. Most programs will install with a .apk file.

Baseband - System of a smartphone, that controls the cellular radio systems(GSM, 3G, HSDPA etc).

Bootloader - Controls the booting process, makes sure that you will access User Interface. These programs tell the Android device how to start up, and are critical to its functionality.

Build.prop - A plain text file which contains environmental variables for the system to use during operation. Can be hacked to fake a different model for increased functionality, among many other operations.

BusyBox - Command line bridge, used to give commands to Android system. You will need app to send commands, it will use BusyBox to send the commands.

Brick - A phone, that you paid a lot for and now you can use it as brick, because it doesn't start up.

CWM/ClockworkMod Recovery - A specific program, that is used before booting to Android. Allows the user to make full backup of system and install custom ROMs, updates etc.

CM - Short for CyanogenMod. CyanogenMod is an Android build built from the Android Open Source Project, and its builds are usable on multiple different Android Devices.

Dalvik Cache - The collection of program information stored for use by the DALVIK program. This can be cleared from the RECOVERY menu to resolve issues with the Android OS.

Deodexed - Removing the .odex files from an APK file. The .odex files contain a list of dependencies for the associated file, and if something changes, the .odex (and similarly, the associated file) not longer function correctly.

Downgrade - A job, that you have to do, when you want to get from newer firmware to older firmware.

Factory Reset - This will remove all user customizations in the Android OS, returning it to a factory state. Note: This will not wipe the Internal SD card.

Fastboot - Command Line Tool to edit Android filesystem. Unlike flashmode, this allows flashing unsigned partition images.

FC - Short for FORCE CLOSE. See FORCE CLOSE.

Flashing - The act of writing code to the Android device. ROMs, MODEMs, KERNELs, and BOOTLOADERs can all be flashed. Independent from, and having nothing to do with, Adobe's Flash product.

Flashmode - Phone mode, where you can freely flash any firmware to your phone via WotanServer or Flashtool.

Force Close - When a program on the Android device becomes unstable, the DALVIK program will force it to terminate to prevent further system instability.

GB/Gingerbread - Android 2.3 version, codename Gingerbread, mostly used shortly as GB.

Governor - A program that interacts with the device hardware to increase or decrease the processor's clock speed (e.g. at low usage, it will set the processor speed to 400 MHz, but as usage increases, it would scale up to 1000 MHz).

HSUPA/HSDPA - Short for High Speed (Up/Down) Packet Access. This is 3G+, and is the Android device's internet speed level between 3G and 4G.

ICS/Ice Cream Sandwich - Android 4.0 version, codename Ice Cream Sandwich, mostly used shortly as ICS.

Kernel - Bridge between hardware and Android, used for hardware information exchange and control hardware parts(CPU etc).

Launcher - A program that launches programs in Android. Examples are Touchwiz (Samsung), Launcher Pro, ADW Launcher, and Go Launcher.

MD5 Checksum - A 32-digit (128-bit) hash number generated by a cryptographic program to ensure that a downloaded file matches the original file. The original file is run through the MD5 generator program, which creates the 32-bit number. This number is checked against the md5 number created with the file the end user receives to ensure file integrity.

Nandroid Backup - A complete system image backup of the Android device except for the MODEM and KERNEL. Can be accessed from CWM.

OTA/Over The Air - Updating your phone firmware directly from your phone via 3G or WiFi connection.

Overclocking - Setting the processor's clock speed to run faster than its default setting, i.e. 1200 MHz (1.2 GHz) vs 1000 MHz (1.0 GHz).

RAM - Random Access Memory, data storage area, where are currently in use apps and services. It is used, because it has really high data transfer rate compared to other possibilities(SDcard, hard disks etc).

ROM - Read Only Memory, data storage, where the data can only be read by system itself. It includes all data to start the Android. Many developers edit this ROM to change Android interface.

Root(ing) - Process, during which user gets access to Android system partition and files, giving the possibility to edit Android.

SEUS - Sony Ericsson Update Service, can be used in some cases to get back to newest stock firmware.

Undervolting - Setting the voltage levels drawn by the Android device to a lower level to reduce overall battery usage.

WotanServer - A paid application, which can be used to flash any stock firmware version with kernel to your phone.

2a. Root your phone - Gingerbread – only firmware 4.0.2.A.58 or older

Currently ZergRush method by DoomLord is the simplest way to do it.

NOTE: If you have newer firmware(4.0.2.A.0.62 or 4.0.2.A.0.69), check tutorial 3 first to downgrade your firmware.

Download the attached file from here, extract it to a folder using any .zip manager, for example 7-Zip.

Connect Phone to USB.

Execute "RUNME.bat" from the extracted folder.

Follow the instructions in the window.

The phone will be rebooted, after reboot you will have Superuser app and your phone is rooted!

Don't forget to thank DoomLord on the original link in the credits ;)

Now you can access system files on your Android. Some file manager apps will require you to set a ticker to get access to the root, ES File Explorer is one of them. What to do now? Read the next tutorial.

2b. Root your phone – ICS 4.1.A.0.562 ONLY

NOTE: Make sure you have Android 4.0.3 and 4.1.A.0.562 firmware! This might not work on Android 4.0.4!

Download the file from this post, extract it to a folder using any .zip manager, for example 7-Zip/WinRar.

Make sure all drivers are installed.

Make sure USB debugging(Menu\Settings\Developer Options\Development) and Unknown Sources(Menu\Settings\Security) is allowed in the settings.

Connect Phone to USB.

Execute "RUNME.bat" from the extracted folder.

Follow the instructions in the window.

The phone will be rebooted, after reboot you will have Superuser and Busybox and your phone is rooted!

Don't forget to thank DoomLord on the original link in the credits ;)

Now you can access system files on your Android. Some file manager apps will require you to set a ticker to get access to the root, ES File Explorer is one of them. What to do now? Read the next tutorial.

2c. Root your phone – ICS 4.1.B.0.431 and newer

First update your phone to the newest firmware.

Use Flashtool to flash a ICS 4.0.3 stock firmware kernel to your phone.

Run the exploit created for 4.1.A.0.562 firmware, explained in previous tutorial.

Install back ONLY the newest kernel.

Now you can access system files on your Android. Some file manager apps will require you to set a ticker to get access to the root, ES File Explorer is one of them. What to do now? Read the next tutorial.

3. What to do after rooting?

Congratulations! You've rooted your Android phone. But...what now? Here is a list of what you can do:

Install Titanium Backup. It allows you to backup all system and user apps with all data that belongs to the app. Very useful when installing firmwares and wipe is required. Using this program, you can easily backup and restore lots of apps at once. Also includes some other functions, link to Play Store.

Edit your Android. In this tutorial are some modifications that can be done. Read the forum, explore different sections and look for more modifications(there are thousands of them!), that you can do. Watch out, make sure that it will work on your phone, else you might mess up something and need to reinstall the ROM.

Remove unneeded system apps to free up some space on the ROM. This [/B]topic, http://xdaforums.com/showthread.php?t=1089470, includes info about APKs, that can be removed and what must stay.

4. Installing stock firmware and downgrading

In the newer firmware, the ZergRush exploit has been blocked. If you want to return to stock ROM or you want to get your phone rooted, you have to install (older) firmware to your phone, which can be done 2 ways:

Flashtool, you need to find correct files yourself.

WotanServer, you have to register a account. - Costs €1.99

Flashtool method

Download the correct firmware file for your phone at the bottom of the post.

Make sure Flashtool is installed.

Place downloaded firmware file(.ftf format) in Flashtool\firmwares(by default C:\Program Files\Flashtool) folder.

Start Flashtool.

Click the lightning button and choose Flashmode.

Firmware should appear there, if you have it in correct folder. Choose it.

Turn off your phone, connect USB cable to computer, then press Volume Down button and connect USB cable to your phone.

Flashtool should detect your phone and starts flashing. Follow the instructions.

When it says „Flashing completed“, unplug your phone and turn it on.

WotanServer method

Go to WotanServer.com, make an account and download the client.

Start the client.

It wants to find your phone. Turn off your phone, then connect USB cable to computer, press Volume Down button and connect USB cable to your phone.

WotanClient detects your phone automatically.

Click Advanced Settings and choose firmware (4.0.2.A.0.58 or older if you want to root).

For region, it isn’t a big deal, which one you choose, although picking own one is easier.

Next, enter your account details(e-mail address and password) and click Update. Make sure you have enough credit.

Click Next and it will download proper firmware files and automatically install them.

When it’s ready, unplug your phone and turn it on.

After that you can proceed with rooting your phone, which is explained in previous guide. Or just enjoy your recently installed stock ROM :)

5a. Installing ClockworkMod Recovery

NOTE: You must have stock and rooted phone!

NOTE: Most custom kernels already include Recovery.

What you need to do:

Go to this link: http://xdaforums.com/showthread.php?t=1346190 and download SE Tweak Installer.

Connect your phone via USB cable.

Start SE Tweak Installer.

Pick CWM, which is for your phone.

Click Install and wait. When it is ready, CWM is installed.

There is one more solution to install Recovery.

Go to Android Market/Play Store.

Search for X-Parts.

Download the app to your phone and start it.

Follow the instructions to install the Recovery.

And enjoy having a recovery.

To enter the Recovery, turn off your phone, then turn it again, when Sony Ericsson logo appears, get ready. When screen gets brighter during Sony Ericsson logo, click Volume down button(I usually keep clicking it until I get into the recovery).

To move around in Recovery, use volume buttons to go up/down, Menu button to enter, Power button for back(in some cases, also back button works).

5b. Installing BusyBox

NOTE: Requires root.

NOTE: If you used zergRush method to root, BusyBox is automatically installed already and you can skip this.

Go into Play Store(Android Market) and search for BusyBox Installer.

Download it and start it.

Follow the instructions.

6. Turning the "brick" into a smartphone

If you had unlocked bootloader and did OTA(Over the Air) update, then you probably ended up with a dead phone, aka brick. Don't worry, it is not completely bricked, still can be saved!

Download UnbrickingXperia2011.zip file from this post below.

Unpack the .zip file and place the .ftf file in Flashtool\firmwares folder.

Open Flashtool.

Get your phone to flashmode, make sure it is turned off, press down Volume DOWN button and connect USB cable.

In Flashtool, click the lightning button, pick Flashmode and choose the Xperia_2011_FreeXperia_ALL.ftf file.

Let Flashtool finish.

Install stock firmware and kernel to your phone.

Remove USB cable from your phone and start your phone.

Try not to brick it again, less problems for you. :)

7a. Installing V6 Supercharger

Both can be used to improve the speed of your phone. Supercharger is meant to improve RAM, KAK is for kernel.

Install Script Manager.

Download Supercharger from this topic, http://xdaforums.com/showthread.php?t=991276, make sure to download the "V6_Supercharger_for_Android-update8.sh.txt" file.

Place the file on root of your SDcard, that is the main folder on SDcard(where everything else is).

Open Script Manager, start the V6 Supercharger as normal. You can choose 0 as scrolling speed.

Pick the choice, that you like. I have used Agressive 1 personally(enter the number infront).

When done setup, just exit from the menu (no.17). The result file named 99Supercharger will be generated at /data/ (or in /system/etc/init.d/99Supercharger if you have init.d mod)

(If you use init.d mod, skip this) Open Script Manager, select the /data/99Supercharger.sh, and when the properties window pops up, tag it as "su" and "boot") The ScriptManager will load it at startup and as root, otherwise it will fail.

To test if the script is loaded or not, launch again the setup script(repeat step 4-5) You will find a text like "Launcher is.. xxxxxxx" if it is written as "weak", the script is not running yet. If it is "hard to kill" it is running correctly.

7b. Installing Kickass Kernelizer

This should improve your kernel, haven't tested myself yet.

Go to http://xdaforums.com/showpost.php?p=22078137&postcount=7649 and download the file.

Open it with Script Manager.

Follow the instructions.

Press I for Install.

(If you use init.d mod, skip this) Open ScriptManager, select the /data/98KickAssKernel.sh, when the properties window pops up, tag it as "su" and "boot") The Script Manager will load it at startup and as root, otherwise it will not work properly.

Reboot your phone.

To verify, run it again after reboot and when it offers Verify, choose it. :)

8. Editing build.prop to optimize your phone's system

Build.prop consists of quite a lot lines, which set up, how some phone functions work. To edit the file, you need root rights and a program to explore root(ES File Explorer, Root Explorer etc).

Making a NANDroid backup in Recovery first is a good idea, because if you make a mistake in build.prop file, and phone does not boot into Android, you can still restore it.

Start your Explorer app and go to directory \system

Open build.prop file with a text editor.

Go with your PC to this post: http://xdaforums.com/showpost.php?p=16833651&postcount=1. There are also other tweaks, you can try if you want(you might need init.d script for your ROM for init.d tweaks).

Read the first part of the post, there are some build.prop tweaks, choose which ones you want.

Make modifications in your build.prop file, save it and restart your phone.

Changes should take effect, if you have made a mistake, edit the file again or restore the backup, depending on the situation.

Some more tweaks for build.prop, init.d etc:

http://xdaforums.com/showthread.php?t=1289539

http://xdaforums.com/showthread.php?t=1342241

9. Enabling WiFi Dual Band and Burst Mode

As the title already, this is to increase the internet speed for WiFi on your phone.

Personally, I didn't notice any difference in battery usage.

Open Root Explorer, go to \system\etc and open file named tiwlan.ini with Text Editor.

Edit these lines:

HT_Enable=0
BurstModeEnable = 0
WiFiAdhoc = 0

to

HT_Enable=1
BurstModeEnable = 1
WiFiAdhoc = 1

and

Single_Dual_Band_Solution = 0

to

Single_Dual_Band_Solution = 1

Reboot your phone.