[EVO Shift 4G General] VICODAN:
Trying to figure out what the optimal settings for CM7 on the EVO Shift.

CM7 is a very advanced ROM that gives you control over a LOT of settings and it can be very hard to understand and frustrating to get the optimal settings.

Cyanogenmod 7 latest nightlies and change log available here:

http://cm-nightlies.appspot.com/?device=speedy

As of this time the latest "official" gapps is 828 and is available here: http://www.goo-inside.me/gapps

If you're feeling adventerous CrashV2010 has a new gapps with newtalk and market 3.2 included here:

http://xdaforums.com/showthread.php?t=1311342

How to flash:

1) Get rooted with Clockwork recovery.

2) Download/Open ROM manager, flash clockwork recovery.

3) Reboot into clockwork recovery

4) Upgrading to a new nightly: wipe dalvik cache, /cache partition, /system partition, and battery stats

Clean install: Choose wipe/data factory reset and wipe dalvik cache, /cache partition, /system and data partitions anyway (just to be sure).

5) Partition the sd card how you like (wanna do this on first installs only usually, this will erase your sd card, so copy all necessary files off sdcard to computer before doing this and then copy them back)

6) Choose zip from SD card -> Flash CM7 zip file

7) Choose zip from SD card again -> Flash google apps.zip and then google apps new talk.zip. As of this time the latest gapps is 828 and is available here: http://www.goo-inside.me/gapps

If you're feeling adventurous flash CrashV2010's gapps zip located here: http://xdaforums.com/showthread.php?t=1311342

7a) Flash a custom kernel if you have one.

8) Reboot phone

9) Wait 5-10 minutes for dalvik cache to rebuild and phone to load

10) Once phone boots skip google account setup and get connected to wifi

11) Menu settings -> privacy UNCHECK automatic restore

12) Menu -> settings -> accounts + sync -> add account -> google, sign in.

13) Open market: search for "pub:Google Inc." to find all the google apps

14) IMPORTANT: After installing GMail go to accounts + sync settings -> google account and check the gmail check box. Otherwise gmail will not sync!

15) Flashing a kernel: Download kernel manager lite from the market, open kernel manager lite, load kernel list, allow super user request, menu -> advanced options, uncheck "Automatically flash", back, choose AOSP kernel, download, reboot in to recovery of your choice (clockwork in my case, wipe cache, wipe dalvik cache, install zip from sd card, go to sd-ext dir, kernelmanager, choose kernel zip file and install.

You should be good to go at this point and you can start tweaking CM7 using my settings below or however you want.

At the time of this writing I am running nightly 224, Crash V2010's Google Apps with Market 3.2 and new talk included and Scarystable kernel, latest Clockwork Recovery, Patriot 16GB Class 10 SD card on Sprint. Also, using Google voice for text/voicemail and Launcher pro as my launcher.

I'll usually reboot once every day or two just to make sure it's working properly.. I blame this more on bugs in CM7 than the kernel. Then again I haven't run toastcfh's (stock) kernel in a long time.

4G works

Wifi works

overclocking works

phone is fast

battery life is good

ONLY use ScaryGhoul's governors. (SCARY, TOASTY, BATTERYSAVE!)

ALL OTHER GOVERNORS HAVE STABILITY ISSUES! (interactive, ondemand, performance, etc. etc.)

2 things to take notice of: There is a notification power widget (which goes in your notification/status bar) and a power control widget (which goes on your home screen).

What I'm really not sure about is which takes precedence over the other and what network modes to use.

Update 10-6-2011: I am ALMOST 100% sure the power control widget that you add to your home screen takes precedence.

A lot of settings taken from here:

http://forum.cyanogenmod.com/topic/22620-settings-to-optimize-battery-on-cm7-last-updtd-may-8-2011/

Further explanation of settings here:

http://wiki.cyanogenmod.com/wiki/CyanogenMod_Settings

So here are my settings as of this time:

CYANOGENMOD7 settings (THE IMPORTANT STUFF!)

Application settings

Allow application moving: checked

Install location: automatic

Permission management: unchecked

Phone goggles: off

Display

Automatic backlight

Enabled: off

Light levels (updated 10-17-2011, didn't find this really beneficial and/or don't know how it works)

Use custom: unchecked

Screen dim level: 12

Edit other levels..: ???

Allow light decrease (??): unchecked

Screen-on animation: off

Screen-off animation: off

(saves battery off)

Accelerometer rotation:

0 degrees: checked

90 degrees: checked

180 degrees: unchecked

270 degrees: unchecked

Input settings

Long-press home settings: whatever you want

Long-press menu settings: whatever you want

search key behavior: whatever you want

Haptick feedback tweaks

Haptick feedback main: unchecked

Volume rocker wake: unchecked

Volume button music con: unchecked

(saves battery off)

Interface

Power prompt: checked

Notification power widget

Notification power widget: checked

Hide on change: unchecked

Hide indicator: unchecked

Hide scrollbar: checked

Haptic feedback: off

Widget buttons:

Everything unchecked except brightness, GPS, flashlight, sound, wifi, wifi AP, WiMax

Network modes (???): DO NOT TOUCH!

Screentimeout modes: 30s/2m/5m

Sound modes: Sound+Vib/Vib/Silent

Flash mode: High/Death Ray

Performance

CPU Settings:

Governor: Scary

Min CPU frequency: 184 mhz

Max CPU frequency: 1600 mhz

Set on boot: checked

Compcache RAM usage: disabled

Use JIT (??): checked

Use 16bit transparency: unchecked

Enable surface dithering (??): checked

Allow purging of assets (??): unchecked <-- beter performance unchecked

Lock home in memory(??): unchecked

Lock messaging app in memory(??): unchecked since using google voice now

VM heap size: 48m

Sound

Notification focus: unchecked

Silent state: checked

Vibrate during calls: unchecked

Always play on speaker

Notifications: checked

Ring tones: checked

Alarms: checked

System:

Anonymous statistics

Enable reporting: unchecked

POWER CONTROL WIDGET:

Get to this by going to menu -> add -> widget -> power control on your home screen.

Everything unchecked except the following:

Wi-Fi, Portable wi-fi hotspot, GPS, Mobile data, Wimax, Brightness, Flashlight, Round corners, Wi-Fi disables 3g, Wi-Fi enables 3G, Vibrate as ON

Network mode: 2G/3G only/3G+2G

Ring modes: Sound+Vib/Vib/Silent

Brightness levels: Auto/25%/100%

Screen time out 30s/2m/5m

======================

ANDROID settings:

Wireless & Networks:

Wi-Fi settings:

Network Notification: OFF

In this screen hit the menu button -> advanced

Regulatory domain = 14 channels (BUG: SEEMS TO NOT BE SAVING THIS SETTING ANYMORE)

Wi-Fi sleep policy = NEVER

Mobile networks:

Data Enabled: Checked

International data roaming: Checked

National data roaming: Checked

System select: Automatic

Display

Brightness

Automatic brightness: checked

Auto-rotate screen: checked

Animation: No animations (saves battery off)

Screen timeout: 30 seconds

Call settings:

Voicemail service: Google Voice (when you flash a new CM7 build you will need to delete your sprint number and re add it to google voice in order to get the Google voice choice back. Google voice will call you and you will enter a 2 digit code. Wait for Google voice to hang up on you and then you will be able to choose Google voice as your voicemail carrier.)

Google voice settings from http://voice.google.com :

Sprint integration: enabled

Receive text message on this phone: checked

Notify me of new voicemails via text: checked

These settings will allow you to use the android messaging app or google voice app to send texts and will also back up your SMS.

Vibrate on answer: off

Vibrate every 45 seconds: off

Vibrate on hangup: off

Vibrate call waiting: off

Keep screen awake: off

Always use proximity: off

Always back to call log: on

Missed call LED notify: off

Show nick/organization: off

Left-Hand mode: off

(explanation of left handed mode per otaking71: "It biases the presses/taps. Like if it's off...and you use the touchscreen keyboard......it biases the touches more to the right..vs to the left. Think about how you'd use your thumb one handed. it alters the bias of that.")

Enable sensor rotation: off

Incoming call in background: off

Hide hold button: off

Voicemail notifications: off

Voice Privacy: off

Use internet calling: only for internet calls

Location & Security

Use Wireless Networks: Have had problems disabling this

Use GPS satellites: checked

Use visible pattern: unchecked

Use tactile feedback: unchecked

Visible passwords: unchecked

Accounts & sync settings:

Background data: checked

Auto-sync: checked

(Per otaking71, autosync is not necessary for your accounts like google, facebook, and whatsapp to update. That is what background data is for. This will save you a considerable amount of battery life.)

^^This is wrong, you NEED auto-sync! And I don't know what code for strikethrough is obviously.

UPDATE: Auto-sync needs to be checked in order to receive gmail push notifications.

Background data is what apps like Facebook and Twitter use to sync data in the background.

In order to preserve battery life you should tweak the refresh interval in each application if possible. Other than that you are pretty much stuck with leaving both of these on unless you don't mind manually updating your applications.

Privacy

Backup my data: checked

Automatic restore: unchecked

(ANNOYING setting that will start downloading all your market apps all over again once you reflash!)

=============================================

Explanation of governors:

Quote

From XDA-Dev & setCPU :

CPU governors control exactly how the CPU scales between your “max” and “min” set frequencies. Most kernels have “ondemand” and “performance.”

ondemand – Available in most kernels, and the default governor in most kernels. When the CPU load reaches a certain point (see “up threshold” in Advanced Settings), ondemand will rapidly scale the CPU up to meet demand, then gradually scale the CPU down when it isn't needed.

conservative – Available in some kernels. It is similar to the ondemand governor, but will scale the CPU up more gradually to better fit demand. Conservative provides a less responsive experience than ondemand, but can save battery.

performance – Available in most kernels. It will keep the CPU running at the “max” set value at all times. This is a bit more efficient than simply setting “max” and “min” to the same value and using ondemand because the system will not waste resources scanning for CPU load.

powersave – Available in some kernels. It will keep the CPU running at the “min” set value at all times.

userspace – A method for controlling the CPU speed that isn't currently used by SetCPU. For best results, do not use the userspace governor.

interactive- The 'interactive' governor has a different approach. Instead of sampling the cpu at a specified rate, the governor will scale the cpu frequency up when coming out of idle. When the cpu comes out of idle, a timer is configured to fire within 1-2 ticks. If the cpu is 100% busy from exiting idle to when the timer fires then we assume the cpu is underpowered and ramp to MAX speed.If the cpu was not 100% busy, then the governor evaluates the cpu load over the last 'min_sample_rate' (default 50000 uS) to determine the cpu speed to ramp down to.

smartass (Available only in certain CFS kernels. Not usually avaialble in BFS kernels like CM.): - Based on interactive, but better. Performance is on par with the "old" minmax and smartass is a bit more responsive. CPU spends much more time at the lower frequencies. Smartass will also cap the max frequency when sleeping to 245Mhz (or if your min frequency is higher than 245 - why?! - it will cap it to your min frequency). Lets take for example the 998/245 kernel, it will sleep at 245. No need for sleep profiles any more!

Scarykernel specific governor explanations:

Governor exlainations

Toasty makes one transition to the max speed and stays there(benchmarks only usually)

Batterysave! sits at the bottom and when the cpu load increases past the threshhold it scales up to the next speed and takes another load sample and keeps doing that(best on battery life/performance ratio)

Ondemand sits at the bottom and when the cpu load increases past the threshhold, it scales ot the max speed then takes another load sample and scales down accordingly

Powersave makes one transition to the bottom speed and stays there

Smartass(Quoted from another author http://www.ziggy471.com/2010/11/07/s...-governor-info ) - "is based on the concept of the interactive governor.

I have always agreed that in theory the way interactive works – by taking over the idle loop – is very attractive. I have never managed to tweak it so it would behave decently in real life. Smartass is a complete rewrite of the code plus more. I think its a success. Performance is on par with the “old” minmax and I think smartass is a bit more responsive. Battery life is hard to quantify precisely but it does spend much more time at the lower frequencies.

Smartass will also cap the max frequency when sleeping to 352Mhz (or if your min frequency is higher than 352 – why?! – it will cap it to your min frequency). Lets take for example the 528/176 kernel, it will sleep at 352/176. No need for sleep profiles any more!"

Scary - A new governor I wrote based on conservative with some smartass features, it scales accordingly to conservatives laws. So it will start from the bottom, take a load sample, if it's above the upthreshold, ramp up only one speed at a time, and ramp down one at a time. It will automatically cap the off screen speeds to 245Mhz, and if your min freq is higher than 245mhz, it will reset the min to 120mhz while screen is off and restore it upon screen awakening, and still scale accordingly to conservatives laws. So it spends most of its time at lower frequencies. The goal of this is to get the best battery life with decent performance. It will give the same performance as conservative right now, it will get tweaked over time.

===============================================

CHOICES OF KERNELS:

To download/flash a new kernel download kernel manager from the Market.

Differences between kernels are speed/battery savings/overclocking/underclocking/undervolting.

Right now I prefer ScaryKernel Stable. It is way faster than the stock CM7 kernel.

AOSP/CM7 based:

ScaryKernel SUV - ScaryGhoul

ScaryKernel Stable - ScaryGhoul

GirlyKernel - ScaryGhoul

V8 aka Pershoot - SparksCo

Tiamat_Shift - cayniarb

x99kernel-CM7 - x99percent

bcblend VR tinyRCU v - bcnice20

Official CyanogenMod 7 Kernel - toastcfh

You can use Antutu benchmarker (available from the market) to see the performance differences between the different kernels. I got over 4000 on Antutu with Scaryghoul's SuperStable kernel (which is available for download in the dev forum or kernel manager lite app, make sure you are on wifi before downloading through kernel manager lite) on Toasty governor at 1900mhz.

Your results will vary with performance. Not all phones can OC to 1900mhz and all phones will eventually get HOT running at 1900mhz constantly. There ARE different hardware versions of the phone. Mine is version 0004. You can check your hardware version ONLY with a Sense based ROM.

Sense based (DO NOT FLASH ON CM7!!):

ScaryKernel SUV - ScaryGhoul

ScaryKernel Stable - ScaryGhoul

Dodgekernel - dodgejcr

x99kernel-Sense - x99percent

Stock 2.2 Sense - Dodgejcr

Backups:

TITANIUM BACKUP OR BUST!

Please post your settings differences.. also if you could offer an explanation of the stuff I marked in ??? and which takes precedence the power control widget or the power notification widget that would be appreciated. Also provide the kernel you are running, nightly build number, and provider.

Credits:

toastcfh

ScaryGhoul

riggsAndroid

jesusice

otaking

xIndirect

CrashV2010

ChaoticSheep

Everyone in #htc_evo_shift