Disable Fast Dormancy to prevent com.android.phone wakeups

Search This thread

Snow_fox

Senior Member
Jun 6, 2010
748
74
OnePlus 7 Pro
Any potential cons to this? Will probably do it when I get home.. Kind of crappy to have data off and still have lots of wake ups. X.x

Sent from my LG-E970 using xda app-developers app
 

Yoreo

Member
Nov 22, 2012
47
14
It seems to be working. My phones battery hasn't dropped from 76% since applying this tweak. Data and wifi are enabled, and in the past if both were enabled, the battery would drain at roughly 1-2 percentage points per hour.

Thanks for posting this jonasl!
 

d08speed3

Senior Member
Jul 23, 2010
2,723
522
Did mines work I'm assuming?
 

Attachments

  • Untitled.jpg
    Untitled.jpg
    38.8 KB · Views: 567

jamesc760

Senior Member
May 12, 2010
495
79
Mine's rooted and unlocked, running nottach's .5 rom, applied the fast_dormancy mod. Still getting android system hogging the battery more than the screen time.

How to check this fixed the fast_dormancy problem?

What, if any, side effects from the fix?
 

2disbetter

Senior Member
Nov 22, 2012
56
10
For those of you doing this through your PC's (read windows machine) you'll need ADB installed first.

There is however aneasier method to do this.

With your phone being rooted, download the android terminal emulator.

Run it.

And then type in everything after the # adb line, excluding the #s.

This will allow you to do all of this through your phone without using a computer. However be careful, the first command will grant you super user rights, which allows you to do anything. You can seriously damage files and brick your phone. Only type what is shown in the OG post, and nothing else.

Enjoy better battery life!

2d
 
  • Like
Reactions: icepixie

vwauditech

Senior Member
Apr 22, 2007
333
16
Pennsylvania
For those of you doing this through your PC's (read windows machine) you'll need ADB installed first.

There is however aneasier method to do this.

With your phone being rooted, download the android terminal emulator.

Run it.

And then type in everything after the # adb line, excluding the #s.

This will allow you to do all of this through your phone without using a computer. However be careful, the first command will grant you super user rights, which allows you to do anything. You can seriously damage files and brick your phone. Only type what is shown in the OG post, and nothing else.

Enjoy better battery life!

2d

I did it the easy/lazy way too. I didn't want to get out of bed to grab my tablet. I'm hoping to see great results tomorrow. So far I've had no wakeups but I just did it moments ago.

Sent from my LG-E970 using xda premium
 

Murasakiii

Senior Member
Feb 23, 2011
753
211
Portland
Hopefully the image is coming through on the errors I'm getting while trying this. I'm sure I'm tired and doing something stupid, I just can't figure it out.

Screen%20shot.png

The image did not. D:
Maybe try getting some rest and try tomorrow? Something could pop up that you didn't notice.
There's also other methods that can be used, apparently, throughout this thread.

Edit: Btw, this a perfect fix. I let my phone die after applying this fix and charged it to 44%. Let my phone drop a couple percent and let it deep sleep. It's been at 42% for the past 20 minutes. This is for anyone having doubts about this fix. Good job, jonasl!
 
Last edited:

d08speed3

Senior Member
Jul 23, 2010
2,723
522
This tweak has made a HUGE difference so far on my GF phone! I will report more about it 2mrw. Here is another easy way to do this mod and to check it's right. All you need is ROOT no need for UNLOCKED BOOTLOADER

Download SQlite Editor http://xdroidx.googlecode.com/files/SQLite%20Editor-9.apk

Go to "Dialer Storage" > databases/telephony.db>dcm_settings and on the left hand side column where the numeric value says "310410" edit the right hand side of that value to "0" REBOOT and enjoy better battery life! This phone is slowly unleashing it's power day by day! Thanks everyone for the help!!!

*I wrote this out by memory. My gf has this phone so can't get to it at the moment. Hope it works.
 
Last edited:

d08speed3

Senior Member
Jul 23, 2010
2,723
522
So wipe out all those values and replace simply with a single zero?

I'm pretty sure don't have my ladies phone on hand to check. Have you tried the Command Prompt way yet? That is what I did. However, before copying all the lines one by one and pressing enter (don't include the tags in from ex. "$","#") Go to the market and download "SQLite Installer For Root" Install it and it will insall SQlite on your phone. From there run the commands. That's how I did mines
 

matt310

Senior Member
Jan 7, 2007
285
24
I tried to install what you recommended but when the installer tried to dl the sqlite the installation failed due to a protected directory not allowing read/write access.

This method (in my screenshot) seems to be a lot easier since I'd just be clearing a cell of data and replacing it with zero but I want to make sure that's the correct approach.
 

d08speed3

Senior Member
Jul 23, 2010
2,723
522
You should be able to edit that line. Hmmmm

---------- Post added at 08:52 AM ---------- Previous post was at 08:51 AM ----------

I tried to install what you recommended but when the installer tried to dl the sqlite the installation failed due to a protected directory not allowing read/write access.

This method (in my screenshot) seems to be a lot easier since I'd just be clearing a cell of data and replacing it with zero but I want to make sure that's the correct approach.

The app installer failed?
 

matt310

Senior Member
Jan 7, 2007
285
24
"SQLite Installer For Root" attempts to install SQLite to the phone, which for me failed, according to the installer script....something about read/write access not being obtained for a system folder.

The app in the screenshots is SQLite Editor and allows you to select each cell and make edits to the data within. If I change 'fastdormancy' to 0 (zero) it would wipe all the data out of that cell, which is fine, if that's what needs to be done. However all other cells in fastdormancy with 0 as the value also have 0 (zero) as a value in the imptu row, so would I change that to 0 (zero) as well for id 24 (310410) ?
 

lyall29

Senior Member
Apr 4, 2011
1,218
336
Arkadelphia, AR
Here is a screenshot of my phone after using adb from my laptop to run the script.


Sent from my LG-E970 using xda premium
 

Attachments

  • uploadfromtaptalk1354193774085.jpg
    uploadfromtaptalk1354193774085.jpg
    189 KB · Views: 539

Top Liked Posts

  • There are no posts matching your filters.
  • 41
    Like many others I was seeing many wakeups by com.android.phone, and as noted by others this is because of fast dormancy. Or rather, because of LG's implementation of it.

    I'm not gonna go into too much detail, but the offending implementation can be found in com/android/internal/telephony/LgeFDHandlerInterfaceImpl . This class is in /system/framework/com.lge.core.jar . After data activity on HSPA networks they use AlarmManager to periodically wake up and check the number of bytes transmitted over the network interface. This goes on until some time after it stops changing, and the connection is considered dormant.

    This periodic checking is what's waking the device, and for every new byte transferred the wakeup/polling period is extended and device doesn't sleep. The chattier apps are, the more awake time you'll get.

    Enough of the boring details, here's how I disabled it and got rid of the com.android.phone wakeups. Root required.

    Code:
    $ adb shell
    # su
    # sqlite3 /data/data/com.android.providers.telephony/databases/telephony.db
    update dcm_settings set fastdormancy="0" where numeric="310410";
    .quit
    # reboot

    This helped me, hope it does the same for you.

    Edit 2:
    I've written a quick and dirty app that tries to handle this setting without need for terminals or root. Try it and report issues here: http://xdaforums.com/showthread.php?t=2021248

    Edit 1:
    In essence you need to change a value in a sqlite database and there are many ways to do it. There are apps, use adb shell etc. Whatever works for you. If someone wants to write an app that makes this easier, be my guest :)

    Reversal is restoring the original value "1,0,0,1000,5000,60000,3000,5000,1,8" and reboot:
    Code:
    update dcm_settings set fastdormancy="1,0,0,1000,5000,60000,3000,5000,1,8" where numeric="310410";

    This database is not there after a wipe, so future ROM chefs wanting to include it by default should edit /etc/dcm_settings.xml as this is where the initial database contents come from. Just replace the original value with "0" for ATT.

    Code:
    <profile>
    	<siminfo
    		operator="ATT"
    		country="US"
    		mcc="310"
    		mnc="410"
    		extraid=""
    	/>
    	<settings
    		fastdormancy_param="1,0,0,1000,5000,60000,3000,5000,1,8"
    		ipmtu="1410"
    	/>
    </profile>
    2
    So I have the E973 and this app does not seem to do anything... toggled on or off, BBS is still showing this Alarm going off hundreds of times in a span of a few minutes.

    Going to try the command line method next.

    EDIT: Did it by command line and rebooted, and it still shows the Alarm going off all the time. Toggling this value on or off seems to do nothing.

    EDIT 2 : Ah ha - the problem, I bet, is your instructions (and the app) are keyed specifically to the ATT MNC, where as I am on the Bell MNC (302610). You should update your instructions to reflect that peoople should change whatever column matches their provider.... and maybe change your app so you can pick your own. I am going to try this now.

    EDIT 3: yep, this worked now!
    2
    My Android OS is still at 47% of my battery use, but I'm getting battery life like this...

    Just because it's more than everything else doesn't mean it's using THAT much battery. Granted, I haven't used my phone a ton today but this is good now matter how you look at it.

    Sent from my LG-E970 using xda app-developers app

    High percentage or not, I don't get that kind of battery life. And I do like to use my phone.
    1
    Are you both rooted and have unlocked bootloader? Not sure why you're getting errors. Did any of you retry this process via computer cmd with USB debugging?

    Sent from my LG-E970 using xda app-developers app
    1
    For those of you doing this through your PC's (read windows machine) you'll need ADB installed first.

    There is however aneasier method to do this.

    With your phone being rooted, download the android terminal emulator.

    Run it.

    And then type in everything after the # adb line, excluding the #s.

    This will allow you to do all of this through your phone without using a computer. However be careful, the first command will grant you super user rights, which allows you to do anything. You can seriously damage files and brick your phone. Only type what is shown in the OG post, and nothing else.

    Enjoy better battery life!

    2d