[Sony Ericsson Xperia Mini, Mini Pro, Xperia Pro, A] Wechy77:
UPDATE: Original thread was created by hansip87, thank for the great work, appreciate his time collecting the guides

UPDATE: Ok to honour chiefy009 original post about collection of mods that being used here, Please go here to appreciate his time collecting the mods. Without him, this tutorial won't be complete and i won't find out that Arc's file system is directly applicable to our Ray. Say thanks to him, and hopefully this tutorial can continue to help you all.

Hello, just want to help other noobie who owns Xperia Ray (or Arc/Neo/Pro - similar device) to have a step-by-step optimizing the Stock ROM of Ray. Optimizing means that you as user have more efficient and faster experience with your Xperia. This is the summary of steps, explained later:

Root the Phone

Install Busybox and CWM Recovery

Enable Dynamic Brightness on Ray

Install Quick Panel Setting to Statusbar

Install Reboot Menu + Scrolling Cache Disabled + 30 steps Volume Stepping

Remove Bloatware from your Phone

Move big games/apps to SD

Install Supercharger to optimize Memory and KAK to optimize Kernel

Edit build.prop to Optimize Ray

Enable Dual Band and Burst Mode for Wifi

(Additional) Recalibrate Your Battery

*WARNING For Advanced User Only* Unlock Bootloader and Apply OC+UV kernel

HOW TO FALSH JB ROM, IF YOU ARE A NEW ANDROID USER OR YOU UNLOCKED A BOOTLOADER FEW WEAKS AGO

Basic Requirement:

Stock Ray(kernel 42 or lower)and cable

PC Companion installed on the computer (for Ray base driver get installed)

FlashTool(http://xdaforums.com/showthread.php?t=1351324)

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 app or any app like it.

This tutorial is based on my experiences on my phone fw.42, but still apllicable for .62, except step 1 needs to have different implementation. Read here

1. Root the Phone

External link: {Guide} How To Root Xperia™ Smartphone Running ICS ( Ice Cream Sandwich) or GB ( Gingerbread )

GB Version:

(original:http://xdaforums.com/showthread.php?t=1320350)

This is the base of all modification of the Stock ROM. This is to enable you to insert anything to your phone system file. Currently ZergRush method by DoomLord is the simplest way to do it. So let's go:

download the attached file from link above, extract it using winzip/winrar

Connect Phone to USB.

execute "RUNME.bat" inside the folder you extracted at no 1.

follow the instruction that is being displayed.

The phone will be rebooted and voila it's rooted!

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

ICS Version:

Follow this thread for ics 4.0.3, - Build 4.1.A.0.562:http://xdaforums.com/showthread.php?t=1600728 thanks to asertyio!

YOU CAN'T ROOT 4.0.4 (4.1.B.587) DIRECTLY If you are on ics 4.0.4 Build 4.1.B.0.431 or Build 4.1.B.0.587: Follow this guide [GUIDE] Rooting Xperia 2011 devices with ICS(4.1.B.0.587)

2. Install Busybox and CWM Recovery

(original:http://xdaforums.com/showthread.php?t=1346190)

This one is for enabling the phone to have a utility to cleanup and update your Ray with some of the great mod here. Busybox is a basic tool for embedded device to run Desktop OS-like command on your phone. Here are the steps:

Install BusyBox Free from STEricsson from here, run and install the busybox from there.

Download the SE Tweak Installer from link above

Connect your Phone to USB

Run the SE Tweak Installer, select the device type to the Ray one (or depends on your other Xperia type)

Check Auto Reboot if you want to test right away.

Press Install and follow the process.

Give thanks to quangnhut123 at the above link ;)

Note 1:

To access CWM Recovery, turn off your phone, and reboot. Once the Sony Ericsson logo appears, quickly spam the vol- button until the CWM Recovery displayed. access the CWM recovery with Home button for OK, Return button for returning to parent menu, vol+ vol- to access the menu.

Note 2:

There are Alternative method for BusyBox to be installed. You can do it by installing BusyBox installer from Market or using Titanium Backup and download it from "Problems?" button at the bottom of TB.

You can use x-Parts [CWM Installer] made by pvyParts. Download link from play store: x-Parts

ICS Version:

Still the same :), but if you had problem of charging offline, try to replace charger file with the following thanks to pvyparts!

3. Enable Dynamic Brightness on Ray (original:http://xdaforums.com/showthread.php?t=1377125)

This is to enable Dynamic Brightness on Xperia Ray. 4 Me this is not really a big deal, but it is a nice feature that SE should have applied in the first place. It is to reduce brightness on dark places automatically. Here are the steps:

with Root Explorer, open /system/etc/hw_config.sh in Text Editor (press and hold the file and Open the Text Editor). Don't forget to mount as R/W first.

change line

to

Save the changes

If you want to improve, use the als_curve.zip available at link above and replace to als_curve.

Make sure als_curve and hw_config.sh get correct permissions (rw-r--r--)

Don't forget to thanks arcatarc :D

Note: This mod does not have instantaneous effect. To seen it, please use a Browser and do a blank white page to test if the script are working or not. To test it, close and open the upper right part of the phone. :)

ICS Version:

No Changes. Still the same :)

4. Install Quick Panel Setting to Statusbar (original:http://xdaforums.com/showthread.php?t=1392472)

Cluttered with widget to turn off/on settings? Wishing to have Statusbar widget instead? Download from the above or.. I have new and my own rebuild version from sj8023ld's mod. Please go here to download my version (2 More Brightness selection toggle)

ICS Version:

Go here to install the ICS version. Install the SystemUI package - by hansip87

Go here to install TABBED Xperia T SystemUI, Small QP and STOCK Bat - by adulfo

5. Install Reboot Menu + Disable Scrolling Cache + 30 Media Volume steppings (original:http://xdaforums.com/showthread.php?t=1089470)

Please read and download from here http://xdaforums.com/showthread.php?t=1437686

NOTE: Step 4 and Step 5 is already merged into my mod. Please download from here to have them all and another mod you might need.

ICS Version:

Go here to install the ICS version. Install the Part A and Part B together.

6. Remove Bloatware from your Phone (original:http://xdaforums.com/showthread.php?t=1089470)

Don't need some of the Bloatware from your Phone? you can check out the list above. There are multiple option to uninstall, with Titanium Backup or straight through Root Explorer, delete safe apk's from the /system/app. Your choice.

Say Thanks to constin for the list.

But Oh! some apk won't uninstall after reboot! Help?!

There are some apps that stays on the system even after we remove it. Now here's how to do it:

Remove the apk's with Titanium Backup or Root Explorer.

Browse to /etc/customization/applications and /etc/product/applications with Root Explorer. This is the storage of additional bloatware from the distributor that will get installed on next reboot. Delete any of the unneeded apps here.

You're done. :)

ICS Version: Still the same :)

7. Move Big apps to SD(original:http://xdaforums.com/showthread.php?t=686588)

Surely some games eats up your valuable space on the phone. Here are the steps to move them to your SD.

*WARNING* if you move non-game app to SD, make sure the app:

does not have widget feature

does not need to be running at startup

does not nedd root access

Here are the basic steps:

go to Menu -> Settings -> Applications -> Manage Applications

select the SD card tab, choose one of the apps

press Move to SD card.

if failed, try again to move it. Usually happened because of unclean SD card from previous usage.

But there are some games that for some reasons, developer restricts it to be on phone memory. Well you can move it though by your self. Here are the steps:

Connect Phone to USB

go to Google SDK folder or FlashTool folder

Open command line that points out to the place where adb.exe exists

type (without semicolon) "adb shell pm setInstallLocation 2"

Do the basic steps above, move the games to SD

back to the computer, type "adb shell pm setInstallLocation 0" to restore.

Say thanks to Henchman for the tip at the above link :)

Note: explanation for parameter on adb shell pm setInstallLocation:

2 is for SD, 1 is for internal memory, 0 is for Auto

ICS Version: Still the same :)

8. Apply Supercharger to improve memory management and KAK to optimize Kernel(original:http://xdaforums.com/showthread.php?t=991276)

Irritated by Home Launcher not responding quickly after playing games or browsing web on 8 tabs? Install Supercharger to optimize your phone.

Basically there are two major steps to do it:

Setup Supercharger to your liking, run with Script Manager. Don't assign the script as startup boot script!

Run Supercharger result script at startup of phone. Can be achieved with Script Manager from Market or with init.d mod from here: http://xdaforums.com/showthread.php?t=1405590 say thanks to iridaki! :)

You can read here too for help(http://xdaforums.com/showthread.php?t=1334834). Here is my short version of steps:

Download the first Supercharger setup script from the first link on this matter above (http://xdaforums.com/showthread.php?t=991276). it is currently named as V6_SuperCharger_for_Android-update8.sh.txt, put it on your SD card

Install and open script manager, Find the downloaded file and run the script as normal one

When asked the first time at making setup of Supercharger (speed of scrolling), i put 0 as choice (you can experiment here too, just cutting it short for you now)

After that, list menu pops up. When selecting from Supercharger menu, choose the Aggressive setting 1 (there are 6-8settings? i haven't tried it all, but the Aggresive 1 is adequate)

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

(If you use init.d mod from iridaki, skip this one) Open ScriptManager, 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 value is loaded or not, launch again the setup script(repeat step2-4) 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.

say thanks to chiefy009 for his finding too here (http://xdaforums.com/showthread.php?t=1423336)

say thanks to zeppelinrox @http://xdaforums.com/showthread.php?t=991276 for the Supercharger script, The most awesome script for Android :cool:

Additional thanks to dreezz for the correction of the location of 99Supercharger file (it depends on the whether the init.d mod aready installed or not) :) thanks mate!

UPDATE: This one is for running KAK (Kick Ass Kernelizer) Steps are:

Download from here: http://xdaforums.com/showpost.php?p=22078137&postcount=7649

Run the script with Script Manager

Just follow the instruction, I/O Tweak is optional, and i don't recommend it at this time. Please pass when asked.

Press I for Install

(If you use init.d mod from iridaki, skip this one) Open ScriptManager, select the /data/98KickAssKernel.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.

Reboot

To verify, run again after reboot, and when offered choice to Verify, please Verify. :)

Note 1: Still failed? Please do recheck first and if all else fails, do the following:

Unsupercharge first (do it by running V6_SuperCharger_for_Android-update8.sh.txt and select the UnSupercharger from the menu).

add this string into /system/build.prop at the last line by root explorer.

Give one empty line on the last line to prevent unwanted behaviour.

Save, and reboot.

thanks to coolkaas for the tip! :)

ICS Version:

You need to install services.jar to fix the ADJ issue. Go here. Supercharger for ICS is named V6 Supercharger version 9 RC 8.2. Download here and rename the .sh.pdf filename to .sh.

9. Edit build.prop to Optimize Ray system parameter(original:http://xdaforums.com/showthread.php?t=1227269)

This is the collection of all the additional parameter that can be added to Xperia Ray too. Please read from original link and do the following for step by step action:

Open Root Explorer, go to /system/build.prop.

Mount R/W first, then Open in Text Editor

Insert some of the line from the link above. Don't forget to have a blank new line at the last paragraph to prevent unwanted behaviour. This is what i added to my phone:

Reboot

Because of so many sources about this one, i put some of additional link below and please thanks the ones you use the most! :)

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

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

ICS Version:

There are some tweaks that in particular can increase the ICS memory management. Thanks to flak0 you can have less lag with ICS ROM :D

How? Add/Replace these Lines on /system/build.prop

dalvik.vm.dexopt-flags=m=y,v=n,o=v,u=n [I]//Add This + Remove if Exists[/I]
dalvik.vm.execution-mode=int:jit [I]//Add This + Remove if Exists[/I]
windowsmgr.max_events_per_sec = 300 [I]//Add This + Remove if Exists[/I]
#dalvik.vm.heapgrowthlimit=128M [I]//Add # to comment the line[/I]

10. Enable Burst Mode in Wifi(original: http://xdaforums.com/showthread.php?t=1289539)

This is to increase wifi throughput, enabling more data to be transferred at one time.

Open /system/etc/tiwlan.ini with TextEditor from Root Explorer

Modify these lines

to

Reboot

Say thanks to XtremePeople :)

WARNING!

Beyond this point is for those who like to optimize the speed of the hardware. The upside, you can install another ROM and you can get Overclocking out from your phone. The downside is You risk losing warranty (eventhough the following does not remove DRM keys but still take note about this), so decide for yourself before taking the next steps.

WARNING!

11. Unlock Bootloader and apply OC + UV kernel(

S1 Tools: http://xdaforums.com/showthread.php?t=1363847

OC+UV Kernel: http://xdaforums.com/showthread.php?t=1424121

ICS Kernel: http://xdaforums.com/showthread.php?t=1544513

Original Tutorial: http://androidflip.com/unlock-xperia-phones-bootloader-without-losing-drm-data-track-id-working/

)

Some games getting laggy? Web is not fast enough? Overclock your CPU! Here are the additional requirements:

step 1 and 2 has been done, to prevent unwanted behavior

Phone must not be a branded one (SIM locked) But it is still possible, check the link below

Some thin and long enough conductor (open cable, paperclip, etc)

Steady Hand

S1Tools (http://xdaforums.com/showthread.php?t=1363847)

Of course, Daring to unlock bootloader ;)

Here are some pages that might help if worst case scenario happened:

http://xdaforums.com/showthread.php?t=1126358 - To return from a bricked Ray.

Ok you're ready? Follow this:

Backup your phone (TB, CWM Nandroid, all of em), prepare for the worst

Extract S1Tools to some folder

Turn Off the phone, remove battery

Find the test point, it is under some small rubber cap on upper left of the battery. Open the cap to reach it. it is the fourth one from the top. More info go here: http://androidflip.com/unlock-xperia-phones-bootloader-without-losing-drm-data-track-id-working/

Connect the test point to the negative connector on the battery pin.*

While connecting test point, connect phone to USB, Windows will install driver called ZEUS Flash Device. If the driver is not available, you must update manually from USB flash driver inside S1Tools folder.

You can remove the testpoint for now.

Once driver installed, open S1Tools and press Patch SEMC Boot.

Follow the steps described by S1Tools.**

When Done, the log will be like this:

Insert Battery and reboot. if your log looks like above, then congrats, you unlocked the bootloader without loosing DRM key. :D

Download kernel named bootuv5.img from link above

Do a fastboot (turn off phone, press and hold vol+ while connecting USB)

Open folder inside Flashtool where fastboot.exe exists (/FlashTool/x10flasher_lib)

Place bootuv5.img inside the same folder

Open Command Line inside that folder too.

test if devices is connected by typing "fastboot devices" if there is a result here, continue

type "fastboot flash boot bootuv5.img"

if there are FINISHED text, than you're done!

Boot your phone, install setCPU or any app to control clock speed. Congrats :D

Say thanks to xperia ray for the link ,aire for the kernel, and Kuldeep Singh for the complete tutorial. :cool:

*Note: i prefer this to just connecting to sim metal casing because i can concentrate on the small test point only while the other end can be slipped in between the two negative pin.

**Note: disconnect phone, connect test point again, connect again, press Ready button in S1Tools.

Note: Please be careful for every step when you need to attach test point. It is required to ensure 100% success rate.

12. FLASHING JB ROM FIRST TIME HOW-TO (UNLOCKED BOOTLOADER ONLY)

Try this, slowly, carefully, exactly and in order.

Make sure you have a copy of the (CM10 or PAC or MIUI JB) ROM zip on your SD card.

Using Flashtool, install 4.0.4 in full, Do not exclude anything, all the wipe tick boxes checked.

Unplug your phone, do not turn it on.

On your computer, open the JB ROM zip with WinRAR and DRAG boot.img to your desktop with your mouse. Close the ROM zip.

Holding volume +, plug your phone back in. The light will go blue. The Flashtool window will show connected in fastboot mode.

Open the Fastboot window in Flashtool and select kernel to flash. Pick the one on your desktop. Wait for it to finish (not long)

In the fastboot window, reboot phone into system.

Unplug the phone

The phone should start, if it doesn't then turn it on.

The kernel logo will appear. When the lights flash press Vol - until the wobbly CWM recovery screen comes on.

do this from the menus:

- Wipe data/ factory reset, then Wipe cache.

- Go to advanced, wipe dalvik cache.

- Hit back, go to mounts and storage, format system.

- Hit back, choose zip to install, pick the ROM from your SD card.

Leave the phone for about an hour alone.

Then install gapps from SD card using recovery. Pick reboot to recovery from power off menu.

You do not need xparts. The phone will go back into wobbly CWM screen. Choose zip from SD card. Choose gapps. When installed wipe data, cache, and dalvik cache again. DON'T FORMAT SYSTEM. Reboot.

Q&A:

1. What is the difference between Flashmode and Fastboot? How to enter?

Flashmode is for flashing the kernel from SEUS or FlashTool. Fastboot is to do flashing from fastboot.exe. if you got .ftf file, do with flashmode. if you got kernel or ROM separate, you can do with fastboot. Flashmode spam volume DOWN while turned off and connect the USB, Fastboot spam volume UP while turned off and connect the USB

Usefull guide to using flashtool flashmode/fastboot mode: xperiadev flashtool-fastboot/

2. Fastboot devices can't find my device. What's wrong?

Go to Flashtool\drivers and run the exe. When selection comes up, install Fastboot drivers.

3. New Software is available from SE PC Companion. can i receive it if i did the step 10 above?

Yes you can :) I did it and no problem whatsoever. But for .62 firmware and so forth, the root method is different. You can go to idateyoutoclickthis method here

4. HELP! I bricked my phone, fastboot and flash mode is not working!

Try to download SE special tool named SEUS. This is Update Service application that was used specially for updating SE phone outside PC Companion. You can read the instruction here Say thanks to ygecesefa if this saves you! :D