Jump to content


Photo

1% driver for omnia here

* * * * * 2 votes

  • Please log in to reply
190 replies to this topic

#1
kabkab

kabkab

    Newbie

  • Members
  • Pip
  • 20 posts
  • Devices:i900
original driver taken from DXID1 firmware and patched to show battery capacity by 1%.
however, you never got exact value, you'll always got "somethin near".
also, battery controller return very chaotic values, so you always get "a bit up" and "a bit down" values during high load of device.

- All, what you doing - you doing at you own RISK!
- Make backup before installing

Samsung i900
Install:
1. Install developer certificates (attached)
2. Download zylonite_battdrvr.zip
3. Copy (with Resco File Explorer) attached zylonite_battery.dll to you \windows\ directory and overwrite original file
3. Reboot (Soft reset)

Remove:
1. Rename \windows\zylonite_battery.dll to anything else (for example to 1.dll)
2. Reboot (Soft reset). Original file will be recovered from you ROM
3. Delete renamed file (1.dll)

Samsung i910
Installation:
1. install developer certificates
2. verify, that size of \windows\zylonite_battery.dll is 43520 bytes (if you have another size - sorry! or continue at your own risk)
3. backup your copy of \windows\zylonite_battery.dll to somethin (for example zylonite_battery.dll.org)
4. download zylonite_battdrvr_i910.zip
5. copy patched driver (64 or 256 - details below)
6. reboot (Soft Reset)

Deinstallation:
1. Rename installed patched driver to something (like 1.dll)
2. Restore you backup (you should make backup at step 3 of installation!!!)
3. Soft reset
4. Delete renamed patched driver.

Difference between 64 and 256.
This is values used to calculate average voltage value (in original driver only 15 values used).
So, in case of 64 you got more accuracy but more chaotic jumping up and down during high load of device.
In case of 256 you got less accuracy, but less jumping, so % value is more stable.
Choose yourself!

Btw, anyway, after SoftReset you have some jumping while values (64 or 256) is collected.

Also, after charging (when you disconnect device) you have grow (jumping) % value for some time - because device driver try to "compensate" charging values. It's ok, in 2-3 min it's stop grow and start show real value.
Same happen when you connect you device and start charging.

Post you feedback! :-)

Attached File  Certs.cab   4.6KB   3463 downloads
Attached File  zylonite_battdrvr.zip   18.33KB   4109 downloads
Attached File  zylonite_battdrvr_i910.zip   40.02KB   1337 downloads

Edited by kabkab, 02 June 2009 - 09:00 AM.

  • 0

#2
maf107ezk0

maf107ezk0

    Addict

  • Members
  • PipPipPipPipPip
  • 613 posts
  • Devices:Samsung SGH-I900 Omnia
Wow... That`s something I was hoping to see <_< I`ll try it soon :) Thanks, bro B)

  • 0

#3
sector

sector

    Hardcore

  • Members
  • PipPipPipPipPipPip
  • 2,296 posts
  • Gender:Male
  • Devices:Samsung Omnia
thats a great share!

I will give it a try.

do we need any other special battery icon or the default from windows?

  • 0
If you like my work buy me a beer :) !
Posted Image
WM 6.5/6.1 roms, Themes, Taskbar etc... :D

#4
joža

joža

    Enthusiast

  • Members
  • PipPipPip
  • 197 posts
  • Gender:Male
  • Location:your mom
THANK YOU <_<

  • 0
Is there an officer, problem? :D

#5
lorin.bute

lorin.bute

    Regular

  • Members
  • PipPip
  • 82 posts
That sounds good but how do you make the omnia display percentage in stead of bars?

  • 0

#6
Persia

Persia

    Regular

  • Members
  • PipPip
  • 133 posts
  • Location:Iran
  • Devices:Samsung Omnia i900
screenshot plz <_<

  • 0
Samsung Omnia HD Blog: http://omnia-hd.blogspot.com/

#7
WolfpackInCO

WolfpackInCO

    Regular

  • Members
  • PipPip
  • 134 posts
just did this on my Omnia 910 and I can confirm it to work! Awesome. Yet another thing that should have been built into the original rom.

For those wondering how to see it in the new increments, if you have MS3 the battery widget will display it. There's also many taskbar add-ons on XDA that should work as well.

  • 0

#8
Adrynalyne

Adrynalyne

    Addict

  • Members
  • PipPipPipPipPip
  • 868 posts
Very nice.

Would you be willing to patch the i910 driver as well?

Attached Files


  • 0

#9
dwallersv

dwallersv

    Addict

  • Members
  • PipPipPipPipPip
  • 901 posts
  • Devices:Omnia

Very nice.

Would you be willing to patch the i910 driver as well?



Don't need to... the posted hack works on the 910 (verified personally).

Now... where was that registry entry for setting the low-batt threshold? I want to set mine to 25% now that it's possible.

Edited by dwallersv, 01 June 2009 - 03:56 PM.

  • 0

#10
blazingwolf

blazingwolf

    Hardcore

  • Members
  • PipPipPipPipPipPip
  • 3,030 posts
  • Devices:Samsung Fascinate, Archos 101

Don't need to... the posted hack works on the 910 (verified personally).

Now... where was that registry entry for setting the low-batt threshold? I want to set mine to 25% now that it's possible.


You verified how?

  • 0
I make ROMs because I like to. If you want to buy me a Pepsi though: Donate

Like tablets? Follow me at MyTabletLife.com

#11
dwallersv

dwallersv

    Addict

  • Members
  • PipPipPipPipPip
  • 901 posts
  • Devices:Omnia

You verified how?



Installed it. MS3 battery widget showed 82% when I rebooted, dropped to 81%, then 80%.

EDIT: Spoke too soon... Works after reboot, but as soon as the value drops to a mod(20) (the old increments) value, it stays there.

First reboot, as I said above, went 82->81->80, then stuck. Ran some power hungry stuff, didn't go down any more. Rebooted, came up at 67%. ticked down from there until it hit 60%, then stayed put again.

So it's sort of working. Something else in the OS pays attention when it hits a multiple of 20, and then messes with it.

Also, Gregoris taskbar battery icon doesn't handle non-mod(20) values, so the little percentage shown over the battery graphic is incomprehensible pixels of junk for all other values.

After a brief charge, battery is showing 70% right now in MS3 widget. S2U2 digital battery icon in the menubar also works, and shows the 1% increments (also showing 70% right now).

EDIT: Just plugged the phone in, and found some interesting (and exciting!) results: MS3 battery widget and S2U2 digital battery icon show the charge level of the battery while charging!!! Before installing this hack, everything always showed 100% while the phone was plugged in. Now I'm getting the actual charge state of the battery.

What's more, S2U2 shows this in green, with a fade-blinking of the value, indicating that it's charging. Obviously functionality that is a part of S2U2 that worked on other phones, and now does on the Omnia with this hacked driver. Grigoris taskbar icon shows 100% when plugged in, just like it always did. Not surprised, as he only modified some icons; what's displayed there is controlled by WM.

Also, doesn't seem to be getting stuck on 20% increments, at least while charging. Ticked up through the seventies to 80, and then right on past. Currently showing 91% charge and rising (slowly).

I'll have to experiment again with discharge to see if there is some sort of "catch" on the 20% increments for real, or if it was just a fluke.

EDIT: Another observation. The power button is glowing green now during charge when it's not fully charged. Used to glow red, then turn green on full charge. Hope this doesn't mean the LiIon charging circuit is being screwed up some way, and this is strictly a software issue. I'll know when I get the charge complete popup, or not.

EDIT: More... it won't stay asleep (suspend) wihle charging with this change. This is new behavior. Doesn't seem to have that problem while discharging, which is a relief and means this hack is still usable.

It will increase charge times, though, without being able to put the phone to sleep while it's juicing up.

Edited by dwallersv, 01 June 2009 - 05:02 PM.

  • 0

#12
WolfpackInCO

WolfpackInCO

    Regular

  • Members
  • PipPip
  • 134 posts

Installed it. MS3 battery widget showed 82% when I rebooted, dropped to 81%, then 80%.


Actually I'm now not sure it works so well on my i910. It's jumping all over the board when I plug then un-plug. After partial charging then unplugging, it continues to climb up. There's a definite delay in response time. The display under Settings / Power remains steady, however.

Edit - mine also won't allow the screen to shut off either, as reported below.

Edited by WolfpackInCO, 01 June 2009 - 04:44 PM.

  • 0

#13
jmart518

jmart518

    Regular

  • Members
  • PipPip
  • 52 posts
  • Devices:HTC Imagio
Installed and the battery part works nice, however it will not allow the screen to shut off. It can dim, but once it shuts off, it is immediatly turned back on (about 2 sec). Any ideas on how to fix this?

Update:

Only when plugged in and I manually turn off the screen it stays off! When it is on battery power, keeps waking up even with a manual screen shut off.

Edited by jmart518, 01 June 2009 - 05:03 PM.

  • 0
ROM: Teya 1.7.0 [29017]
Sense: 2.5.2021 CHT 2.0.0

Posted Image


#14
dwallersv

dwallersv

    Addict

  • Members
  • PipPipPipPipPip
  • 901 posts
  • Devices:Omnia

Installed and the battery part works nice, however it will not allow the screen to shut off. It can dim, but once it shuts off, it is immediatly turned back on (about 2 sec). Any ideas on how to fix this?

Update:

Only when plugged in and I manually turn off the screen it stays off! When it is on battery power, keeps waking up even with a manual screen shut off.



See post above -- I'm having the exact opposite situation, which I can live with.

@WolfpackInCO: That jumping around of the value is actually a virtue, not a bug. It's simply showing you the actual battery voltage, which will swing around a bit when transitioning from having a charge voltage applied vs. a load. Nothing to worry about there -- it stabilizes after a minute or so. There's obviously some sort of moving-window averaging going on in the driver.

  • 0

#15
jmart518

jmart518

    Regular

  • Members
  • PipPip
  • 52 posts
  • Devices:HTC Imagio
Yeah, the jumping around and delay time is ok with me. I am just worried about battery life with the constant waking up.

  • 0
ROM: Teya 1.7.0 [29017]
Sense: 2.5.2021 CHT 2.0.0

Posted Image


#16
kabkab

kabkab

    Newbie

  • Members
  • Pip
  • 20 posts
  • Devices:i900
glad to hear, that it's working (at least on some devices! :) ).

In general: samsung battery driver got some values from battery and perform some internal calculations.
Based on this calculations driver perform some actions (like turn off backlight when battery charge less than 10%).

All this things did not touched!!! All remain the same!!!

I do only one thing - at exit of the function guys from samsung insert his 10% function, like
if (value>criteria1) - return 100%
if (value>criteria2) - return 90%
and so on...

This function is used only by OS to return this value (percentage) to programs, which request them (like indicator in top bar, widget in SPB MS3 and so on).

I patch this function and actially split criteria's to smaller step and return 1% instead of 10%.

I checked twice on my own i900 (original english firmware DXID1) - it's working pretty well and i have no bugs, like dimming screen, or green button on top of device or freeze on some value (except than it stands at 100% after full charge a lot of time).

So, i see only one bug - fellas, that have some problems may be have not DXID1 firmware and not same driver. May be other functions of DXID1 driver did not work like functions in your driver. So you have some bugs.

If you need - u can check and told you size of mine "unpatched" driver - so you can "match" it by size.

Sorry, but i cannot check and patch drivers in every firmware which you are using.

Same for i910 - i cannot check (and will not do "BLIND" patch without testing), because i did not have such device. So you are use this driver at you own risk (as anyone else, btw). <_<

Edited by kabkab, 01 June 2009 - 05:34 PM.

  • 0

#17
ob3l1x

ob3l1x

    Regular

  • Members
  • PipPip
  • 65 posts
  • Devices:Samsung i900 Omnia
great thing thanks :)
very usefull <_<

  • 0

#18
kabkab

kabkab

    Newbie

  • Members
  • Pip
  • 20 posts
  • Devices:i900

Would you be willing to patch the i910 driver as well?

i don't wanna make "blind" patch.
btw, as i see, you driver have 5% step. it is not enough for you? :-)

ps. oops, something strage, some 20% step found... complex driver and it's really differ from i900 driver!!

  • 0

#19
dwallersv

dwallersv

    Addict

  • Members
  • PipPipPipPipPip
  • 901 posts
  • Devices:Omnia
BTW folks, note that the battery is not 100% charged when percentage reported by this new driver is 100%!!

This has to do with the charging algorithm for Li batteries, and the manner in which charge level is determined.

Charge level is a simple formula that is based solely on the battery voltage level. When, under charge, the voltage reads 4.2V, that is considered 100%. Capacity under load generally assumes around 3.8-4.0V as 100%, but again this is an approximation that is worse the greater the load.

Accurate charge level under charge and under load are more complex factors of both voltage and current measurements. During charge, the charge circuit first applies whatevever voltage necessary to provide a constant current to the battery until the voltage reaches 4.2V. Then the charger switches over to a constant voltage process, while the battery continues to take and store power as the current gradually falls off. When the current falls below C/15*, thereabouts, the battery is considered fully charged.

Li batteries must not be charged higher than 4.235/cell, or they can ignite and explode. This is why 4.2V is the standard operating value for full charge. When an Li cell reaches 4.2V it is about 80% of full capacity, even though a simple voltage measure will consider that "100%". If the charging process is stopped at this point and a moderate load applied (translation: unplug the phone, now running on battery), the charge level will drop immediately and then stabilize in the neighborhood of 100%.

If the charge is allowed to complete, pumping in more electrons at 4.2V until the current drops off to the cutoff value, then power is removed, it will stay at 100% or close to it.

This depends on the load current. Higher loads will result in lower voltage across the battery due to internal resistance of the battery, even though no appreciable charge has been extracted. This is why current must be accounted for in accurately calculating remaining capacity.

So, for either charging, or discharging, and accurate measure of battery charge requires accounting for both voltage and current for the cell, and the formula for each state (charge, discharge) are different. Most battery state measurements are based on voltage only, so the figures have substantial error-bars. It's really nutty, IMO, since Li charging circuits are all "smart" these days, monitoring voltage and current to manage charging safely. There is no good reason these measurements couldn't be made easily available, or better yet, add the minor circuitry necessary to have the charge monitor spit out a charge level on either charge or discharge that would be accurate.

  • 0

#20
maldonj1

maldonj1

    Enthusiast

  • Members
  • PipPipPip
  • 190 posts
  • Gender:Male
  • Location:Tampa, FL
  • Devices:I910, I920,DX,Bionic,
would be nice to have this recalculate charge and it tell you actual TIME left like on a laptop.

  • 0
Have some stuff to sell? visit http://myegaragesale.com and sell it for super cheap




0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users