DISCLAIMER: I will take no responsibility if you brick your phone or if this ROM screws your phone up in any shape or form.
Why am I doing this?
Ever since I mentioned the modifications I have been making to CM7 for personal use, a few people have contacted me to get the modified ROM. Because of this, I have decided to make it public, as long as I see interest in it.
Wi-Fi Scan Delay: customizable with any number that is a multiple of 15
Boot animation: default or customized. Place valid bootanimation.zip file in /sdcard/ILWT folder and set appropriate ILWT.txt option
Fonts: default or custom. Place Clockopia.ttf, DroidSans.ttf, and DroidSans-Bold.ttf in /sdcard/ILWT/fonts.
Car Home apps: installed or not installed
NotiGo: installed or not installed
Notification LED: stock or blinking green
Calculator: installed or not installed
Terminal Emulator: installed or not installed
ROM Manager: installed or not installed
SIM Toolkit: installed or not installed
ext3 partitions automatically converted to ext4 for better performance (no data loss)
Implemented fix to fake front camera when using Google+ hangouts
Implemented fix for ShootMe
Various performance tweaks
Possibility to personalize the installation step by step with AROMA UI
See next post for complete changelog and Addons section for sample ILWT.txt configuration file.
It is possible to change kernel, as long as it is AOSP. Just make sure to adjust the frequencies found in the files at /system/etc/virtuous_oc, they have to exist in the kernel you are using. I recommend to always use ondemand governor, but especially do not use smartass or scary governor. The OC Daemon has a sleep profile which would become useless if used with either of those governors.
If you are coming from a ROM that isn't a CM7 nightly, a full wipe is required. I recommend using SuperWipeG2+ext4 (ext4 version of SuperWipeG2+). Make sure to do a Nandroid Backup of your current ROM before flashing the file.
For specific features that you would like to be added or removed, please reply in the thread. If enough people would like to see that modification, I will create a flashable zip for it (or even integrate it in the ROM, if appropriate).
Exposed VDD levels to userspace, so that voltages for all frequencies can be modded at any time
Added SIO scheduler and made it default
Enabled swap support
Download link: ILWT CM7 Kernel v1.8.1
v1.8.1 md5: 331e95e8f3cb4a9a60cddade7c99e779
v1.8.0 md5: ad7ba8efd08501da1cb77567c74d535c
Also available on ROM Manager.
ILWT OC Daemon
Based on Virtuous OC Daemon (all credits go to rmk)
Changed name so that it isn't confused with the original OC daemon. Current GUI apps do not work with ILWT OC Daemon.
Same rules apply: make sure that there is no other CPU controller running (such as SetCPU), or the daemon will stop running.
Added temperature profile: when temperature gets too hot, lower frequencies
Added battery capacity profile: when battery is too low, lower frequencies
Added charging profile: if phone is charging, use this profile
There is only one configuration file that the daemon uses upon starting. The default one is found at /system/ilwt/ilwt_oc.conf
Upon starting, the daemon will also check if /sdcard/ILWT/ilwt_oc.conf exists. If it does, it will load the configuration from that file first. If the file is not present or if it is missing some values, the daemon will use the values found in the default configuration file in /system/ilwt/ilwt_oc.conf.
Priority for profiles is: sleep > temperature > charging > battery capacity > wake. This means that it is better to set lowest frequencies for sleep. The wake frequencies are only going to be used if the battery is not too hot, if it has enough capacity left, and if the phone is not charging. If the screen is off, the sleep profile will always be used.
Because of the way the sys files are set up, to switch between the wake profile and the battery, charging, or temperature profiles, the screen must turn off and then back on.
Devs: feel free to add the daemon to your ROM. It would be a nice gesture if you gave credits and a link to this thread, but it's ok either way.
Download link: ILWT CM7 Daemon v1.3.0. It works on any ROM of any flavor (including Sense). All phones are supported as long as you have a kernel that is overclockable. I am not 100% sure that it is possible to use the config file from the SD card on every phone, though.
Also available on ROM Manager.
The zip file is created with this specific ROM in mind. It will work on other ROMs also, but it will always use the configuration file for the ILWT CM7 kernel. Make sure you check that the frequencies exist for your kernel, otherwise create your configuration file at /sdcard/ILWT/ilwt_oc.conf and set the correct values. Here is a sample ilwt_oc.conf configuration file.
Simply flash the .zip file from recovery (it must be 4ext, CWM is not supported), nothing fancy needs to be done. I always wipe cache and Dalvik cache before flashing, just to make sure nothing gets screwed up. Make sure to do a full wipe if you are coming from a different ROM (CM7 nightlies are ok if they are not too old, no need to full wipe in that case).
ILWT CM7 419:
Added Root Browser as default file manager. If you'd like to use the stock file manager, use filemanager=stock in ILWT.txt.
Updated Titanium Backup and GO SMS apps
If you want to use ILWT.txt, you can now skip every AROMA menu (AROMA will still be launched).
Updated to latest CM7 commits (April 22, 3PM CET)
ILWT CM7 388:
ILWT Kernel: updated to latest CM7 commits
ILWT Kernel: enabled swap support
Added latest ILWT Kernel (1.8.0)
Added AROMA UI as installer. ILWT.txt still works, just select Auto Install. If Manual Install is selected, the values you pick will create a new ILWT.txt file, so that next time you can just select Auto Install again (warning: if you already had an ILWT.txt file, it will be replaced)
ILWT OC Daemon: No changes regarding the daemon itself, but it is now possible to select an IO scheduler directly from the daemon. Credits to Dipu K
Added latest ILWT OC Daemon (1.4.0)
ILWT Tools: You can now select the IO Scheduler from the app. If you're trying to update from Market, you might have to uninstall the old version first. Credits to Dipu K
Added updated ILWT Tools app
Updated to latest CM7 commits (March 22, 10:30AM CET)
ILWT CM7 376:
Updated Cerberus app
Possibility to remove Calculator (calculator=none), Rom Manager (rommanager=none), Terminal Emulator (terminal=none), and SIM Toolkit (sim=none). Please be aware that removing SIM Toolkit might cause issues with other apps, specifically those that require SIM features.
Updated to latest CM7 commits (March 10, 1:15PM CET)
ILWT CM7 350:
Updated apps: Cerberus, Jorte, Google Music, GO Launcher EX, GO Launcher EX Notification, GO SMS Pro
Added 4G and H+ icons for Cyanbread theme (which is now default for CM7)
Updated to latest CM7 commits (February 13, 11AM CET)
ILWT CM7 258:
Possibility to not install an OC Daemon at all with ocdaemon=none
Possibility to install NotiGo for people using 3rd party dialers that support it. Use notigo=yes in ILWT.txt
Possibility to remove Car Home apps. Use carhome=none in ILWT.txt
The installer will check for the previous version of the ROM installed. If it was prior to this release and if the phone is using the 26.13.04.19 radio, efs will be wiped
ILWT CM7 Kernel: Increased voltage of a couple of higher frequencies
ILWT CM7 Kernel: Increased max voltage allowed to 1450
ILWT CM7 Kernel: Enabled KSM module
Added latest ILWT CM7 Kernel (v1.6.0)
Updated to CM7 nightly 258.
ILWT CM7 255:
ILWT OC Daemon: cleaned up code and made it (very) slightly lighter
ILWT OC Daemon: added versioning support
Added latest ILWT OC Daemon (v1.3.0)
Added latest ILWT Tools
ILWT Tools is not installed when using "ocdaemongui=none"
Implemented fix for all apps using flash instead of just pre-determined app list
ILWT Kernel: merged latest CM7 commits
Added latest ILWT CM7 Kernel (v1.5.2)
When using radio 26.13.04.19, RIL's are matched (thanks to EdKeys for research)
Changed sleep profile to 245/768 for all kernels and oc daemons
New icon for ILWT Tools. Credits to Ditamae.
Updated to latest CM7 commits (November 8, 10:50PM EST)
ILWT CM7 249:
Included latest ILWT Tools.
Updated to latest CM7 commits (November 3, 4:15PM EST)
ILWT CM7 244:
Fixed bugs in the installer
ILWT CM7 Kernel: set default frequency to 1113 (instead of 1024) and default governor to ondemand (instead of interactive)
ILWT OC Daemon: wake profile gets automatically set at boot
Added latest ILWT CM7 Kernel (v1.5.1)
Added latest ILWT OC Daemon (v1.1.1)
ILWT Tools app included by default for those using ILWT OC Daemon. It is the very first release, there are 3 options shown, but only the Daemon configuration works. Please report any bug you might find.
Updated to latest CM7 commits (October 28, 10:10PM EST)
ILWT CM7 241b:
ILWT OC Daemon: little fix
Fixed issue with SD card being mounted after the OC daemon has started. Now the SD card configuration file can be used successfully
Possibility to set the GPS server to use. Use gpsfix=name.of.ntp.server.com in ILWT.txt, where "name.of.ntp.server.com" is a real ntp server. This is the same thing that FasterFix does, without the necessity of having an app installed and having to run it after every flash. See NTP.txt file in OP for a list of servers that you can use.
Configuration file is now read from inside ILWT folder instead of root of SD card (/sdcard/ILWT/ILWT.txt). The configuration file will automatically be moved from the root of your SD card if you have it there (and not in the new location)
Apps for custom apps installation are to be placed in /sdcard/ILWT/apps folder now
Changed the installer: it won't output any of the customizations to screen. Instead, it will create a log file at /sdcard/ILWT/logs/ILWT.log
Possibility to set the delay of the wifi scan. Set wifiscan=number in ILWT.txt, where number is a multiple of 15.
ILWT OC Daemon: changed location of configuration files: /system/ilwt/ilwt_oc.conf and /sdcard/ILWT/ilwt_oc.conf (they will be moved automatically from old location).
Added latest ILWT OC Daemon (v1.1.0)
Possibility to use a custom boot animation. Use bootanimation=custom in ILWT.txt and place a valid bootanimation.zip file in /sdcard/ILWT.
Possibility to install custom fonts. Use fonts=custom in ILWT.txt and place Clockopia.ttf, DroidSans.ttf, and DroidSans-Bold.ttf in /sdcard/ILWT/fonts. You can elect to install only one or two of them if you wish
Updated to latest CM7 Commits (October 25, 4:15PM EST)
ILWT CM7 238:
ILWT OC Daemon: added charge profile and modified the way the daemon is configured
Added ILWT OC Daemon v1.0
ILWT OC Daemon is now default. If you still want to use the Virtuous OC Daemon (which is compatible with the GUI's), use ocdaemon=virtuous in ILWT.txt
Installer recognizes 184.108.40.206_26.13.04.19 radio and automatically installs HTC GPS libraries for it
Updated to latest CM7 nightly (October 22, 9:30PM EST)
ILWT CM7 236:
Possibility to change "connection icons". There are 3 choices: 1) stock, 2) 4G instead of H (use connicons=4g in ILWT.txt), 3) H+ instead of H, and H instead of 3G (use connicons=h+ in ILWT.txt). Credits to sino8r
Possibility to use ILWT OC Daemon instead of Virtuous OC Daemon. Use ocdaemon=ilwt in ILWT.txt. In this case, no GUI will be installed (not compatible). For more info on ILWT OC Daemon see OP.
ILWT CM7 Kernel: increased voltage of top 2 frequencies
Added latest ILWT CM7 Kernel (v1.5.0)
Updated to latest CM7 commits (October 20, 6PM).
ILWT CM7 233:
ILWT CM7 Kernel: Added SIO scheduler and made it default. See this spreadsheet for reasoning behind the change.
ILWT CM7 Kernel: Updated to latest CM7 commits
Added latest ILWT CM7 kernel (v1.4.1)
Updated Cerberus to v1.91
Updated to latest CM7 commits (October 17, 9:30AM). It fixes the issue with music being interrupted by notifications while on headphones.
ILWT CM7 228:
Hosts file is now patched in order to remove ads. It's possible to unpatch it with hosts=unpatch in ILWT.txt
Increased readahead buffer on MMC devices from 1024kb to 3072kb
Implemented fix for Adobe Flash in browsers. If you're using a browser that is not supported by the fix, please reply in the thread. Currently supported browsers: stock, Dolphin HD, Dolphin Mini, Boat Mini, Skyfire, UC Browser, Miren. The fix takes place at boot, therefore if you install a browser after flashing the release, you must first reboot the phone for Adobe Flash to be working
Possibility to install Cerberus in system partition (see Official home page or Android Market page for more info). Use cerberus=yes in ILWT.txt
efs is now only wiped if the radio has been changed or if coming from a ROM that isn't ILWT CM7 (in previous versions it was wiped every time)
GPS libraries are now automatically selected for radios 26.10.04.12, 26.10.04.03, 26.08.04.30, and 26.03.02.06 (gpslib value in ILWT.txt is ignored for those radios)
ILWT CM7 Kernel: changed min and max voltages allowed. Might fix the issue with phone freezing with high max frequencies and Virtuous OC Daemon. Also removed 1497MHz, 1516MHz and 1612MHz frequencies, and added 1507MHz and 1574MHz frequency
Included latest ILWT CM7 Kernel (v1.3.0)
Removed Tiamat kernel. It does not have the ondemand governor anymore and it causes issues with high max frequencies and Virtuous OC Daemon
Updated pershoot kernel to 10/12/11 - 8.30PM EDT version
Tweaked lowmemorykiller, vm, and oom_adj for extra performance. Credits to Juwe11
Updated to latest nightly (October 13, 1PM EST)
ILWT CM7 225:
Google Music app updated to v4.0.1. You most likely will have to clear data and cache of the application or it will FC if you had it previously installed.
Removed possibility to pick Superuser app, as it is v3.0 by default in CM7 now
Patched media_profiles.xml to increase audio bitrate of video recordings from 96k to 128k. Credits to dk2000zx
Updated to CM7 nightly, October 9th, 7:15pm EST.
ILWT CM7 223:
ILWT CM7 Kernel: updated to latest CM7 kernel commits
Added ILWT CM7 kernel v1.1.2
Updated modded Gmail app
Possibility to use old market version. Use market=old in ILWT.txt. If this is not a fresh install after a full wipe, you must Uninstall Market Updates on the next boot (Settings->Manage Applications->Market->Uninstall Updates)
Possibility to remove stock Gallery app. Use gallery=none in ILWT.txt (QuickPic must be installed from Market in order to work)
Wifi scan interval changed to 120 seconds.
Possibility to add custom sounds. Credits to smokey_joe. Use customsounds=yes in ILWT.txt and place the files in the following folders:
/sdcard/ILWT/sounds/r (for ringtones)
/sdcard/ILWT/sounds/a (for alarms)
/sdcard/ILWT/sounds/n (for notifications)
/sdcard/ILWT/sounds/u (for ui)
ILWT CM7 216:
Installer removes older efs backups and stores new ones in ILWT folder inside SD card.
Implemented fix for ShootMe.
Possibility to remove stock wallpaper .apk files. Use stockwallpapers=none in ILWT.txt.
Possibility to remove VPN Services app. Use vpnservices=none in ILWT.txt.
Updated to CM7 nightly 216 (Android 2.3.7).
ILWT CM7 213
Possibility to use the stock HTC GPS drivers (10.04.03). Use gpslib=htc in ILWT.txt. Recommended only if you are NOT using radio 26.03.02.26 (it fixes GPS lock issues with 26.08.04.30). Credits to kusuriurikun.
efs is wiped at every installation. Credits to guhl.
Possibility to remove Google Books app. Use googlebooks=none in ILWT.txt.
Possibility to use the old OC Daemon GUI. Use ocdaemongui=virtuous in ILWT.txt. It is also possible to not use a GUI at all by using ocdaemongui=none.
Updated Google Apps to latest version (08/28/2011).
Possibility to use MIUI camera. Use camera=miui in ILWT.txt
ILWT CM7 kernel: merged latest CM7 commits.
ILWT CM7 kernel: increased voltage for 1612 frequency.
Included latest ILWT CM7 kernel (v1.1.1).
Updated Superuser to v3.0. If you'd like to use the old version (v220.127.116.11), use superuser=old in ILWT.txt.
Implemented fix to fake front camera when using Google+ hangouts.
Updated to CM7 nightly 213.
ILWT CM7 212:
/data, /cache, and /devlog partitions are now optimized for ext4 upon installation. If they are formatted as ext3, they will be converted to ext4 (data will NOT be lost). Credits to rmk and Virtuous Team.
OC/UV Beater2 is now the default GUI for the Virtuous OC Daemon. It will be included by default, unless ocdaemongui=none is specified in ILWT.txt. Credits to cjoliver.
Updated to CM7 nightly 212.
ILWT CM7 211:
Updated to latest CM7 nightly.
ILWT CM7 204:
Possibility to remove FM Radio. Use fmradio=none in ILWT.txt.
Possibility to remove DSP Manager. Use dspmanager=none in ILWT.txt.
GO Launcher Ex Notification is not installed with GO Launcher EX automatically anymore. Use golauncherexnotification=yes in ILWT.txt to install it.
Fixed bug where custom apps would not get installed after a full wipe.
Updated Tiamat kernel to v1.1.3.
Fixed issue with killing foreground app by long pressing the back button. If you had ILWT CM7 previously installed, you might have to reboot once after flashing for the fix to start working.
Possibility to install the beta version of Superuser (v3.0-beta4). Use superuserbeta=yes in ILWT.txt
ILWT CM7 187b:
ILWT CM7 kernel: slightly undervolted 1017 frequency and added 902 frequency.
ILWT CM7 kernel: esposed VDD levels to userspace. Now voltages for all frequencies can be modded at any time.
viperMOD v3 beta RC2.4 is pre-installed when using the ILWT CM7 kernel. This allows for easily tweaking the voltages of the kernel.
Added updated ILWT CM7 kernel (v1.0).
Default build.prop is now unpatched. Use build.prop=patch in ILWT.txt to patch it.
ROM is now zipaligned at each boot. Credits to oknowton, ninpo, Bo$s, and DarkyROM Team.
Possibility to keep Market instead of writing over it (useful for people with themed Market apps). Use keepmarket=yes in ILWT.txt.
Possibility to include a modded version of Gmail that works with GO Launcher EX Notification. Use modgmail=yes in ILWT.txt.
Possibility to use the new version of the Talk app (with video and audio calls). It still has minor bugs that show up once in a while, so it is optional. Install with newtalk=yes in ILWT.txt. You must also install gapps for this to work.
New bootanimation. Credits to aph and ilhe1s
Changed Dalvik heap size to 48MB to improve performance.
Possibility to install Titanium Backup. Use titaniumbackup=yes in ILWT.txt.
Possibility to install custom apps. Simply put the .apk files in a folder named ILWT in the root of your SD card. The installer will look for any .apk file in there and install them in /data/app. Use customapps=yes in ILWT.txt.
ILWT CM7 187:
Possibility to include the OC Daemon controller during installation by adding a line in the ILWT.txt configuration file: ocdaemoncontroller=yes
Optimized the patched build.prop. Credits to kusuriurikun, again.
Changed sleep governor of OC Daemon to conservative.
Added a modified stock CM7 kernel: slightly undervolted a few frequencies and added 2 frequencies: 1017, 1612. This will be the default kernel from now on.
Updated GO Launcher EX and GO SMS Pro to latest version.
This update is not based on CM7 nightly 187 (no releases due to kernel.org breach). I have compiled the updated (yesterday) CM7 nightly code from source.
ILWT CM7 186b:
Inclusion of Tiamat kernel v1.1.2 (selectable from ILWT.txt configuration file). Default values for OC Daemon controller:
viperMOD v3 beta RC2.4 is pre-installed when using the Tiamat kernel. This allows for easily tweaking the voltages of the kernel.
Possibility to decide if build.prop is going to be patched. Patched build.prop will remove T-Mobile references and change some values to (hopefully) increase mobile data performance (credits to kusuriurikun to point out some issues with it).
ILWT CM7 186:
Possibility to customize the ROM before flashing it. This is possible through a text file named ILWT.txt that is placed in the root of the SD card. The customizations include:
Kernel choice: stock CM7 or pershoot
Google apps: installed or not installed
Launcher: ADW, GO Launcher EX, or completely removed
Messaging: stock CM7, GO SMS Pro, or completely removed
Calendar: stock CM7, Jorte, or completely removed
E-mail: stock CM7, K-9 Mail, or completely removed
Music: stock CM7, Google Music (for users of Music Beta), or completely removed
File Manager: stock CM7 or completely removed (for those that have paid for Root Explorer)
Spare Parts: stock CM7 or completely removed
T-Mobile Wi-Fi calling: installed or not installed
Changed some values in build.prop in order to try to increase data connection performance (feedback is appreciated).
Provided two separate releases: one with CM7 kernel, one with pershoot kernel (this will always be the case from now on, unless one of the two kernels proves itself to be objectively better than the other).
Removed Provision.apk as it conflicts with Google app "SetupWizard.apk".
Changed the colors of the boot animation (red).
OTA Update through ROM Manager is now available.
Updated to latest CM7 nightly.
Updated to CM7 nightly 185
Added addon for T-Mobile Wi-Fi calling (available in "Addons" section)
Added addon for Virtuous OC Daemon Controller (available in "Addons" section)
Good work dude! Question though... since pershoot last updated his kernel, there were a couple minor kernel revisions. The kernel is the same number but I remember there was some code cleanup since. So pershoot's kernel is running as smoothly as stock CM nightly one? Just curious on your opinion since you've been using and seem pretty knowlegable... thanks!
got this up and running, and so far so good, seems to be running great. thanks for this modded CM7, it was pretty much what i really wanted. i'll continue running it and will post any issues or feedback. thx
Any feedback is always appreciated As I said in the OP, if you'd like to see any other change made, or if you'd like some change reverted, just let me know and I will see if I can make a flashable zip for it or integrate it directly in the ROM when appropriate.
Due to the relatively open nature of Android, it’s almost a given that there are … more
XDA Developers was founded by developers, for developers. It is now a valuable resource for people who want to make the most of their mobile devices, from customizing the look and feel to adding new functionality. Are you a developer?