[Galaxy Ace S5830 Original Android Development] LibiSC:
I found this kernel mod donde for Nexus S.

http://xdaforums.com/archive/index.php/t-1257497.html

I think maybe i could try to port it to galaxy ace. C++ stuff. Tell me if it's not technically possible so i can quit :D

Alpha 1: 11/04/2012

-Deprecated

-Changed source to make battery percentage reading more accurated (didn't touch voltage settings yet)

- Forgot to put a name so no changes in system information

- I flashed it overt cf root and didnt lose cf root stuff so same for you probably

-After recharging you will see a quick drop because battery doesnt charge till max (70% aprox) after that should be accurate. tell me if you see the difference

Lol i forgot to upload the file. Just use cwm to flash it (choose zip from sdcard) and wipe dalvik cache.

Alpha 2: 12/04/2012 (zImage-Mod.v1.5+Battery_patch1.1-sign.zip) for cyanogenmod roms.

- 4V bug fixed. It will show mV instead.

- Change rpc timing to see if makes it refresh faster.

- Using dragonnn's patches - zImageMod cause i can't make the flashable zip yet (thanks man)

Alpha 3: 22/04/2012 (batteryPercent_alpha3STOCK.zip) Tested on DDKQ8

- 4V bug fixed. It will show mV instead.

- Change rpc timing to see if makes it refresh faster.

- Some options added in config file to achieve more battery life.

- IT'S FOR STOCK ROMS ONLY.

Alpha 4: 25/04/2012

(batteryExtenderAlfa4.zip) Teste on DDKQ8

(batteryExtenderAlfa4CustomRom.zip) Tested on custom rom

- Added Smartassv2 (cause it's the one i use, ask if you want other)

- Changed battery source to allow to function a little more with low charge (i think that works but i need confirmation)

- added advance power emulation and voltage something in config (just to try it)

- Still for stock

- Ext3, ext4 activated in config

I tried to let it charge more than the normal charge... but apparently it will need serious depuration to find out what's blocking me (damn).

i dont remember where i saw wifi drivers... when i remember i'll add them.

[Beta1:batteryExtenderbeta1.zip: 29/04/2012

Sames as alfa 4 but some bug fixes were done.

(not important things)

Also tried to overcharge it but seems that is not possible...hardware is controlling max charging.

batteryExtenderRC.zip: 21/05/2012

Well i've been playing with code for a while. I realized that the maximum real charge is 3700mV... but after the power is cut i drops very fast... so that's why samsung dudes put it in 3632 as maximum... but wasn't enough... so i lowered even more to 3400 mV.... but it doesn't mean we get less battery life... we just see 100% early... still you have to wait till full charge notification to unplug it.

Everybody knows that the screen lowers brightness in 10% so to avoid going darker faster because of the new maximum i have lowered the minimum to compensate (It will give more battery life in theory too but you tell me).

Also i changed the full battery notification to stop waiting for the counter (¿?) they used instead i'm using a maximum of 3660 mV real voltage ( if you realize it's higher than 3400 mV).

I changed a couple of things more but i can't remember ... I have not focused enough on it sorry I have a job and stuff xD

I wanted to check skynet's kernel and add some stuff but i've been pretty busy so i couldn't even add the governor i promise... i will add it later sorry.

I think it's all i can do with the battery code for now :)

Dropbox url... "20.zip"

http://dl.dropbox.com/u/73853654/20.zip

also in attachments batteryExtenderRC.zip

Tested in Cheetah v2... custom rom from tj_droid based on stock DDKQ8

batteryExtenderRC1.1.zip: 24/05/2012

-Went back to use counter cause it kinda stabilize voltage... also corrected a bug cause i ****ed up a sign xD (> instead of <)

-Added some tweaks i found related to deadline and other stuff

From now on i will copy stuff from githubs i find cause i can't do anything more for the battery code. :)

batteryExtenderRC2.0.zip: 26/05/2012

- Added all the mainstream governors (intellidemand is the coolest of all of them, i just don't get lulzactive)

- Added SIO, CFQ and Noop scheduler

- Some tweaks from skynet's kernel

+Added ARM CPU topology

+ Frequency table... i think it contains the voltage... not really sure but paste differences to try

+Disabled fsync

+Optimized rcutree-better application responsiveness.

+Some other tweaks.

-This one includes also the other tweaks i found before in other kernel (I lost the page but wasn't a galaxy ace but a galaxy device)

All credits to skynet for the new things in his kernel :) and me for gathering new and old stuff xD

batteryExtenderRC2.1.zip: 27/05/2012

- Reduced the number of governors cause one of them was causing reboots when the screen was off... not sure wich one... i left the most important... i'll add the others when i fix it.

- Found the page where i took the other changes and they are

+mmc: core: eMMC in Sleep mode before suspend

+some other tweaks (page writeback... lowmemorykiller)

+cpuidle: extend cpuidle and menu governor to handle dynamic states

And now the name of the kernel appears in system info ... lol

batteryExtenderRC2.2.zip: 28/05/2012

For stock Roms..

-Increase lower bound value cause it goes to fast from 10% to shutdown.

- Some secret stuff xD tell me if you feel it better or worse... I won't tell you so you dont get influenced by it.

batteryExtender1.0.zip: 02/06/2012

- More features from skynet`s kernel

+Changed voltage of wifi

+Dmcache

+cleancache

+And some more

-Restored governors except lulzactive that was causing the reboots.

-Changer battery driver so update time will go from 1 seconds to 60 seconds in suspend mode and some other stuff

And no more changes til linux kernel 3.4 with android merged lol

batteryExtender1.1.zip: 03/06/2012

-Hotfix:Lower bound was too low again... sorry i noticed when i commited to github

batteryExtender1.2.zip: 08/06/2012

-Added BLN support

-Added Cpu OC cappabilities

- Added wakelocks on battery driver to see if helps.... i read some pages and the issue with the inaccurate battery readings also happens in a lot of devices even if they implement the fuel gauge... so dont expect it to be fixed easyly.... maybe when a new official kernel comes.... by official i mean android merged to the main branch of linux

I find BLN pretty lame but many people ask for it... so if you dont like just dont use it like me.

I find OC pretty dumb too in an smartphone at least it is impress a geek girl... but i added anyway..

Enjoy...

batteryExtender1.3.zip: 16/06/2012

-Removed wake_locks cause didnt help and had conflicts for some users.

-Removed some stuff that might cause a little lag for some people.

-Increased lower bound

-Trying something for better readings

batteryExtender1.3.1.zip: 17/06/2012

-Sysfs it's kind of lazy... so i changed update value to 1 sec. Tell me if the sudden drops diminish or increase.

batteryExtender1.4.zip: 27/06/2012

- Core power manager class and cpuidle ported from Linux 3.2 (thanks to dragonnn for the tip)

- cgroup class from linux 3.4

- removed stuff testing in battery driver cause was messing with the proximity sensor but the update time is fast.... better distributed the ranges bigger in lower values to try avoid great falls

batteryExtender1.4.1.zip: 12/07/2012

- Just changed method that calculates percentages.... a mod of the method in the original driver... a hotfix will be more tweaked later. This is for the fast drops between 20% and 0%.

batteryExtender1.4.2.zip: 12/07/2012

-Another approach to the problem similar to 1.4.1... Two twins version one with OC and one without it. In this version you are the testers if something behaves funny just rollback ti 1.4.1

batteryExtender1.5.zip: 17/07/2012

-I decided to add the things that were missing from skynet original kernel.... So i added frontswap and zcache in the config and activated the stuff needed to make it work (now swap it's activated to be use in frontswap i dont recommend it using it for something else) and double the battery life i got with my normal use.

-Also added a new step in frequencies from draggonn firekernel and some modifications in tcp and classes that used cleancache (It might be the cause for the pump in the battery life but i checked the config and zcache is not activated im gonna ask him later).

Link in dropbox cause it wont let me upload one here

BatteryExtender1.5

batteryExtender1.5.1.zip: 04/08/2012

Fsync was activated for some reason so woops. I deactivated... also some other small changes. Battery driver is the same.

This time NONOC and OC.

batteryExtender1.6.zip: 02/12/2012

- Mutex backporte from linux kernel 3.5

- Crc32 optimization

- Zram/Zcache/Cleancache fully enabled (i had a feeling something was missing, I uploaded a script to activate it for sure)

enablezram

If you like it dont hit thanks... grab a potatoe and worship it :D

To do list:

-Kernel compiling/flashing tutorial

-Add governors.(done)

-Change voltage source code methods (done)

thx to an0nym0us_

thx to dragonnn

thx to tossan

thx to skynet28

According to blah blah blah here is the link to the github with the Source code