Sunday, February 10, 2013

LG Optimus SU640: Comfirmed working guide to Flashing Custom Rom

After three long weeks of scrounging the web for a working guide to flashing custom Roms on my LG Optimus SU640 and not finding any clear method which would simply work, I have finally come up with a method that would work just like that.

I would like to thank XDA Developers forum, a great Android Development forum which has taught me a lot.

Declaimer: None of the tools I used are my own, but the combination of what to use is entirely cooked up by me by experimentation. So if you want to copy this, please give credit and link back. And  I am not responsible if you brick your phone.

Without further ado, here is what you'll need to do .

Files you need.

SU640 Drivers : Download LG update Tool from LG website, it will package all the required drivers
Clockwork Mod recovery : Download ClockworkMod version
AllRoot tool : Download AllRoot
A custom ROM for SU640 : XDA developers
SU640 v10i_kdz firmware image. Download
LG_KDZ_FW-Update_OfflineFix  : Download  Download Originally downloaded from XDA but don't have exact link to link back

What you need to do:

Step 1 : Downgrading

Add the following line to the end of C:\Windows\System32\drivers\etc\hosts

Once you have downloaded all the files, copy them to "C:\SU640_Flashing".

Extract KDZ update tool "LG_KDZ_FW-Update_OfflineFix"

In the extracted folder, run "Automatic Offline Procedure".
Press "OK" on first two messages.
A word document will open up (ignore it), and a dialog box , press OK on dialog box. If you are on windows 7, it will show you another dialog box, press "Yes".
You will be presented with "R&D Test Tool" by LG. So far so good.

Make sure your R&D Test Tool window has the following options selected. If not, then select these, the ones marked in Red.

  1. Type : CDMA
  2. Phone Mode: Emergency
  3. KDZ file : browse to v10i_00 kdz file you downloaded
  4. Select model.dll : browse to "model.dll" in  LG_KDZ_FW-Update_OfflineFix folder.
Take out the SIM card, memory card and put your phone in "Download mode"

How to put LG SU640 in Download mode

Turn off your phone. Disconnect your cable.

Keep pressing the Volume Up button and insert your USB cable. wait a few seconds and you will enter Download mode.

Once your phone is in Download mode and connected to computer, press "CSE web upgrade test" on the bottom right corner.

A new dialog box will appear, just press "Start Upgrade"
Another dialog box will appear, select "Different country" and "English" language and Press OK.

A new old-style window will appear, and downgrading process will start. Let it finish, and don't worry if it gets stuck at 4%. Just look at the log, and it will be incrementing to 5% , 6% and so on. You'll also notice a "device model not found" message, you can just ignore it.

Your phone will reboot thrice before you see "(2001,0)" string on the Log. which means the process is complete.

Close the window using "task manager" because it will not reach 100% in progress bar and will not close.

Step 2 : Rooting

Once you have booted into the Korean GingerBread firmware, press the "Left" button and select "English".
You can skip other settings because we are not going to use this ROM very long.

In the settings, "Applications" , select "Unknown sources" , "USB debugging", and connect your phone in "LG Software mode".

Extract the "AllRoot.rar" file. and run "RunMe_En" and follow instructions on the screen.
Once RunMe_En finishes successfully, you are rooted.

Step 3 : Clockwork Mod Recovery

Turn your phone off. Insert the Memory Card and Turn on the phone.
Extract  clockworkmod version 5.8.2 you downloaded. 
Put your phone in USB storage mode and copy recovery.img from clockworkmod folder into your memory card, in "wiredsoup" folder.

Safely disconnect your phone.
Download "Terminal emulator" from Playstore.

Run the downloaded "Terminal Emulator", and type the following commands.

cd /sdcard/wiredsoup
dd if=recovery.img of=/dev/block/mmcblk0p13

once the final command finishes telling you how many bytes copied in and out etc, type the following command

reboot recovery
Your phone will reboot, and present you with "Clockwork Mod recovery" :) congratulations.

Now you can reboot into the korean ROM again, and copy any downloaded custom Rom to your sdcard, and flash using the recovery mode.

How to enter clockworkmod recovery on LG SU640 and Nitro HD:

One method is via terminal emulator or adb , the "reboot recovery" command.

Second method is to power off the phone. Keep pressing volume down button and power up button and wait for white text about "factory reset" and stuff. Release both buttons, and press Power button twice.


Note 1:
Some custom ROMs will fail with "some symlinks failed "error and "status 7" . Make sure your downloaded file and original file have the same MD5 hashes.

Note 2:
Some ROMs will give an error: "assert failed getprop(ro.product.device==SU640)" or something like that.

Open that ROM using Winrar, goto "META-INF\com\google\android " and open the file named "updater-script" and remove the first line and save.

On closing the text editor, winrar will ask you if you want to replace the edited file, click "Yes" or "OK" . and flash the ROM again. This time, it will work.

Always remember to wipe before installing new ROMs.

Sunday, February 3, 2013

Rooting LG Optimus SU640 on official ICS

I recently got my hands on my first LG Android experience. LG Optimus SU640, also known as Nitro HD in US which goes with AT&T carrier.

Phone Specs:
LG Optimus LTE SU640 on GSM Arena.

Rooting Official ICS v20D firmware will allow you to debloat your device and eventually make it MUCH more responsive and make your battery last longer.

WARNING: I am not responsible if your device gets bricked , fails to boot, you lose your data etc. Although there is very low possibility of such happening if you follow my guide.

There are two methods i've found to be working on official ICS v20D for SU640.

Method 1 :
Here is what you need to do.

  1. Download Root20D.rar
  2. Extract Root20D.rar to "C:\Root20D"
  3. Connect your LG SU640 to your computer.
  4. Goto "Settings >> Security "
  5. Check "Unknown Sources"
  6. Goto "Settings >> Developer Options
  7. Check "USB Debugging"
  8. Make sure you are connected in "LG Software Mode"
  9. Execute "En_Step1.bat"
  10. Follow the on screen instructions and be patient :) 
  11. if it doesn't succeed the first time, do not give up. Just restart from Step 2.

Method 2:

  1. Download Root_.rar
  2. Extract Root_.rar to "C:\Root_ICS"
  3. Connect your LG SU640 to your computer.
  4. Goto "Settings >> Security "
  5. Check "Unknown Sources"
  6. Goto "Settings >> Developer Options
  7. Check "USB Debugging"
  8. Make sure you are connected in "LG Software Mode"
  9. Execute RunMe.bat
  10. Select "Normal Mode"
  11. Follow the on screen instructions and be patient :) 
When you see text
"Waiting for device to show up again [ali]...."

Wait for your device to boot-up . then Press "Enter"
If the process does not move forward, Press "Ctrl + C"
Press "n" for "No" and the process will proceed.

Do not install CWM on your phone yet, ICS does not allow CWM flashing on mmcblk0p13 Block. You will end up bricking it and will be presented with a pretty message.

"Security breech"
"Long time no see"