06 June 2012

CyanogenMod 9.0 Nightly and AOKP for GT-7200

I know GT-7200 comes already with ICS, but with my long experience seeing manufacturers bloating the stock rom with unwanted and sometimes system applications you can't install (in fact, you can, but sometimes they're attached to some framework and if you uninstall, you can mess up everything), I search for a custom rom for this tablet.

Updated 2012/06/28 - This procedure now is AOKP Compatible too.

Read this first:

Disregard stupid people saying stupid things without the minimum necessary knowledge to judge, I'll put here some pro and cons to use cm9 instead the stock one:

* REAL GOOGLE APPS EXPERIENCE. Because Genesis just cut off part of google apps without any reason (faceunlock and gtalk are good examples). I've tried to figure out how made it work with stock one, without a minimium success. And yes, even video chat in native google talk works. And no, I don't want to use any 3rd party applications, since I only use gtalk and the google one is a very good piece of software compared to the other solutions (memory use, etc).
* Better framework. If genesis was able to provide the DAMN GPLed OPEN SOURCE KERNEL, I would be able to tune up, help fixing bugs or even more, but no, Genesis doesn't even answer the customers by mail when you ask for it. If you don't know what I'm talking about, read the license of the linux kernel.
* Specific tunings by Cyanogen. And I'm not talking about "overclocking" ANYTHING. You can tune a little, for example, the native governor installed doesn't have a decent scalation, so when you turn off your screen, you still wasting your battery. I have almost 2h more using CM9 than STOCK, if I had the kernel sources of this device, I'll be able to port smartassV2 governor, so will be another story, another performance and another battery life. But as I said before, Genesis doesn't give a fuck to licenses and doesn't even give a fuck to his customers (I've sended 10 mails, a friend of mine have sended 8, none has been answered), and the worse? Doesn't give a fuck to android community AT ALL, he just get the software, put in his devices and you must deal with this. Don't you believe, right? So wait for 4.1 for your device. Coby does exactly the same with his customers.
* Some graphic tunings, because AFAIK Genesis doesn't know his device is 3D capable, cause most of 3D features of this gpu was disabled by default in stock rom. The last stock last update turned on the 3D, thats funny, its the only real update.
* The original ROM is against ALL TYPES of standards. For example: Busybox, AOSP, etc.

Maybe you'll be off the official support using this, but you can always turn back using your backup or flashing back a stock rom, so, isn't a con at all.

Btw, you don't need to use if you don't want it, so just stop speaking bullshit when you don't have the little knowledge to know what the fuck you're talking about.


* You need A10 CWM Recovery (you use that little button for stock recovery to navigate in options and power button to choose one, and remember to nandroid backup)


* Boot to CWM recovery (there's many ways to do that, google is your friend)
* Wipe everything
* Install the main cm9 nightlies or AOKP (If you have some problems with the last build, get the 20120607 from here).
* Install Gapps
* Install my patch (updated with lots of fixed 2012/06/28)
* Reboot

Update: If you have some problems and need help, please provide a logcat (it's impossible to understand what is happening without a logcat).

29 May 2012

Android tunings

If you don't know what this means, it's not for you.


1. Network

Sometimes you feel your device a little "clumsy" depending your connection. I really don't know why this happens. For example, at home my wifi is ok, but in some others is different (with same routers). Or even worse, some differences from carrier to carrier, and I'm not talking about latency (and don't start talking about android quality of connection because I've already feel the same using an iPad).
Sometimes.. you know.. if you doesn't use a custom rom because you really believe that the manufacturer knows what is the best for your phone, I'm really sorry for you.
This settings will give you a little more latency, you need a little test to see if fits for you.


2. Image related

Some manufacturers thinks you like this type of garbage, you can optimize this:
This one give the full quality for jpeg images (yes, sometimes you're not using what your device is capable):


Disable this, unless you like the red borders for strict applications

Render UI with GPU (yes, sometimes isn't turned on)

debug.sf.hw = 1
Improve the scrolling response

windowsmgr.max_events_per_sec = 120
Disables the surface dithering (if enable will improve image quality, at cpu cost)

persist.sys.use_dithering = 0
Use hardware acceleration to render videos.


3. Battery Related

Do you know about governors right? I you know all manufacturers (including sw ones like google, unfortunately) thinks no one needs a DECENT governor on your device, so your battery will sucks big time.
There's some types of governors for almost all devices that you HUGE increase the battery life without making your device a garbage, like smartassV2, interactiveX and Drewi's ondemand. but… if you don't use a custom rom and thinks that your manufacturer is the god of devices, just stop reading already :D.
You have a custom kernel with a custom governor? Good! Did you use smartassV2? Very good. Now some minor tunings.

Decrease the scan time of the wifi (will not hurt):

This will improve the "deep sleep", but depends on kernel in some way


Increase battery saving

pm.sleep_mode = 1


Based on supercharger script (because not all supercharger script settings are good to everyone, Ive filtered the best compatible options):

Define the OOM adj values for the classes of processes that can be killed by kernel.


Define the memory threesholds at which the above process classes will be killed


init.d Scripts

Of course, your ROM must support init.d scripts


echo "3" > /proc/sys/vm/drop_caches
echo "20" > /proc/sys/vm/swappiness
echo "15" > /proc/sys/vm/dirty_ratio
echo "70" > /proc/sys/vm/vfs_cache_pressure
echo "3000" > /proc/sys/vm/dirty_expire_centisecs
echo "500" > /proc/sys/vm/dirty_writeback_centisecs
echo "3" > /proc/sys/vm/dirty_background_ratio
echo "2048,4096,51200,56320,61440,70400" > /sys/module/lowmemorykiller/parameters/minfree
echo "veno" > /proc/sys/net/ipv4/tcp_congestion_control

AIX Clone

Many people will already know how to do this, since there's some (huge) machines you need lots of AIX Virtual Servers, and of course, you'll not make thousands of installs (will you?).

...and if the AIX boot partition fails?

First, you need to boot with an AIX installation disk or Diagnostics disk (Virtual I/O bootdisk also works) and go to maintanence mode. Choose the option to give you a shell (mounting rootvg, of course).
Just in case, this is a quite dangerous process, so you need to know what you're doing (and so, if you destroy the world, it's your fault, not mine).