One common problem in the Android domain is that the system evolves but that the operators and hardware vendors do not follow the path of upgrades, so even using fairly fresh hardware, you are stuck with the version supplied in the purchase. The reason for this guide is that I upgraded the system software in my phone to GingerDX 021 and it refused to boot, why I had to do the stuff all over again and hence could document with previous experience of doing it before.
Please mind that with freedom comes responsibility – if you can’t handle that, buy an iPhone where Apple will ensure that you cannot do anything harmful, or at least stay on standard distributions. The below text is only for those who embrace electronic freedom, and understand that liability shifted to you once you take this step.
Android and upgrades
Two mandatory reads on the subject:
http://www.pcmag.com/article2/0,2817,2397729,00.asp
http://theunderstatement.com/post/11982112928/android-orphans-visualizing-a-sad-history-of-support
However, we are a lucky bunch as there are MANY people involved in the process of bringing recent edition of the OS to orphaned hardware. Sadly the system itself is fairly locked and you need low level hackers opening it up, why the tools are quite often everything but user friendly. There are guides and forums (XDA Developers being the leading one). They often tell you HOW to do things but rarely why you do each step and often the steps are very general and you need to understand quite a lot in order to succeed in following the guides.
My aim in the below is to give you an X10 Mini guide that is a bit easier. Much of the text is based on the guides from XDA Developers, especially this one.
Key part – lots of what you do can go wrong, and the part which can go really wrong is that updating the phone system software is interrupted. You have then typically “bricked” the phone, rendering it to be a useless piece of weight. Please mind that with the X10 Mini this is not really possible. It’s always possible to get out of the loop which means that you can play along heavily and be fairly risk free.
This video shows in a really good way how you can do the work.
Having said this; I TAKE NO LIABILITY IF THIS GOES WRONG! You mess with your phone on YOUR risk, not mine!
Key presses you must know
Reset the X10 Mini: Press ON/Off and menu (the button on the top, and the “square symbol” button).
Enable flash mode: Turn off the mobile. Press “back” (left arrow) and insert the USB. Please mind that you are NOT requested to turn On the phone again. If this works, the led turns green and shine with a steady green light.
Enable flash mode from hung state: Press and hold the “back” button (arrow pointing left), and then press the reset combination (on/off + menu). Release the reset combination, while still holding the “back” button and insert the USB cable. If this works, the led turns green and shine with a steady green light.
Reboot into recovery: Custom recoveries are evoked by repeatedly pressing “back” during boot.
Software you might want to have
PC Companion or SEUS – Sony Ericsson’s own stuff. You need to have it installed (one of them -either will do) as it contain the proper USB drivers. PC Companion is a bit of bloatware, containing much more than you need. back in the old days you synced the handset to the PC, but today you should do that over the air and the USB connection should only be for fiddling and possibly leeching the pictures and pushing new music to the device. (SEUS is not really published in a visible way, so you need to knowwhere to find it. A suggestion is the site of an XDA user, seus.tk )
SuperOneClick – In order to gain “root” access you need a method. This is the solution for dummies and for the experts who know better than use commands and switches if a “point and click” solution is available.
Distributions and Kernal file – Many people evolved the android system in all sorts of different direction. Some are “original ones” and some are flavours of other editions. Some of them are based on the stock ROM but some require a revised ROM. There is no way one can say that one is better than the other and it’s a matter of taste.
If you select a distribution that need a different kernel file,you also need these files:
S1Tool – Gives some information on the system.
MSM 7227 – Based on the information from ther S1 Tool, you use this package to adjust the bootloader so that you can flash using the FlasherTool
FlasherTool – This allows you to install ROMs to the phone – either the standard one, or a custom one. The flasher tool include something Gordons Gate drivers, which you also need.
Steps to do
1) Select a distribution.
The distribution I have picked is GingerDX. It’s based on a CyganoMod version of the system, and it’s fast and stable. Pretty much what you want from a system. This part is a total jungle though. Will require a lot of forum reading. This forum is where to go for input and suggestions and it’s well over what one would normally hope to see.
New version of GingerDX (021) requires a modified Kernel, called nAa (NAa stands for Nobody At All, which is a user of the XDA forum). A safe option might be to pick up the
Installing GingerDX itself is not that difficult – the hard part is the Kernel as it requires unlocking the bootloader.
2) Root the phone
The SuperOneClick program above does this. The mobile should have the on, fully booted and you allow remote debugging. A bit of visual guide here.
Run SuperOneClick as administrator on your PC. Press the “Root” button. That’s it. There are similar “one button” applications that work for other phones. Some run on the phone itself and some on the PC. It’s also possible to do it “manually” on the PC using the ADB shell interface, if you insist on doing something the hard way.
3) Mess with the bootloader (only needed if you should update the Kernel)
Admittingly, this is the hairy part.
The S1Tool is run to tell which of the CMD files in the MSM package you shall run.
# Download and install S1, FlashTools, MSM 7227 and Gordons Gate (as you installed the Flash Tools this is in the “drivers” folder of the installation).
3.1.a) Launch the S1 application
3.1.b) Press the “Do job” button (on the right)
3.1.c) Pick up your phone and enter Flash mode (see the “key presses” section above) and insert the USB stick. The program then picks up some relevant data. key part is the SEMC SIMLock certificate. If it’s there you are good to go. Please read the details on SIM lock and stuff here. (please mind – I’m not sure what it all means even if I am well aware what SIM lock is and how it works)
3.1.d) Close the S1 tool
3.2.a) Depack the ;SM 7227 package to a folder of your choice.
3.2.b) If you, as I, had SEMC SimLock certificate, feel free to run the “msm7227_semc.cmd” as administrator (right-click and select, run as administrator). Let it do it’s work and then your done.
3.3.a) Install the Flash tool
3.3.b) Download the kernel you wish to use. In my case the nAa 08 one. Place it in the “firmware” folder of the Flash Tool Installation.
3.3.c) Install and run the Flash tool.
3.3.d) Press the Flash button. The system will ask you to put the phone in flash mode, but you already know how to do that.
In case some part of my text is unclear, please read this and this.
3) Mess with the recovery (only if you didn’t mess with the Bootloader)
As with distributions, there are several to chose from. ClockWorkMod, xRevocery and so on. I picked the CWM for you as this is the easiest installer as there is a phone program to do it.
Use the Android market to download the “ROM Manager”; There are several ones but you should pick the one that looks like a cogwheel with a hat. From it, select to install ClockWorkMod.
Many videos and guides will show it; here.
Optionally pick the xRecovery, which there seem to be even more guides for; here and here for starters.
Third option is this, which is also an application run on the phone.
Please mind that all three options require that you have a rooted phone, as was the result of step 2) above.
4) Place the distribution on the SD card.
You can either copy the distribution to the SD when it’s in the phone or take it out and insert it it an SD reader directly to the PC. Please mind that you are to copy the ZIP and place it on the SD – do NOT unpack it, as the installer will do this. As stated above, I placed the GingerDX distribution on the SD.
5) Reboot the phone into recovery
When you have the recover menu on the screen, select “Install custom ZIP” or something similar.
When done, you are done!
Welcome to the new world of a free PhoneOS that lets you do what you want with it.