Friday, June 15, 2012

Samsung Galaxy Gio on Cyanogen Mod 7

So originally I had posted how great it was to get an Android device for next to nothing, which is a great thing. Who can argue at getting "almost" the same Android experience as someone who is technically spending $800 for $80... 10 x times less cost! The only real problems (that I have found so far) are this:
  • The screen is small.
  • There is no gorilla glass... be prepared for scratches and definitely put on a protective film. I have had to order and replace the digitizer because of an unfortunate key incident. Only upside is that it is now white, not black.
  • If you want to use it "like" a regular Android phone, you need to root it. 150MB of memory goes away pretty fast, so you need to use a2SD, s2e (simple2ext) or Link2SD (i recommend this if you are just going to root and that is it). Having an extra partition on your Micro SD card tricks your phone into thinking you have 2 - 4GB of internal memory, so you can load up all the apps you want without having the low internal memory show up.
  • No hardware decoding. I thought I was good to go for watching netflix or streaming some stuff over DLNA, but I was wrong. It only does software decoding, and it is pretty slow. It is fine for videos you have on your SD card, but streaming and decoding is definitely a problem... or maybe not if you don't mind the sound being 10 seconds later than the video.
  • No auto brightness. You might not think this is much, but it is SUPER annoying. Rather than having your phone adjust to your environment you are stuck trying to manually brighten the screen when you are out in the sun, and dim the screen when you are in a dark room.
  • Game compatibility. No jelly defense people, though it is a shame it is not like you couldn't see this one coming with the specs of the phone and the price point.

Aside from the above, I doubt you would really have a different experience than any other Android phone out there, since they all seem to be running Gingerbread. But that is for the stock ROM, it is so very much different when you are running a custom ROM such as Cyanogen Mod 7 (CM7), which is what prompted me to write this post in the first place.

I "used" to be the guy that would hack something right off the bat to try and get the most functionality that I could out of the technology that I buy. Over time though (with the family factor), this has changed and now I am the guy that only hacks if it is needed because I have no time at all to play with it, it just needs to work. So that being said, when I bought the phone, I fully intended to use it "as is" until I ran into the memory issue, which forced me to root the phone. More recently I found that my phone was slowing down and all the pre-loaded carrier garbage was taking up prescious memory that kept cutting off my podcasts to the point where I had to press the play button once every 10 seconds. Enough was enough, so I decided that it was about time that I do something about the problem.

Doing the research

So, from past experience on other devices I wanted to get all the information up front so I don't end up with a phone that won't boot for days since I have done something terribly wrong to the OS, so I sent out on a search on changing out the ROM on the Galaxy Gio 5660M (Bell Canada).

The first thing that I noticed most (as a person just getting into upgrading my ROM for the first time) was that this process seemed a little overwhelming,  while you can appreciate that Android is open and hackable, there is literally too much information to sort through when you first approach this sort of thing and that scared me a little bit, but not enough to stop.

At first it was slow going, as I got sidetracked trying to figure out whether or not I absolutely had to use a proram called "ODIN" or not; lucky for me I didn't and cld go forward from there with the following requirements to get this ROM installed on my phone:
  1. You need to be rooted first off.
  2. You need to get the clockwork mod (CWM) installed to replace the default recovery. 
  3. You need to use CWM to first, re-partition your SD Card (Gio Only, for that 'extra space') and backup your stock ROM (which in this case is CM7) in the event that you want to revert back to the factory OS.
  4. You need to download the phiexz version of the Cynogen Mod ROM and place it on the root of your SD card. I downloaded the file update-cm-7.2.0-20120518-Nightly-gio-AROMA.zip, you should be able to find it or a newer nightly build online by searching for the file. Start the upgrade process.
1 - Rooting

Rooting an Android device seems to be the same for the most part from what I have read around the web and consists of downloading some variation of an "Update.zip" file and using that to update the device in the recovery menu.

I won't go into too much detail as they did a great job on this tutorial at Android Authority on how to root the gio. You can find that here along with the files you need: http://www.androidauthority.com/galaxy-gio-s5660-root-68206/

2 - Clockwork Mod (CWM)

This is where I had initially thought things would get tricky as I had tried to do this a while ago via ODIN and failed. I took a stab at this again because as I understand it from everything I have read it is essential to installing custom ROMS.

I had initially found the latest version of CWM and simply downloaded it to my MicroSD card and ran the update. It did install, but there is something in the configuration where I was not able to mount '/cache', '/data' or '/system' which was a problem. Without being able to mount any of those file systems I was not able to do anything basically, let alone try to back up my existing stock ROM.

So when searching for why this was happening I came across an article that told me I needed a special CWM for the Gio called px-cwm-v2.zip. I found it here: http://www.mediafire.com/?p7r2bcn9447bpc8 but I am sure you can find it elsewhere if you search for it.

Once I had this and ran the update again from recovery mode, all was well and I was able to take my backup without issue.

If you are interested in knowing more about CWM, you can find another tutorial here (see... the power of open source and the communities around them? I barely have to write anything!): http://forum.xda-developers.com/showthread.php?t=1587607

3 - Repartitioning the SD Card

I am hoping that this little section will save you some time. Up to this point I was using Link2SD on my rooted stock ROM and it was working great. I ended up creating 2 FAT partitions on my MicoSD card using EASUS Partition Manager. But what I did find after loading custom ROMs multiple times is that it is best to leave that work to CWM.

My advice to you would be to do the following:
  • Backup all the contents of your MicroSD card elsewhere (because you will lose all your stuff out of the gate if you just partition with CWM).
  • Reboot your phone, go into recovery and then go to the advanced tools and select the option for partitioning your card.
  • It will ask you what size, I picked 2048, don't think I will have any large apps, but I think you can go up to 4GB in size.
  • Once you have finished partitioning, just pop the MicroSD into a card reader and copy all your backup data back.
The reason I am suggesting this up front is that the version of CM7 I used comes with the option of using A2SD or S2E right in the ROM, so you don't have to do anything funky to get it working other than having your MicroSD card partitioned properly.

4 - Downloading and installing CM7

As I mentioned earlier, I had installed various versions of the custom ROMs. I intially started out thinking that I wanted to get the latest and greatest version of Android and went for the Gio build of ICS (cm_gio_galaxyics-10062012.zip). Initially it was a total failure, the install went fine, but when rebooting my phone was stuck either with a blank screen or in a boot loop. So I decided to try the older version of CM, which is how I got to CM7. Oddly enough, after successfully installing CM7 and again trying to install CM9 Beta8 (ICS) it actually worked... but I couldn't live with a camera that wouldn't show me what I am taking a picture of... will wait for that to mature a bit futher.

So back to CM7, all you really need to do as mentioned above many times is to copy the ROM to your MicroSD card and then go into CWM and select an update from the MicroSD card and apply it (just make sure you pick S2E in the setup, leave everything else as default). Simple! Once the install is finished, it will simply reboot right into your new OS, it will just take a little bit longer on the first boot to get into the phone.

Post Upgrade

First of all... I can't sing enough praises to the people that are working on Cyanogen Mod as well as Phiexz and others. If you go through the above process with their version of CM7 there is an amazing install (not sure if it is part of this build alone or for CM7 in general), it's as if you are installing a commercial OS!

The difference between the stock ROM and CM7 is night and day. Here are the benefits I noticed off the top (have been using it only 2 days before this post):
  • It is noticably faster.
  • You are not forced to use the apps that Samsung defines at the bottom, it includes ADWLauncher and themes you can select during ROM install. I picked the ICS theme.
  • My battery lasts a bit longer.
  • No more bloatware (no Samsung or Bell apps loading into memory).
  • Oh... so much more configurable, I would almost say that there are too many options.
  • Build in S2E... provided you have the partitions set up right before the ROM install you can in and configure everything to go to the other partition. And unlike Link2SD, where it links stuff to the MicroSD card after install, S2E just installs it straight to MicroSD.
  • WAYYYYYY Better Camera Software. I am not kidding... it is night and day difference and it is much more convenient to use. Tons of new options that are quickly configurable.
  • Cool screen shut down (like an old style CRT shutting off with the line down the middle)... not big, but cool.
I was on the fence about doing this earlier, but I am 100% in favour of anyone using the Galaxy Gio to do this and get a much better Android experience out of your phone.

I will post some of the screenshots up when I get a chance to.

9 comments:

  1. nice, but you forgot to include a link to the rom itself ...

    ReplyDelete
    Replies
    1. Hmm... very interesting. Phiexz has all but disappeared from the internet... not sure why. Found this link for the file though: https://rapidshare.com/files/2271573629/update-cm-7.2.0-20120602-NIGHTLY-gio-AROMA.zip

      Give it a try using CWM.

      Delete
    2. Also found that his site was sorta up in July... you can see a cached version. There was an updated ROM that I didn't get: http://android.phiexz.com/device/galaxy-gio/cyanogenmod-7/item/64-update-cm-720-20120710-nightly-gio-aromazip.html

      He is also on GitHub: https://github.com/phiexz

      Delete
  2. Does GPS and compass work? How does it compare to arpeggio?

    ReplyDelete
    Replies
    1. GPS does work, I use it to navigate all the time. I wasn't aware that the GIO had a compass... but I would suspect that would work well also.

      Not sure what arpeggio is, never tried it but it looks like a stock rom. They are using the kernel (I think) from the guy that put out the ROM I am running (Phiexz).

      Also found out that because it is not stock, it is by default unlocked. Found that one out when I went to the newest GioPro and it asked me for the security key.

      Delete
  3. Gio supports hardware decoding. Baseline profile x264 and aac within mp4 works. (Also normal profile xvid works too)

    ReplyDelete
    Replies
    1. I wasn't too sure, I guess it was because for a while MPLayer had some audio sync problems when streaming from my media PC. Also had the same problem (and continue to) with Netflix. Recently MPlayer has been better, but Netflix is still a pain.

      Delete
  4. This is the GT-S5660M, not the GT-S5660, right? I just don't want to brick my phone, and I have read that the two aren't interchangeable.

    ReplyDelete
  5. I will look that up for you, it is a Gio on the Bell Canada network. I think it is pretty hard to brick your phone. Once you get Clockwork Mod installed... You should be good. What I often do is keep a bunch of ROMs on my SD card and switch between them periodically when it suits me. I have upgraded the Gio to ICS, Jelly Bean and then back down to the one I wrote about in the post. It is as easy as putting your system into restore mode and picking the ROM you want to put on it.

    ReplyDelete