[HOW-TO] Some tweaks to sweeten your life with the Infinity a little
Hi everybody, I would like to share my experiences with the Infinity and ask you guys to share your opinions, thoughts and ideas on tweaking it. Hopefully we can sort something out together.
Please remember that you can brick your tablet with any of these methods and lose your warranty too and be the one solely responsible for it. I have not bricked mine, so I am writting all of this with best intentions
. Proceed with caution and only if you are sure that your Infinity not booting will not lead you to jumping off a high building! Seriously.
Ok, here it goes.
Hit [THANKS] if it helps.
Seems this thread somehow got to the News, so special thanks go to Joe and those of you who have reported it newsworthy.
I'm glad I could've helped you with this!
Remember 1) you'll have to do most of these each time you update firmware / change ROM and 2) go back to stock /system files every time before you apply an OTA update, as it does various checks on /system integrity now.
1. ROOT
Don't use ASUS Device Tracker! (see point 6. below)
Install SuperSU and follow these steps before updating to the Jelly Bean to preserve root (thanks to nooktablet for posting this). Others said that Superuser app combined with RootKeeper sufficed, so do as you wish.
DroidEris1981 has reported that in his case on the .30 firmware he was only able to root his Infinity using an older version of Debugfs and only when pausing it at each reboot, waiting for the device to fully boot up before the next step.
So far the only
rooting method that works is the
Debugfs method by sparkym3. By rooting you can boost your Infinity's performance a bit, including its poor I/O results, and much, much more (see threads on
reasons for rooting and
apps).
Once again:
ROOT BEFORE UPDATING TO THE JB!
If you've failed to do this, however, there is still a way to work things out - see the first few posts in
this thread if you're under unrooted JB now.
In case you experience problems using this method, you may try one of the solutions described in
this thread, but as there is a
new 2.2 version now, you should be good just using it.
Some need to RUN the Superuser app first before it starts working. And remember about BusyBox, it comes handy in many situations, especially if you are going to use the shell. And you can use
SuperSU instead of the "default" Superuser app.
RootKeeper might come in handy when updating firmware on a rooted Infinity.
1.1. We have the
unlocking tool now, and a few custom ROMs in the
development section.
2. I/O scheduler [only after rooting your device]
OBSOLETE
Since the .26 update and under the JB as well cfq is the default scheduler and better than non-stock sio, so no reason to change the scheduler at this point already on >= 9.4.5.26 firmware!
After a day of using JB I can say that (stock)
noop is slightly faster than cfq for most uses.
[REMOVED]
3. build.prop tweaks ("/system/build.prop" file)
These are for the ICS. We'll all have to see how these perform under the JB. So far changing the DPI via build.prop has been confirmed to be obsolete.
I have used various suggestions as a reference, incl. demandarin's tweaks for the Prime (just search "build.prop tweaks" on xda and read about what these tweaks do). I am still unsure of some of them, e.g. the proper heap size instead of the default 256m (or maybe we should leave it be?). The tweaks I'm using are the following.
If somebody knows the optimal value for "
windowsmgr.max_events_per_sec" (scrolling speed), we would all benefit from setting it to that optimal value

Somewhere between 150 and 300 should be OK, I believe. Possibly leaving the default value by ASUS (200) is fine - have a look at what
BxMxK has found out about this.
Edit: I'm leaving the default heap size, I think it's better for the games.
Lines to EDIT:
#an old proposal, which seems to be of no use
#dalvik.vm.dexopt-flags=m=v,o=y
dalvik.vm.dexopt-flags=v=n,o=a,u=y
#In case you experience problems with some apps after this, try (unhash) this instead:
#dalvik.vm.dexopt-flags=v=a,o=v,u=y,m=y
#(you can also see, for example,
this thread for instructions)
#windowsmgr.max_events_per_sec=300
# optional: CHANGE SCREEN RESOLUTION / PIXEL DENSITY (so that your screen can become more capacious)
# ro.sf.lcd_density = 160
Lines to ADD:
#
BATTERY SAVING
ro.ril.disable.power.collapse=0
pm.sleep_mode=1
wifi.supplicant_scan_interval=180
#
UI & GENERAL PERFORMANCE
debug.performance.tuning=1
video.accelerate.hw=1
ro.kernel.android.checkjni=0
ro.kernel.checkjni=0
ro.mot.eri.losalert.delay=1000
persist.sys.strictmode.visual=0
persist.sys.strictmode.disable=1
dalvik.vm.execution-mode=int:jit
com.ti.omap_enhancement=true
#
MEDIA QUALITY & PERFORMANCE
ro.max.fling_velocity=12000
ro.min.fling_velocity=8000
media.stagefright.enable-player=true
media.stagefright.enable-meta=true
media.stagefright.enable-scan=false
media.stagefright.enable-http=true
ro.media.enc.jpeg.quality=90
ro.media.dec.jpeg.memcap=8000000
ro.media.enc.hprof.vid.bps=8000000
persist.sys.use_dithering=1
#
NETWORK PERFORMANCE
# there are different types of advice here, you can try what work's best for you out of the latter two (just
delete all the spaces which xda keeps adding!):
net.tcp.buffersize.default=4096,87380,256960,4096, 16384,256960
#net.tcp.buffersize.wifi=4096,87380,256960,4096,16 384,256960
net.tcp.buffersize.wifi=262144,524288,1048576,2621 44,524288,1048576
# SWITCHING SOME
NOTIFICATIONS OFF
# disable sending usage data
ro.config.nocheckin=1
# disable adb notifications
persist.adb.notify=0
# FAST REBOOT
persist.sys.purgeable_assets=1
# you can also unhash this and disable boot animation for faster boot:
# debug.sf.nobootanimation=1
# This is for current, Wi-Fi only version of Infinity of course:
ro.carrier=wifi-only
# Just for those who need it - unhash the following line to make your device run all ADB shell and terminal emulator commands as ROOT by default (use with caution)
# ro.secure=0
3.1. You can edit the build.prop file manually, you can use one of a few apps out there to manage it, but I have found manually mounting the system r/w (and r/o again after changing the file) and editing it through a PC (you can use Dropbox) or the Infinity with the dock most helpful - you can just cp the new file to (remember to make a
backup copy of the old file just in case!).
If you like using the term, you can just 'su' and write these commands:
a) R/W before edit:
mount -o rw,remount /system
b) R/O after edit (
remember to run 'chmod 644 /system/build.prop' as root before remounting /system R/O):
mount -o ro,remount /system
3.2. Remember to reboot your device after changing the file. Clearing dalvik-cache won't hurt either.
Edit:
Actually I highly recommend wiping dalvik cache to avoid bootloops (as root: rm /data/dalvik-cache/*) <- and
then.reboot
4. Minfree tweaks:
You can either change the values in /sys/module/lowmemorykiller/parameters/minfree (remember these are
pages, so
1024 means 4MB!) or use any of the apps from the Playstore meant for that. I'm using
System Tuner for things like that (look for Tweaks / Auto-Kill in the app). You might set anything you like, possibly 8,16,200,220,240,275 MB proposed by the author of the (messy) SuperCharge script for the 1GB RAM devices (based on a minfree calculator by another XDA member). I have it currently set on 8,16,32,128,192,192 MB, which seems aggressive enough.
You can read more about it and what these values mean
here.
You can also have a look at my
thread on battery life.
5. Disable "smart dimmer", which is the reason you can see some screen flickering when changing between light and dark backgrounds that many find annoying (described by some as "dynamic contrast", which it resembles):
Can be done through SYSTEM SETTINGS under the JB, so no need to do this manually anymore.
To disable:
echo 0 > /sys/devices/tegradc.0/smartdimmer/enable
To re-enable echo 1 to the this file or simply reboot.
Be sure to include this in a script so that rebooting won't change it (just make an .sh script with the above line in it, you can use either
SManager or
system .sh scripts (you can use my simple solution posted
here if you don't like editing files yourself). See also
jtrosky's hints on changing the
brightness settings.
Please note that it may negatively affect your battery life, although with brightness set low it shouldn't be much worse.
All
credit goes to those who have found out about it - see
this post for details.
6. Disable remote management that
allows ASUS (or anybody in charge of their servers) to track, lock or wipe your device over-the-air or steal your data, which has been confirmed ASUS is doing: read the whole story about
warranty voided because of rooting here.
7. Install
Volume+ or a similar app to boost your device's sound level (you can register
here to get the full version for free, but if it helps, support the developer). And
remember to change the audio device in the system audio settings to Volume+!
8. Other tweaks, init.d, scripts etc.
See the
development section for custom ROMs which include various tweaks and for custom recoveries.
9. Some
keyboard solutions:
Re-map the browser key in the dock in order to be able to use your favourite browser or do some
custom re-mappings.
In case of problems with diacritics when docked, be sure to use
KLSwitcher for setting your locale.
Finally, not really a tweak, but something that a lot of users find helpful:
KEYBOARD SHORTCUTS.
10. Remove bloatware (see the first few posts with further links
here).
11. Set
background processes to max. 4 in the dev. settings for better stability (that's true for the ICS at least).
<----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------->
And remember, at the end of the day, when you're done tweaking, you should disable USB debugging if you don't want to get hacked.
Hit [THANKS] if it helps.