Latest Entries »

In case this is copied, go to the original site which should be
https://ossadmin.wordpress.com/2011/03/05/gingerbread-heavy-battery-use-android-os-high-utilisation

I’ve been running Gingerbread for a week now, and have a few issues. The worst one so far is the higher battery consumption. On 2.2.1 I used to be able to reach 16 hours on average with moderate usage of 3G data, voicecalls, email, SMS, Latitude running in the background, GPS, WiFi, Sync all enabled. I have always had my screen on the lowest brightness setting to conserve battery there. With Gingerbread, its been slashed to around 7 to 8 hours.

Looking at my battery usage, the process Android OS has been suspiciously high – around 30% or more of my battery use – more than Display, which was a dead giveaway something was wrong. I went through the proceess of removing widgets and apps that created running services. I even switched back from ADW Ex to the default Launcher. Still had Android OS registering high.

I cleared the cache from the boot menu, but still Android OS was still registering high battery use.

I did a bit of Googling, and came across this thread on Android google code site:
http://code.google.com/p/android/issues/detail?id=15057&q=Android%20OS%20gingerbread&colspec=ID%20Type%20Status%20Owner%20Summary%20Stars

The prevailing view is that the WiFi  Sleep Policy is the cause of the high battery drain. It has been suggested that having a sleep policy set to Never when plugged in results in the high Android OS utilization. I have tried switching to Never as the thread suggests, and this has worked for me. I managed to get 16hrs on battery, with 28% left by the end of the day. This morning’s graph shows a very gentle slope compared with my previous ones.

Battery UsageBattery Usage - Graph

I would say its conclusive in my case that changing my WiFi policy to “Never” has fixed the issue.

For those of you having this issue you can change your settings as follows:
Hit the menu button and navigate to Settings->Wireless & Networks -> WiFi Settings


Hit the menu button and select Advanced as shown above.
You’ll see the following screen:

Click Wi-Fi sleep policy and a dialog box appears.


You should see Never when plugged in is currently selected.
Change to Never and you’re done.

You will have to fully charge the phone to clear the battery usage info, but monitor your battery usage and see if this helps your battery usage.

Thanks to the people on the android issues page for their suggestions, and the other sites I have visited.

Thanks also to Aatif for his great post on how to take screenshots of phone using the Android SDK. His post can be found here:
http://www.addictivetips.com/mobile/how-to-take-screenshots-of-android-device/

In case this is copied, go to the original site which should be https://ossadmin.wordpress.com/2011/02/26/goodbye-vodafone-uk-nexus-one-rom

Note: This is a long post. Please make yourself familiar with all the steps before proceeding with the upgrade!

Quick update: Once FRG33 is installed, you don’t have to go through with the rest of the updates. People have confirmed the OTA’s come through pretty fast. In my case they didn’t and I was impatient and applied the updates manually. Also thanks to everyone for confirming the passimg step. I have updated to reflect this.

Additionally, for those having troubles with files, try use the MD5Sum’s to confirm file integrity.

For the passimg step, make sure you extract PASSIMG_Passion_Google_WWE_2.16.1700.1_FRG33_release_signed.zip from Passion_Google_WWE_2.16.1700.1_FRG33_MFG_Shipment_ROM.zip, and then rename it to passimg.zip. If you are using windows, make sure its not been renamed passimg.zip.zip.

Gingerbread has finally been released, and once again, I have found that my Nexus One is burdened by a Vodafone UK ROM, blocking me from receiving the Gingerbread update. Google designed the Nexus one to be open and updated regularly, but Voda are hindering this by needing to first “check the firmware” before allowing their branded phones updates. I am not getting the Nexus One experience Google intended. My best guess is that there is some sort of key or certificate that is installed on the phone that the software update process uses to check if the signed update file can be installed on the phone. Its time to ditch this Voda Rom!
I am going to install stock US google rom.

This is the message that started me down this path. When trying to install the Gingerbread image from the link, I got this message:

“– Install from sdcard…
Finding update package…
Opening update package…
Verifying update package…
E:failed to verify whole-file signature
E:signature verification failed
Installation aborted.”

I then discovered there was another release since 2.2.1 – FRG83G 2.2.2. But after downloading and attempting to apply that update I got the same error.

Standard Warning

Anything you read on this page, you carry out at your own risk. Whilst a lot of your phone is backed up in the cloud by Google, there will be lots of things that aren’t. Make sure you know which apps store data on the phone, and see if you can back this up to the SD card. Additionally, you should take a backup of your SD card contents to your computer.

Procedures

During the upgrade process you will need to repeat these steps documented here. Make sure you are familiar with them before starting the upgrade process.

Coping files to SDcard

For each update you will have to copy a file to the SDcard. In one case you will rename to passimg.zip, but for the rest of the updates, simply update.zip. Ensure you safely eject the media from your computer, and then turn USB storage off before rebooting.

HBOOT Mode, Recovery Mode, Applying an update.zip

  1. Power down the phone.
  2. Hold the Volume Down button and press and release the power button. Do not release the volume down key until you see this screen:

    HBOOT Menu

    HBOOT Menu

  3. You will see the screen flash up some messages and then return to the screen above. It is simply the device searching for a number of predefined images, such as passimg.zip which you will use when you are installing the default Google ROM. For this process don’t worry about it
  4. Use the Volume Down key to select Recovery. The phone will now appear to reboot, and you will see Nexus One logo, and then you will be presented with the following screen:

    Recovery Warning Screen

    Recovery Warning Screen

  5. To continue, hold the power button and tap the Volume Up key. Once you see this screen you can release the power button.

    Recovery Menu

    Recovery Menu

  6. Use the trackball to select apply sdcard:update.zip. The phone will then go through the process of verifying the image and the system and either patch and unpack a lot of files. The phone may change screens a few times. Sometimes it will autoboot. If it doesn’t autoboot, you will simply be presented with the Recover menu. Select Reboot from the menu and you are ready to move onto the next step.

PASSIMG.ZIP Update Method

This method you will have placed the file passimg.zip into the root of the SDCard. Get into the HBOOT menu like above following steps 1 – 2 only. Once you are into the HBOOT menu, it will automatically take over from there.

Android Version Check

After each update is applied you should check the version match what I have posted for that step. You can do this by going to
Menu->Settings->About Phone and scroll to the bottom. You should look at the last four fields:

  • Android version
  • Baseband version
  • Kernel version
  • Build number

The Upgrade Process

You should be running a 2.2 ROM already, something with a build that is FRG83 at least. This process will downgrade the phone to FRG33 Google Stock ROM and then you will upgrade from there. (I was running  FRG83D).

  1. Download all the update files listed in the Links to Files section at the bottom of this post.
  2. Unzip Passion_Google_WWE_2.16.1700.1_FRG33_MFG_Shipment_ROM.zip. One unzipped you will find a zip file called PASSIMG_Passion_Google_WWE_2.16.1700.1_FRG33_release_signed.zip. Rename this file passimg.zip and copy to the root of your SD card.
  3. Use the PASSIMG.ZIP method above to install the file. Once you are in the HBOOT menu, it will automatically start loading the passimg.zip file and then prompt you asking if you want to install the updates. Press Vol Up to install these updates. Once the process has completed, you will be asked to press VolumeUp to reboot the phone.  it may prompt you to restart the phone or restart it automatically for you. (SOMEONE PLEASE CONFIRM WHAT IT ACTUALLY IS. It was 4am when I did it and I can’t remember anymore).
  4. When the phone has finished rebooting, it will be as if you have a new phone and will prompt you for your google account. Don’t enter your Google account. You should only do this once you have finished installing the Gingerbread update.
  5. Check your android version information matches the following:

    Android Version: 2.2
    Baseband Version: 32.41.00.32U_5.08.00.04
    Kernel Version: 2.6.32.9-27237-gbe746fb
    android-build@apa26 #1
    Build Number: FRG33

  6. Next you will need the upgrade from FRG33 to FRG83. Connect your phone to your computer, delete passimg.zip from the sdcard and copy 766a101ae02c.signed-passion-ota-60505.766a101a.zip to the sdcard. Rename this file to update.zip.
  7. Perform the HBOOT procedure above to apply the update.
  8. Once you are back in, check your android version information matches the following:

    Android Version: 2.2.1
    Baseband Version: 32.36.00.28U_4.06.00.12_7
    Kernel Version: 2.6.32.9-27240-gbca5320
    android-build@apa26 #1
    Build Number: FRG83

  9. Our next upgrade is from FRG83 to FRG83D. Connect the phone to the PC, delete update.zip from the SDcard. Copy ecb21b752065.signed-passion-FRG83D-from-FRG83.ecb21b75.zip to the SDcard and rename to update.zip.
  10. Perform the HBOOT procedure above to apply the update.
  11. Once you are back in, check your android version information matches the following:

    Android Version: 2.2.1
    Baseband Version: 32.36.00.28U_4.06.00.12_7
    Kernel Version: 2.6.32.9-27240-gbca5320
    android-build@apa26 #1
    Build Number: FRG83D

  12. Our next upgrade is from FRG83D to FRG83G. Connect the phone to the PC, delete update.zip from the SDcard. Copy 2854b06b22b9.signed-passion-FRG83G-from-FRG83D.2854b06b.zip to the SDcard and rename to update.zip
  13. Perform the HBOOT procedure above to apply the update.
  14. Once you are back in, check your android version information matches the following:

    Android Version: 2.2.2
    Baseband Version: 32.36.00.28U_4.06.00.12_7
    Kernel Version: 2.6.32.9-27240-gbca5320
    android-build@apa26 #1
    Build Number: FRG83G

  15. The last step is the one that takes you to Gingerbread. This upgrade is FRG83G to GRI40. Copy 81304b2de707.signed-passion-GRI40-from-FRG83G.81304b2d.zip to the SDcard and rename to update.zip.
  16. Perform the HBOOT procedure above to apply the update.
  17. When you get back in you will notice the new Gingerbread look. Confirm your android version information matches the following:

    Android Version: 2.3.3
    Baseband Version: 32.41.00.32U_5.08.00.04
    Kernel Version: 2.6.35.7-59423-g08607d74
    android-build@apa28 #1
    Build Number: GRI40

  18. At this stage I recommend a factory rest by going to:
    menu->settings->privacy->Factory data reset
  19. Once back into the phone, it will be like new. Enter your Google account details. This is the part that should impress you. It will begin restoring all your settings, including wifi access points. Open the market once this is done. It will be the old market. Go to downloads and it will load up all the apps you had downloaded, down the the exact version you had installed! Later the market application will be automatically upgraded to the latest version so don’t worry too much about that. If your apps stored their settings in the cloud, there will be not much work to be done now.
  20. Let the downloads finish, and then you will get a notification “X applications Restored.” In my case it was 86.
  21. Remove update.zip from the SDcard.

Enjoy Gingerbread!!!

MD5sums I took from the files I downloaded (for reference):

Passion_Google_WWE_2.16.1700.1_FRG33_MFG_Shipment_ROM.zip
3bcdbb83a4b951f813ca88771d69894d

766a101ae02c.signed-passion-ota-60505.766a101a.zip
1b3a95a92b0fd319f0e730b80e1e03ac

ecb21b752065.signed-passion-FRG83D-from-FRG83.ecb21b75.zip
0fb26549e9de782e86e665a68693c50a

2854b06b22b9.signed-passion-FRG83G-from-FRG83D.2854b06b.zip
23a17e5f70d794858e0fe7aba308c3d7

81304b2de707.signed-passion-GRI40-from-FRG83G.81304b2d.zip
706a4631271b6ee2c819ab548394b71e

Links to files (Official Google links where possible)

http://shipped-roms.com/download.php?category=android&model=Passion%20(Nexus%20One)&file=Passion_Google_WWE_2.16.1700.1_FRG33_MFG_Shipment_ROM.zip
http://android.clients.google.com/packages/ota/passion/766a101ae02c.signed-passion-ota-60505.766a101a.zip
http://android.clients.google.com/packages/ota/passion/ecb21b752065.signed-passion-FRG83D-from-FRG83.ecb21b75.zip
http://android.clients.google.com/packages/ota/passion/2854b06b22b9.signed-passion-FRG83G-from-FRG83D.2854b06b.zip
http://android.clients.google.com/packages/ota/passion/81304b2de707.signed-passion-GRI40-from-FRG83G.81304b2d.zip

References:

http://forum.xda-developers.com/showthread.php?p=11566707
http://androidandme.com/2011/01/phones/update-your-nexus-one-to-android-2-2-2/
http://www.intomobile.com/2011/02/24/how-to-manually-update-your-nexus-one-to-android-2-3-3/
http://forum.xda-developers.com/showthread.php?t=844420&page=8 (Can’t get gingerbread due to voda rom)
http://forum.xda-developers.com/showpost.php?p=11637206&postcount=1157
http://www.google.com/support/forum/p/android/thread?tid=51704fcd145670fb&hl=en
http://www.bongizmo.com/blog/how-to-manually-update-nexus-one-with-android-2-2-froyo-with-screenshots/
http://shipped-roms.com/index.php?category=android&model=Passion%20(Nexus%20One)

Following on from the last post, now that I have a clean MacBook Pro and a functioning DVD drive I once again want to try Ubuntu on native Mactel hardware. There are various instructions out there, and I will post a list of sources, but here are my instructions:

WARNING: I take no responsibility for any damage or data loss incurred by following these instructions. They are merely provided here for informational purposes, and any use is taken at your own risk!

  1. Grab a copy ofthe  Ubuntu 10.10 Alternate-x64 iso and burn to a DVD. After much trouble booting I realised I had not been correctly interpreting the fail message displayed by Apple Disk Utility after it had attempted to burn an iso that was larger than the target media! Why it does not alert you before hand that the image is larger than the disc size I will never know! Waste of media and time. It looks like the Ubuntu team have given up on keeping iso’s to common CD-R size.
  2. Use either BootCamp or Disk Utility to partition the disk. I created two partitions earlier… a 10Gb for Ubuntu / and a 4Gb for swap.
  3. Install rEFIt. I recommend using the mac disk image, and the installer, as it is all automated.
  4. After you install rEFIt, you will have to reboot twice before you see the rEFIt menu. Trust me, this was also a source of confusion. Helps to read the documentation throughly. When you get to the menu, select Partition Tool, and let it sync the GPT with the MBR.
  5. Take the alternate iso and insert into drive, reboot and at the rEFIt menu select Boot Linux from CD.
  6. Run through the installer as per usual with the following exceptions:
    • When selecting your keyboard, select USA Macintosh.
    • At the Disk partition screen, you will have to manually set things up. In my case, I selected /dev/sda3 as my / ext4 partition, and /dev/sda4 as my swap parition.
    • At the GRUB installation screen, make sure you select your / partition (/dev/sda3 in my case). This will install boot loader into that parition rather than nuking the MBR.
  7. Once that is done, installation will proceed as normal. Reboot, select Boot Linux from HD on rEFIt menu and you are in.

Now this is where all the tweaking comes in:

  1. Get the mactel PPA installed. This will provided all the drivers and utilities you will need on the mac. Open a terminal and run the following commands
  2. $ sudo -i
    [Enter your password]
    # add-apt-repository ppa:mactel-support/ppa
    # apt-get update

  3. Go to System -> Administration -> Additional Drivers.
    Enable the “Broadcom STA wireless driver” and the “NVIDIA accelerated graphics driver (version current) [Recommended]”
  4. After they have installed, go back to the open a terminal and run the following command to install the required pack ages.

    # apt-get install pommed bcm5974-dkms macfanctld applesmc-dkms gpomme nvidia-bl-dkms gpointing-device-settings

    This will install the packages to set up mac keys and allow screen and keyboard backlight to be controlled, install the broadcom multi-touch-pad driver,  the fan control daemon to maintain adequate cooling, additional smc sensors and a gnome client to pommed.

  5. After you have done this, reboot ubuntu to allow all the drivers to be set up and running properly. After reboot you should find that the keys to adjust brightness on screen and keyboard work well. Multitouch support should be enabled, allowing two-finger tap (right-click) and three-finger tap (middle click) and two-finger scroll. Graphics should look crisp and at the right resolution, the wi-fi should also be working.

The last fix to apply is turning off the Optical S/PDIF. You know you have this problem when you can see a red light glowing from the headphone jack. All we have to do is mute the S/PDIF output using alsamixer. Open a terminal as an unprivileged user and run the following command:

$ alsamixer

You should get the following window

Scroll the display right using the right arrow key until you have S/PDIF highlighted as above. Press M to mute and you should see the red glow from the jack disappear. The optical out is now turned off. This will save battery power and not wear out your optical out for nothing.

You will need to run some other commands to make this persistent across reboots. I will update the post later with those instructions, or you can read head from my sources list below.

Other things to note:

  • iSight worked out of the box. Install cheese to test (this is equivalent to PhotoBooth under OS-X).
  • Suspend worked out of the box and fast! (under 10s)
  • Memory utilisation is a lot lower than under OS-X and I am in 64-bit mode.
  • Compiz worked out of the box. Part II will discuss making it more pretty and adding some of the feature you can find under OS-X

Additional things to do and test:

  • Fix the Plymouth boot splash (a cosmetic fix)
  • Need to test microphone
  • Need to test sensors
  • Need to test power management
  • Need to get Hibernate tested and working
  • Need to test external monitor
  • Need to test bluetooth

I will update this list as I test things.

[UPDATES]

installed nvidia-bl-dkms to get the fine-grained backlight adjustments.

[Update 07/01/2011]

Found fix for multi-touch pad settings.

Install gpointing-device-settings, and you get a new control panel under System->Settings->Pointing Devices

Sources:

The value of getting AppleCare

I have a MacBook Pro 4,1 (Early 2008), and it has served me well. It’s been nearly 3 years since I bought it, and I have had a number of faults develop over this time.

  • Failing battery
  • Dead pixels on screen
  • DVD drive having trouble  burning and reading discs
  • Corrosion on keyboard wrist plate.

I have already had the battery replaced in 2009 after nearly 280 cycles. Its charge time had dropped to under an hour from the 4 hours it initially gave me. On this second battery, I was back down to an hour, and it had reached about 270 cycles. About roughly the same time has passed.

Being that it’s a quiet time of the year, and with my AppleCare due to expire in March this year,  I decided finally had to bite the bullet and hand it over to Apple. I backed up all the data, wiped everything and reinstalled OSX with a default account, and all software updates applied.

I discovered an AppleStore in CastleTowers shopping centre which is quite convenient for me so I took it in there.

I booked in an appointment with an Apple Genius for Friday 31st December at 11.20.

When I got there, I was attended to very quickly. I presented my laptop and described all the problems I was having. All of them were noted down, while my laptop was connected to the store LAN and booted from the network, and system information collected.

I was given a receipt to sign. It indicated repair cost estimate for $1,600.00, $0 cost to myself. I was told there would be a 5-7 day turn-around time. That was okay for me. I didn’t really need it that much time of year.
On Sunday 2nd January 2010, I was surprised to receive a phone call at 3.30pm that my Macbook was ready to be collected and that I could do so even that very day until 5pm. So I raced down there. When I got it back, they had completely replaced the screen assembly including the casing. They replaced the keyboard wrist plate, which by nature of its design includes the keyboard trackpad and power-button. A new DVD and Battery were supplied as well.

Here is a breakdown of parts and costs:

  • 60W Lithium Ion Battery $ 160.00
  • 8x DoubleLayer PATA Superdrive $ 214.00
  • Matte Display Clamshell $ 863.00
  • Keyboard Assembly $ 86.00
  • Top Case Assembly $ 388.00
  • Hardware Repair Level 1 $ 39.00
  • TOTAL ________________________________ $ 1,750.00

If you also include the fact that I had the battery replaced back in 2009, the total value of my AppleCare amounts to $1,910 (thats using this battery price…I’m certain it was slightly more than that at the time).

So my initial $400.00 AppleCare cost has more than paid for itself.
Based on the overall product quality, and the level of service, and Apple standing by their AppleCare warranty, it would be very hard for me not to consider a Macbook Pro again.

Note: A friend pointed out why would I buy something with so many failures, however, I’d argue these failures would be just considered wear and tear by other manufacturers and good luck getting your warranty honoured.

Constricting Carriers

Carriers are well known to tightly control their mobile phone offerings.
Optus is no exception to this point.

I recently started using a PennySIM service. Previously I have been using Exetel. Both are Optus 3G resellers, but Exetel seems to have its own infrastructure and internet access and APN for their HSPA connections, whereas PennyTel use Optus Infrastructure, including APN’s, SMSC and MMS gateways.

Since getting my hands on an Android phone earlier in the year, I discovered I had no access to paid apps in the Android Market.
I only ever saw Free apps in searches.

After doing a quick search I discovered I was not the only person to notice this, and many had proved that it was an Optus only issue.

Here is a link to an article describing the problem:
http://apcmag.com/optus-deliberately-blocking-android-paid-apps.htm

Last week whilst browsing the Android Market, I noticed apps with prices appearing! A quick search confirmed Optus has indeed officially acknowledged Apps were blocked and have now unblocked them:

We’re very happy to let all our Android customers know that you now have access to all paid apps in the Android Marketplace.

http://apcmag.com/optus-unlocks-access-to-paid-android-apps.htm

Another issue which I only found when switching over to PennySIM is that m.google.com, Google’s mobile app portal was blocked by Optus (this was verified by using Exetel or Telstra service to connect to this portal).

This means I have no access to Google Wave and other cool Google apps.

This link to whirpool shows other users having trouble with m.google.com site. ( http://forums.whirlpool.net.au/forum-replies-archive.cfm/1371671.html )

I will be contacting PennyTel and Optus about this issue.

Why choose Android?

I have just purchased my first Android phone, and thought this was a good time to review my feelings on Android.

I have been waiting to upgrade from my aging Nokia E65 for over a year now. Nokia has been a good platform, and it’s E series phones are great. Perhaps the greatest thing about the E65 at the time was the integrated WiFi hardware and the included VoIP SIP Stack.

Initially I got the phone as an upgrade on a Capped Plan with a notable carrier and was using the phone with the standard circuit functionality. At the end of 2008, with the end of my contract in sight I started experimenting with VoIP, getting a HSPA Plan with Exetel. I have now been using VoIP with PennyTel for well over 12 months, and it works fairly well. Whilst I can’t say its has been a consumer-grade experience, I have managed fairly well.

With the E65 I can have a VoIP call starting off on WiFi, then when I move out of WiFi range, it seamlessly hands over to the 3G Packet Data connection without dropping any voice, and the same is true when moving back into range of my WiFi access point.

I guess my only gripe is that the E65 has aged and is now dated. It’s browser is limited, the screen-size is small, and it has a first-generation 3G radio which is no longer really good for delivering what I expect. Newer Nokia models might have met some of my needs but the smart-phone has moved on, revolutionised by Apple’s entrance to the market with the iPhone.

When looking for my next phone, the iPhone was squarely in view. It simply had what I considered was the next-generation of technology for the always online, always connected person. However, I soon became fairly jaded: iPhones were aggressively kept under the lock and key of both Apple and AT&T. Applications access to the 3G network was non-existent, VoIP impossible at the request of AT&T, along with the lack of external memory expansion and a fixed battery.

When Android was announced, I eagerly downloaded the SDK and tried out the emulator, instantly falling in love with it. Watching the release and development of both iPhones, and then the various Android devices, I decided on Android.

I am an advocate for Open Source Software, and particularly Linux, so to me Android is the first* truly open phone platform.

* – I should mention here that both Trolltech’s Qtopia Greenphone and OpenMoko’s Neo1973 were both pioneer’s in developing the “Open Phone”. Whilst they were not commercially successful, I feel they were the roots of the open phone movement and deserve not to be forgotten.

Back to Android..

Google has not been acting as an agent of the Carrier’s in the way Apple has been with AT&T. Whilst they have not included a VoIP stack as part of the core of Android, they have not precluded applications that do deliver VoIP functionality. With Android, I am free to use VoIP and the Internet in the way I was accustomed to with my E65, only better!

The Android Market is also an improvement over the Apple AppStore. Google don’t decide which applications can be published, they let the market decide.

In summary, whilst Android is not as mature as iPhone, and has had teething problems (which also the first iPhone’s had), it has a strong future and is a generally open platform that is attractive both to developers and end users. Next post is on Nexus One and how it is paving the way for Android’s future.

Prologue

Greetings!

I have finally decided to start keeping a technical blog for 2 reasons:

1. I can contribute back to the wide pool of knowledge that I frequently refer to

2. It forces me to keep a “log” of what I do, hence I won’t forget it! Frequently I solve problems I come across, and forget about the solutions, let alone the problems, and have to dig around again when the problem resurfaces months later.

Just a quick note, more to come soon.