[Galaxy S I9000 Android Development] truden:
Hi insane friends :)

Since the biggest concern about Insanity CM is its battery life, I'd like to share my experience in partially solving this problem out.

So, here goes my cleverness in few points :D

Modem compatibility with your cell phone network

The same modem could give you very good and very bad connectivity in two different countries, not mentioning that it may not work in one of them, because it is developed for specific region, which doesn't include the country in question.

We have also the possibility, a modem which is made for two countries to work better in one of them and to drain the battery power in the other one, because the cell phone network is bad and the modem is forced to switch between 2G/3G more often in order to gain better connectivity.

I'd rather skip commenting on the different power consumption for the different modems, but some modems use less power than others.

So, check those CM modems and try how they work in your country.

Check also this thread for some more CM modems.

See also some general information about modems. The thread IS NOT about CM modems, but gives a good understanding about how they work based on different criteria.

For now I am using JVK modem in South Africa and I am quite happy with it.

Connection type (2g/3G)

For now CM7, which is the base for Insanity CM, doesn't support 2G/3G toggle.

That is a very useful feature which saves lots of battery juice.

When the screen goes off, the phone switches to 2G, which is less power hungry and is good enough for email check and synchronization with all your social internet apps. Unfortunately still not working in CM7.

So I have to do it manually.

During the day I don't surf the Internet. That time I don't need the fast HSDPA connection. So I go to Settings -> Wireless & networks -> Mobile network and I first switch off data over mobile network, then switch on "Use only 2G network" and then I switch back the data connection.

(CM has the bug which doesn't allow you to just tick on 2G)

This way my modem doesn't suck the life out of my battery during the day.

Background running tasks

Of course if you are playing game, listening to music and having browser, Twitter and Facebook running in background at the same time, your battery will run out of juice in no time.

Try to run only the tasks you need for the moment.

My recommendation is not to use task killers.

I figured for myself that after Froyo the task killers are doing the opposite work.

I don't have concrete evidence but I think that sometime TK's when killing a curtain task, they kill a process needed for another app, thus forcing Android OS to continuously drain the power trying to complete a task with the crippled app.

Since I am not Android developer or specialist you can ignore the above guess, but I am not using task killer and that helps my battery life.

JuiceDefender

I doubt that there is self respecting SGS user who doesn't use JuiceDefender :D

It helps by switching the data connection off when the screen goes off. Then it goes on every 15 minutes for 30 seconds (can be configured) to check for email and for synchronization. And that is only one of the many useful features included in this brilliant app.

If you have the free version it is enough to use balanced settings and it will help a lot with your battery life.

Buy it and you'll be able to show some creativity and share with us your settings.

(DO NOT TRY to configure the CPU options. It won't work with CM7. Instead use kernel with voltage control)

I use paid version but my personal settings are very closed to the pre-loaded advanced settings.

Kernel

If you use kernel which supports UnderVolting(UV) and OverClocking(OC) you will be able to reduce the voltage used by your phone processor thus saving some significant amount of power.

I am new to the UV/OC but as far as I understand it, it doesn't slow down your phone, UNLESS you want to squeeze the sh*t out of it.

The insane users normally use Glitch kernel, which you can download form the first page.

Install the Voltage Control for Samsung and try to use it with care.

I started with OC to 1200 and the UV: 0, 25,25, 50, 50, 75

DO NOT USE UV on the overclocked frequency (that is the 0 in my settings)

Now after few days testing I came to 0,50,50,75,75,100 which is the recommended settings from the Glitch developer (I think)

Together with setting the UV I installed Juwe's RAM script, which now comes standard with Insanity CM 012.

My phone is very stable, very fast and very responsive.

In the same time my battery life dramatically improved.

Before I did the above optimization I use to get between 12 to 16 hours battery life with Insanity CM.

Now with the same phone usage I easy go over 24 hours without even going down to 30%

I could imagine some of you guys having even better battery life, and I'd be thankful if you share your knowledge and experience.