Vanilla Ice-Cream in Galaxy Nexus Sandwich

Ever since I had to give up my recent acquired Sony flagship mobile phone, Xperia S, I looked around in the market for a replacement.

I had wanted to try out Windows Phone. I think Microsoft has finally got their formula right this time round, after failing to gain a foothold in the mobile market with their Windows CE and Windows Mobile products  since 2000. The tiled interface is as evolutionary and refreshing as Apple’s multi touch interface. Fragmentation, which appeared to the biggest culprit in Microsoft’s previous failures in mobile market, is to some extent addressed by Microsoft’s attempt to put in restriction in how manufacturers and developers build and develop their handsets and applications respectively. The end result is a consistent interface, and much tighter control on how applications are being executed and rendered. The key draw back for me is the hardware, as the display and camera functions are not inspiring. I thought I would just get a cheap Windows Phone (since all Windows Phone looks and function the same!) as an interim, but eventually settled with Google Galaxy Nexus because I have always wanted to try out the pure Google experience.

galaxy nexus

Galaxy Nexus

Google Galaxy Nexus, manufactured by Samsung, runs on the latest Android operating system, i.e. Ice-Cream Sandwich (ICS) . With Google’s ICS, they seemed to have finally fixed the memory management issues and streamlined the user experience. I have to say it is a product, out of the box (because with Android being a open source, it doesn’t take a genius to do magic wonder in order to improve its usability), that would seriously compete with the likes of current Windows Phone and iOS. It may seemed like Google’s past desserts (Cupcake, Eclair, Frosted Yorgurt, etc) were a failure, or at best an alpha/beta of their operating system. However, if you trace through Android history, from the first public release (Cupcake) in 2009 to now, versus how long Microsoft put their act together, it is actually quite a remarkable progress. One might argue that Apple did it right in the first iPhone product,  but remember Apple was clever in its product release strategy. It had deliberately omitted key phone function features, and progressively released these missing functions as it rolled out its iPhone roadmap over the course of 5 years.

Galaxy Nexus is made by Samsung

Galaxy Nexus is made by Samsung

Back to Galaxy Nexus, I am not quite impressed by its form factor. It looks as if Samsung has deliberately short changed its development just to make sure it does not cannibalised its own flagship products, i.e. Galaxy S2 and Galaxy Note. The 1280×720 screen is nothing to shout about, until you put it on the brightest setting.  That said, when I put it side by side with Galaxy S2 or Lumia 800 (both of which have the same resolution of 800×480 pixels), it does look as good, if not better, given its higher resolution display. The back battery cover feels plasticky,  almost becoming a classic trademark of Samsung products. Camera is mediocre, as it fares badly when taken under dim lighting condition or trying to capture a fast moving object. How I miss my Xperia S for that matter! Don’t get me wrong, Galaxy Nexus has a decent hardware specification, but my take is that it is a jack of all trades, master of none. That said, I do like the ICS soft keys in the Galaxy Nexus with its backlit implementation. Beneath the soft keys, a multicolored notification LED is featured which glows on selected event such as a missed call or unread message. You can download the app Light Flow to customize your LED configuration, in terms of the events to be notified, colour of the LED notification, or even the rate of the LED pulse!

ICS compliant application will now have all menus at the top corner, freeing up the bottom screen from the cluttered menu

Inside Galaxy Nexus however, the user experience is superb given that it is running on the Ice-Cream Sandwich. Unfortunately, at the point when I got the phone, it was still running on 4.0.3, not 4.0.4 which offers an even more optimal performance. (Nothing stopping me from upgrading it to 4.0.4 though) Regardless, I understand that 4.0.4 was shortly released “OTA” after a few weeks. On the positive notes, the user interface is polished and uncluttered. The multi tasking of applications does not has any slight adverse effect on the overall phone performance. The UI navigation experience is as “buttery” smooth as you can imagine. With a pure Google experience, it also means I do not have those bloated applications that offer bells and whistles at the expense of performance. Given that I have most of my resources resided in Google (mails, contacts, calendar appointments, photos, etc), I have immediate access to every of my content and information the moment I signed into my Google account. No hassle of synchronising or data migration!

But it did not take me too long to switch to another phone. Not because Galaxy Nexus is bad, but because I have been eyeing on HTC One X after hearing how HTC had improved its camera function over the year. That has been my biggest gripe of HTC products (amongst others). That said, after using HTC One X for two weeks now, there were and are times where I still miss Galaxy Nexus for its clean ICS implementation!

Samsung Galaxy S II, The best Android Smartphone ever?

Whenever i hear such a claim, on any product for that matter, i always wonder what is the context of the “best”. You see unless the product excels in all departments, i.e. it is the purrrrr -fect product in comparison to its competitors (see there is still a context) it can’t be the best.

Take the category of smartphone as an example. I would rate HTC for its famed Sense experience, which help to ramp up a newbie experience with Android (and Windows Mobile previously). On the other hand I see SonyEricsson being in the leader in its camera functionality having used its Xperia Arc and compared it with all the Galaxy S series. That said, HTC Sense is getting too complicated as the company tries to be sophisticated for its products to be ‘smart’. But I have digressed.

So when I read reports that raved the new Samsung Galaxy S II as the best Android smartphone to date I thought it is a bold statement. Don’t get me wrong as I think it is yet another fine product by the Korean company but that statement needs to be contextualized. Continue reading

Santa gave me a Tab from Galaxy

Samsung Galaxy Tab

 

I have never had a desire to get a tablet, even when Apple introduced their iPad earlier this year. Lately, I got a Kindle for my e-reading needs. It had all I need for reading purposes except that when it comes to reading magazine, it becomes dull and boring. So when the news of 7″-sized Creative ZiiO and Samsung Galaxy Tab were released, I began to evaluate them with earnest, hoping to find one that could supplement Kindle. iPad was still out of the question because it’s supposedly “cutting-edge” size turns out to be the biggest inhibitor to be an effective e-reader.

I ended up with Galaxy Tab, which is 2.7″ smaller than an iPad (thus easier to hold as an e-book) and nearly half the weight of iPad (wouldn’t feel tired even with one hand holding the Tab).  I admit I am a sucker for latest (and greatest) technologies. Creative ZiiO, despite being competent as e-reader and general tablet purposes, did not win me over with their less impressive touch display. And with Samsung Galaxy Tab’s Super AMOLED display, the Tab was just calling for me.

 

Unboxing the Tab

The first un-boxing impression was not as spectacular as thought, probably because I was staring at the tablet as an oversized Galaxy S smartphone that I owned before. But the tablet won me over shortly after a initial usage. The quality of the tablet exterior is top notched, and would put HTC phones to shame really (more on that later when I blog HTC Desire HD). The white piano finishing at the back housing makes one wonder why Samsung did not do the same for its little sibling (i.e. Galaxy S) which has a black “plasticky” casing.  If I had to nit-pick, it will be the black trimming which breaks the seamless white tablet design.

 

Galaxy Tab is fast and responsive

Functionally, the tablet is responsive, in contrast to some of the lag claims alleged in the net. The navigation experience is smooth and snappy, the applications are lag-free and responsive. But as with Galaxy S, I could not stand the i-Phone like home screen interface, and thus wasted no time in replacing it with Launcher Pro Plus.   Even though I bought the tablet with the e-reading as the primary function, I was keen to ensure it remains competent in other aspect of tablet features, and that it is not just an expensive e-reader. Setting up google and exchange account sync was a breeze, and I could access my both personal and work emails/contacts/appointments with ease. In comparing with  my “SSD enabled, 6G DDR3 super-charged, almost instant-on” HP Envy laptop or my “depending on the time of the year” smartphone, I admit using my Tab for a quick ad-hoc email read/reply has become a natural and preferred choice these days.

Tab on Viva Casing

Switching gear to the entertainment aspect, the Tab serves well as a gaming machine and a media player. Apart from the ‘mindless game’ like Angry Bird or Farm Story (which is the only reason my wife would seize my Tab for) the Tab demonstrated its gaming ability in graphic intensive games such as EA Mobile’s Need for Speed and Gameloft’s Sandstorm.  Perhaps a 10″ tablet would be more visually pleasing in such circumstances, but frankly, if I need a bigger screen I would have gone with my Ps3 and 46″ Samsung 3D LED Full HD TV. A 7″ tablet has indeed brought the mobile gaming experience to a new level, as games were previously played in a 2.8″ to 4.3″ screen displays.

When it comes to media playing ability, the feature can and should be assessed in two folds. At the very basic, a media playing device should have hardware capable of playing most if not all HD media format, such as DivX, Xvid, AVCH. No doubt there are applications like VPlayer and RockPlayer which could play most of these formats, but you would get better quality playback with hardware decoding, especially if you are playing HD videos. Samsung, being a home entertainment specialist,  just does it so well in this aspect with the Tab, something that HTC fails to deliver even with their latest flagship product. At the next level, one should look at the gadget’s media streaming capability. If playing a local HD media well is now established as a basic function, sharing  HD media to/from a remote media player/server would be the advance feature you could look at. However, once you experienced it, I bet you would want to make sure your next gadget would retain such functionality.

While services such as YouTube or Blinkx Beat had kick started the craze in video sharing through the internet, I still stand by my opinion that Digital Living Network Alliance (DLNA) certified devices will be the one that digitise how we would capture, stored and shared our precious moments with our loved ones. DLNA defines the standards and technologies on which consumer appliances would connect with another for the purpose of sharing musics, videos and photos. I first came across this concept more than half a decade ago, and it is only recent that it caught the general consumer awareness. Unfortunately, the AllShare app found in the Tab is buggy and less functional than that found in other Samsung devices. Fortunately, it is a software-related feature, and we can therefore find software alternatives, as long as we have the hardware-dependent basic function (i.e. media player).

A quick explanation on this point;  DLNA-certified devices enable one to discover or share media content with one another. Once the media content is discovered, identified for sharing/playing, it is back to the device itself to stream (possibly transcode during the process)  or render  (to decode the format and playback) the content in question. The former can be achieved via software, whereas the latter is best accomplished with the help of hardware. For what is worth, Apple does not support DLNA, and uses its own “Air-play” to share media in “Apple universe”.

So far, I find UPnPlayer (downloadable from Android Market) the most complete software as far as DLNA feature is concerned. It is the only DLNA player that could support all type of media content (i.e. music, photo and video). The key shortcoming would be its unpolished user interface, but functionally, it is one of the best, if not the best out there.  There are other good DLNA players, such as 2Player, but they would either support only 1 type of media sharing or have certain features broken.

Kindle for Android on Tab

Coming back to my original intent of getting the tablet, e-Reading, I was so pleased when Amazon recently updated their Kindle for Android app to support both magazine and newspaper. If you recall,  magazine and newspaper e-reading was my main reason for getting a tablet to compliment my Kindle device. I was shocked when I first found out that the older version of Kindle for Android app could only support e-books (i.e. not magazine or newspapers). So the update was very timely, at the time when I got the Tab. With a 7″ Tab, a perfect size for e-reader in my opinion, I can now enjoy reading The Economist and Herald Tribune on my Tab, in full color — but only when my wife is not playing her Angry Bird and the likes. 🙂

While Galaxy Tab has met or exceed most of my expectations, it is still not a perfect gadget to say the least. There are many irritants; Battery life is probably a couple of hours weaker than what an iPad can offer; Inserting or Removal of SIM card will require the tablet to reboot (probably a Android/Froyo problem) , and it is a tad too big to be used as a voice phone. While I had subscribed a new line for the Tab, and am using it as a phone with the help of bluetooth headset (in avoidance of pressing the big screen against my face during a phone call),  it is still not a phone you would bring in every occasion. But as the saying goes, if there exists a perfect device, that will mark the end of the hunt for one.  And when that happens, it will be a miserable day for a gadget fan like me. So I would be more than happy to let the pursuit continues!

Software Programming and Cooking

Apart from the incidental choice of word “Cooking” to describe Windows Mobile ROM development process, I found out that recently there is really a great similarity between software programming and cooking.

With cooking, you master the science of key culinary skills, and then with some creativity,  you venture into dishing out different cuisine. I am not a food connoisseur, so you don’t expect me to go into details on this, but you should get the point.


 

Now, turning over to software programming (oh my, I suddenly feel so at ease), there is alot of similarities. You need to master the fundamental programming techniques, and you exposed into different type of programming; UI programming, Web programming, Data integration programming, Kernel programming .

And yes, recently I had ventured into kernel programming, something I have never imagined in the past. The reality though is that I was just meddling around with the Linux kernel source, thanks to  Opensource.

So I looked at the various kernel source codes published by various xda-developers, each of which addresses different aspect of kernel improvements. I decided to make a kernel that takes the best of all. The end product is one kernel that incorporates sztupy‘s Universal Lagfix, supercurio‘s Voodoo display tweak (Gamma and Sharpness enhancement), raspdeep‘s overclock and undervolt, and hardcore/ykk_five 341MB memory hack.

Universal Lagfix addresses the poor performance  inherent in Samsung’s original RFS-based storage. The fix is about reformatting specific data partitions into Linux ext4 format, and by doing that, you can expect 200-300% of improvement. The applications no longer run with intermittent freezes (caused by the lag in the file system access), and responses are therefore almost instantaneously.

So one would think, with a 200-300% improvement in performance, what is there to optimise further?

Now Samsung Galaxy S comes with 512MB of RAM, as you would expect from a top tier smart phones in the market. The problem with Galaxy S, is that the amount of RAM available for end user, is only 304MB. There are more than 200MB of RAM reserved for the system, such as video, android OS, etc. It didn’t help when Android has a bad habit of loading installed applications and widgets on start up, which means by the time your phone boots up successfully, you would be lucky to have 80MB RAM free for use. Now in Froyo, the memory management is far more robust than Eclair, but still, with a limited amount of free memory, you end up having frequent memory clean up performed by the OS, resulting in unnecessary instability in the system.  Both ykk_five and hardcore researched and figured out the kernel configuration for reserved memory. With some trial and error (as eliminating memory reservation causes problem with certain applications such as video recording or 3G video call), the folks in xda-developers established the optimal memory configuration. The result is 341MB of available memory (as compared to 304MB). That ensures some stability much needed in the Samsung Galaxy S.

And you would think by now; Samsung must have done something wrong if any more tweaks can be uncovered. You bet! The question now is how much have we optimised the  Cortex A8  processor, i.e. the brain of Galaxy S.  When looking at the kernel source code, folks have figured out that there are compiler flags we could use to compile the kernel to take advantage of the A8 Cortex CPU architecture. Not only that, the team has figured that the CPU can be over-clocked, just like how the PC geeks would have done to their desktop processors.  Additionally, the CPU is currently running at a voltage level that can be further tweaked, i.e. reducing the voltage consumption value  for each CPU frequency step. The end result, is a turbo-charged but super “air-cooled” (and efficient)  Galaxy-S. Unfortunately, there is no real tool out there to measure CPU voltage consumption scientifically, so one can only rely on feel (e.g. lower temperature) and experience (battery consumption level). That said, the under-volt tweak is still being refined as we speak, just to determine the optimal level of voltage that is low enough but not at the expense of CPU running reliably at the desired frequency.

The final installment of the tweak is display. supercurio had definitely done far more research than anybody in xda-developers, and probably even in Samsung development team, to improve on the display gamma and sharpness. More explanation can be found in his web-site, so I wouldn’t regurgitate what has already been documented.

And of course, there are some minor tweaks I did along the way, as I touched the source code for the above tweaks. However, these are experimental at this point, it’s probably not smart for me to disclose until I can conclusively determine the value of such tweaks.

Did I mention the code name of the kernel I have customised? Yet Another Optimised Kernel (YA OK!) … So go flash this kernel  if you happen to own a Galaxy S (sorry only for Europe and Asia Galaxy S owners) and want to turbo charge your phone. You will be surprise how buttery smooth your phone is, and it is definitely much faster than the Voodoo’ed Galaxy S I had awhile back.

Here’s a quick video capture of my Galaxy S running on YA OK Kernel. Enjoy.

Samsung Galaxy S – Can it ever be a brick?

In the techie world, the ‘brick’ is usually associated to the state of your phone, where no matter what magic you try to apply, your phone  cannot be powered on at all. It is therefore no better than a high tech paper weight, or a brick if your phone happens to be one heavy phone.

Well, I thought my recently acquired Galaxy S was bricked yesterday.  It’s almost unthinkable that a surreal phone sitting in front of me was staring at me like a brick. I had previously flash a corrupted kernel or interrupted the flash process, in all cases, the phone will just show a broken flash icon when I tried to power up the phone. The phone was recoverable in every incident, since I could bring the phone back to the “download mode” (i.e. bootloader mode),  which allows me to re-initiate a firmware flash.

But not yesterday. I updated one part of the firmware, the flash process was successfully executed as indicated by the Odin flash application, and the phone was expectedly rebooted. But lo and behold,  the phone did not wake up at all after the reboot. It stayed powered down, no display, no sound, no sign of phone trying to “breath”. Not even an icon on the screen that says corrupted firmware. The phone did not even react when I attempted to put it back to the “download mode”.

Thinking that the phone has just coincidentally run out of battery, I decided to put the phone on charge but but it was still no go after few minutes. As I tried to recap what I have done, I realised that I had done something a noob would not have done. I had ticked on “re-partition” option prior to the flash process in Odin. Coupled with the fact that I was flashing the CSC image (one part of firmware that provides operator specific configuration and/or software).  Consequently, the phone had its entire system storage re-partitioned and end up with just that CSC code, without the remaining code, not even the kernel.

It was 1.30am at that particular moment, I reckon my sleepy head must be the reason behind this stupid action of mine.  What I couldn’t comprehend, is how can this screw up impact the bootloader, which is responsible for controlling the phone action during the boot up. One thing certain though is that I had completely woken up as a result.

For a good 15 minutes, I have been thinking all possible remedies, including removing the battery (albeit doing it very quicky) and putting it back to restart the phone.

I was almost resigned to the fact that my phone has become a $950 paper weight. But being a stubborn person (or one who perseveres, depending on how you look at it), I did not like the idea of throwing in the towel. I remembered how my father would spend the entire night till morning, just to fix some simple computer glitches when I was a young boy. I think I might be like him for that night.

Then I was enlightened. I observed that in those attempts when I was trying to put the phone into the “download-mode”, the phone might already be in panic-boot mode. While I had removed the battery and put it back to restart the phone, it was done so quickly that the state of the memory may not have totally erased.

So there I went, took out the battery, left the phone for a minute, put back the battery, and powered on the phone into “download mode” right away. Lo and behold again, phone is alive again! I almost yelled with joy .

And the moral of the story?

Never do any “not for weak heart” tasks, and firmware flashing for that matter, in the wee hours of the day. You would end up staying wide awake for the whole night, regardless of whether the end result is positive or not.

On a lighter note, it appears that it’s impossible for Galaxy S to end up as brick. Not unless you literally make it to be so.

Htcardware vs Samsungoftware

I have been asked a number of times which phone is better, Samsung Galaxy S, or HTC Desire, both of which I had done some review on in the previous blog posts.

Here’s my thought.

At the end of the day, the choice is very personal, there’s no good or bad device, it’s more like if its right choice for you, based on your requirements.

For me, Samsung triumphs in the hardware department (except for maybe the lack of camera flash), whereas Desire wins hand down in the software aspect.

For me, you can address software gap with workaround (sometimes better, sometimes not as good, but its a good workaround), but you can’t say the same for hardware.

For e.g. I was blown away by Samsung camera capability, whereas HTC Sense mesmerized me without a shadow of doubt. I can emulate HTC sense in Samsung Galaxy S via Launcherpro (much better than Sense imho!) and widgets like fancy widget (not as functionally complete but its a good bridge), but I can’t emulate the video taking capability *anywhere near* Samsung Galaxy S in HTC Desire.