Wednesday, December 26, 2012

Nillkin Nexus 7 Case

I had been using a Speck FitFolio for my iPad 2 but it was showing obvious signs of wear and tear with less than a year of use. This time, I wanted to get a TPU case for my Nexus 7. A quick trip to Greenhills (last September 2012) yielded nothing. Anything that is not Apple or Samsung will be hard to find. A search on sulit showed several cases that were over P1,000 which I didn't want to pay for.

I came across good reviews on Nillkin cases so I hunted for a seller in ebay. I eventually found a Hong Kong based seller that offered free shipping in Asia so I ordered one for USD 12.70. Standard shipping would take 2 weeks. True enough, it arrived exactly 14 days after I placed the order. Unfortunately, I would have to claim it at the post office because I had to pay customs (P100) for it.

The package was shipped from Singapore. Unboxing follows:

Shipment packaging from Singapore
TPU case designed for the Nexus 7 
Packaging is typical China
Available in 4 colors
Comes with the case and screen protector

Now, my Nexus 7 has a case that provided protection without adding too much thickness. So far, it has survived a 2 foot drop on a wooden floor with no damage. I highly recommend the Nillkin TPU case for protection against scratches. While the Nexus 7 already has a good grip, the case will provide you with an even better grip.

My Nexus 7 with the case and protector

Friday, July 20, 2012

Applying Jelly Bean OTA on your Nexus S

The official Nexus S OTA file for i9023 is now out!

Google OTA file
(MD5 – 12c718dbda2565609db45c9631a25adc)

I had used the Nexus S 4.0.4 factory images for my phone and left the boot loader unlocked. Unfortunately, the instructions for applying the official OTA apply only to those on boot-locked stock recovery or custom recovery. I tried doing it but got the "apply_patch_check assert failed" error message. You might want to try it first if you are on stock.

Just a tip for going to the recovery menu on stock ROM:

1. While phone is off, press Power and Volume Up continuously until the fastboot screen appears.
2. Press volume down to select Recovery, then press Power to select.
3. The phone will reboot, show the Google logo and show a robot with a red exclamation point.
4. Press Volume Up, then Power to go the recovery menu. I thought the the robot with the red exclamation was an error. Also make sure you press Volume Up first, then Power and not vice versa, otherwise nothing will happen.

I didn't want to lock my boot loader using "fastboot oem lock" because it would wipe my phone so I decided to flash a custom recovery ROM and then apply the OTA update manually.

The Cyanogenmod wiki has the best instructions for doing this. You'll need the SDK for this.

Once the custom recovery was flashed, I powered off, then reboot to recovery (Power+Volume Up). Select the apply The update should proceed smoothly and reboot on Jelly Bean. Upon first boot, there will be an update message but all your apps and data should be intact.

Monday, July 16, 2012

Mac OSX system preferences hang

Many users must have encountered a permanent hang in Mac OSX System Preferences because searching "osx system preferences hang" on Google returns more than 300,000 results. OSX isn't so rock solid after all.

This happened while I was changing the wallpaper and probably chose iPhoto. The bouncing ball then appeared. I left it like that for about 15 minutes and had to Force Quit. Rebooting the machine didn't help. This makes the entire System Preferences inaccessible so you cannot change any setting on your machine until you resolve the wallpaper issue.

The following forum entry had a solution:

All you need to do is to delete a file in your preferences folder which will reset your desktop to the default.

To do this, you will need to open terminal and type the following:

rm ~/Library/Preferences/

Then, reboot your Mac and you'll see the default wallpaper and System Preferences back to normal.

Upgrading Samsung Galaxy S to ICS

The best instruction guide for upgrading the Samsung Galaxy S is in Cyanogenmod's wiki. I followed the Mac OSX instructions using Heimdall Suite 1.3.2.

The "Installing the ClockworkMod Recovery" instructions will replace the recovery image of the phone and root it. You may then load any custom ROM to your phone after doing this. The trickiest thing in doing this is holding down Home+Volume Down while plugging the USB cable. I suggest you remove any casing you have on your Galaxy S while doing this. You will need the following files to install the recovery image. The links should be in the instructions. This step only needs to be done once. With Jelly Bean ROMs starting to appear, you will be able upgrade your phone easily using the recovery method.

heimdall-suite-1.3.2-mac.dmg (13MB)
hardcore-speedmod.tar (7.5MB)

After installing the recovery image, you can boot your phone normally and copy the ICS ROMs. There are typically 2 files that you need to install a ROM (main ROM and the Google Apps zip). The Google Apps file is usually distributed separately for legal purposes though some ROMs already have it included. I installed AOKP build 40 (Android 4.0.4) though by now there should be the newer AOKP Milestone 6 already. (139MB) (52MB)

Just follow the instructions in the wiki to install the ROM. After installing AOKP and Google Apps, I was able to boot into ICS, but the Google Sign-in did not appear. I had to boot again to recovery and reflash Google Apps. After doing that, the phone was now on ICS.


Installing a custom ROM will require a complete wipe of your apps and data so you will need to make a backup. I recommend Astro to backup the apps. Just use USB cable to copy your photos. For SMS, you can use either SMS Backup & Restore by Ritesh Sahu (backup to USB) or SMS Backup by Cristoph Studer (backup to Gmail). This part takes the longest.

The FM radio in the Galaxy S will not work anymore after you install a custom ROM.

Tuesday, June 26, 2012

Thursday, March 29, 2012

Upgrading Globe Nexus S (i9023) to 4.0.4

Doing this now. These instructions should work for i9023 devices (like the one from Globe Telecom).
An new official update IMM76 (Android 4.0.4) is poised to roll out for the Nexus S. The update file, which weighs 18MB, can be downloaded directly from Google's servers and applied only over stock IML74K (Android 4.0.3):

The procedure didn't work for me. After selecting recovery, it brought me to a blank screen. It turns out the 4.0.3 recovery has a bug that doesn't turn on the backlight but I was able to see the words by shining a flashlight angled from the bottom to the screen. Nevertheless, I got the status 7 error when I tried to flash the zip file. xda member oldblue910 has an explanation:

Beginning with the 4.0.3 -> 4.0.4 OTA update, you are NO LONGER ABLE TO FLASH OTA UPDATES MANUALLY IN STOCK RECOVERY. IT WILL FAIL 100% OF THE TIME. The only way to flash OTA updates on 4.0.3 and later versions using stock recovery is to wait for the OTA notification on your phone, then tap "Reboot and Install".
If this pisses you off, you have the option of unlocking your bootloader, installing either a stock Gingerbread recovery or ClockworkMod recovery, and then flashing the OTA updates manually.
The alternative, which I will do after holy week, will be to flash the 4.0.4 factory install images that was just released by Google. Note that this is only for soju devices, which includes the Globe Nexus S i9023. The downside to this is that it will wipe out all your apps and data unlike OTA. It would be best to wait for the OTA if you don't want to spend a day restoring all your apps. Anyway, you'll end up with a fresh factory state which may be a good thing. The instructions as follows:


SUCCESS! I am now running 4.0.4. The procedure went very smoothly without errors or glitches. I used the factory install images method to get to 4.0.4. The entire process took less than 3 minutes (assuming all the files and sdk have been downloaded and installed).

Preparatory steps:

  1. Use Astro File Manager to backup all your apps.
  2. Install SMS Backup to backup your SMS messages.
  3. Connect the phone by USB cable and copy the DCIM folder (pictures), SMSBackupRestore (SMS), backup (Astro Apps Backup).
  4. Go to System Settings -> Developer options -> USB debugging on
  5. In your PC, install the Android SDK and platform tools. You have to be able to enter the "adb devices" command in your PC and see your phone.
  6. Copy the three zip files that are inside the soju-imm76d-factory-ca4ae9ee.tgz file to the platform-tools folder where adb is.
  7. If step 5 works, then you may type the following on your desktop to start the procedure.
Jasons-MacBook-Air:platform-tools jgngo$ ./adb reboot bootloader

This was my device information:

product name - herring
hw version - Rev 52
bootloader i9020xxkl1
baseband - i9020xxki1
carrier info - xse
lock state - Locked

Since the boot loader was locked, the first step was to do:

./fastboot oem unlock

This step requires you to confirm on your phone that you want to reset all data. Now you can just follow the commands to flash the factory images. I included the outputs so you know what to expect. The ones in bold are the commands that I typed.

Jasons-MacBook-Air:platform-tools jgngo$ ./fastboot flash bootloader bootloader-crespo-i9020xxkl1.img
sending 'bootloader' (1536 KB)...
OKAY [  0.241s]
writing 'bootloader'...
OKAY [  0.348s]
finished. total time: 0.589s
Jasons-MacBook-Air:platform-tools jgngo$ ./fastboot reboot-bootloader
rebooting into bootloader...

OKAY [  0.001s]
finished. total time: 0.001s
Jasons-MacBook-Air:platform-tools jgngo$ ./fastboot flash radio radio-crespo-i9020xxki1.img
sending 'radio' (12288 KB)...
OKAY [  1.794s]
writing 'radio'...
OKAY [  1.695s]
finished. total time: 3.490s
Jasons-MacBook-Air:platform-tools jgngo$ ./fastboot reboot-bootloaderrebooting into bootloader...
OKAY [  0.001s]
finished. total time: 0.001s
Jasons-MacBook-Air:platform-tools jgngo$ ./fastboot -w update 
archive does not contain 'boot.sig'
archive does not contain 'recovery.sig'
archive does not contain 'system.sig'
Bootloader Version...: I9020XXKL1
Baseband Version.....: I9020XXKI1
Serial Number........: 30337519A9C100EC
checking product...
OKAY [  0.001s]
checking version-bootloader...
OKAY [  0.001s]
checking version-baseband...
OKAY [  0.001s]
sending 'boot' (3444 KB)...
OKAY [  0.539s]
writing 'boot'...
OKAY [  0.448s]
sending 'recovery' (3776 KB)...
OKAY [  0.584s]
writing 'recovery'...
OKAY [  0.488s]
sending 'system' (282046 KB)...
OKAY [ 36.586s]
writing 'system'...
OKAY [ 31.748s]
erasing 'userdata'...
OKAY [  0.226s]
erasing 'cache'...
OKAY [  1.992s]
finished. total time: 72.617s

After this, the phone should have already restarted and began to boot. Congratulations, you have a fresh factory installed Nexus S running Android 4.0.4.