Saturday, October 23, 2010

How to Improve Battery Life for the Samsung Epic 4G


I recently purchased a new Android phone, the Samsung Epic 4G from Sprint, and I love almost everything about it. However, when I first started using the phone battery life was absolutely horrendous. Even with light usage I was unable to make it through a full day on a single charge and I often had to plug the phone in and charge it several times per day. Now, though, I've done some research and experimentation and am happy to report that not only does my phone make it through the whole day on a single charge, but I also have upwards of 40% battery remaining when I go to bed at night. Now I can let the kids play Angry Birds without fear of my phone dying.
This post will explain how you too can achieve good battery life for your Samsung Epic or other Android phone, and do so without sacrificing the functionality you've come to depend on. (Note: while much of the advice in this blog post is specific to the Samsung Epic, there are some general strategies that apply to any Android phone, so you may find something of interest even if you do not own an Epic.)

A Note About Task Killers and Other Ineffective Practices

If you read a typical forum post from a poor user suffering from battery life problems, the post will usually start out with frustrated pleadings like
I've tried everything! I turn off Wi-Fi, live wallpaper, and use Advanced Task Killer to kill all running apps and services, but nothing works! Help!
Usually the helpful people trying to answer such pleadings offer further advice about turning off GPS and Bluetooth, or reducing screen brightness and timeout. While these techniques can provide incremental improvements to battery life, they do so at the cost of functionality of your phone. I do personally keep Bluetooth disabled when I'm not using it, but always leave wifi and GPS enabled (GPS does not consume any power just by being enabled, only when an app is actively using it). And of course, 4G data connections are known to be a serious battery hog so you probably don't want to leave that on all the time.
Automatic task killers, though, are most likely doing more harm than good and I do not recommend using them. Android manages tasks and processes quite well on its own and automatic task killers interfere with Android's normal mode of operation. Any time a process is killed, it means that it will consume more power next time it needs to be started. Furthermore, many of the tasks that are killed by these auto task killers are important components of your phone's functionality and having them killed in the background is only crippling your phone. I do keep a task killer app on my phone, but only use it when I suspect that an application is misbehaving, and can then individually kill the suspect app. Never let an automatic task killer indiscriminately kill apps or services in the background; doing so is just shooting yourself in the foot.
With that little lecture out of the way, let's look at some practices that are effective at enhancing battery life.

Disable the DRM Service

The Samsung Epic (and presumably other Samsung Galaxy S class phones) come with the Media Hub application for viewing movies and television programs. While this may some day address a gap in the Android platform, as it stands today the Media Hub application offers only a very limited set of programs for rent or purchase. Worse yet, though, the DRM service that comes with the application is a severe power hog. The biggest battery boosting technique you can perform for the Epic is to disable this service altogether.
To disable the DRM service, start from your Android home screen and then go to:
Menu → Settings → Applications → Running services
Once there you should see an entry for the Samsung DRM service. Click on this entry to disable the service, and voilĂ , you instantly have better battery life.
(Note: while you are there, take a look around and see if there are other services running that you do not need. I disabled a couple of other services on my phone, namely the Aloqa widget update service, and the SportsTap widget service since I don't use either of these widgets.)
You may come to find that this service spontaneously springs back to life. You could occasionally repeat this process and stop the service whenever you notice it is running, but why would you want to do that when your phone can do it for you? To permanently kill this service you can use a startup auditing application to make sure that it doesn't reincarnate. I installed the Startup Auditor app, which is a paid application but there are free apps that offer similar functionality. With Startup Auditor I was able make sure that the DRM service did not start automatically at boot time, and furthermore would never spontaneously start itself at all.
Startup Auditor Free
A boot monitor and startup monitor tool which displays a list of applications you may disable. Free version supported by ads.
Startup Auditor
A boot monitor and startup monitor tool which displays a list of applications you may disable. Full version eliminates ads and can disable unlimited.
Note that the Media Hub application probably will not function if you've disabled the DRM service. I do not personally use this app so this is no loss for me.

The Airplane Mode Toggle Trick

One of the biggest drains on a mobile phone battery is when there is a weak signal and the cellular radio frequently scans for a signal. Not much can be done about this when reception truly is weak or there is no signal whatsoever. However, there is an insidious bug in the current Epic firmware that "tricks" the phone into thinking it does not have a signal, and causing the power drain while the phone is scanning for a good signal&emdash;even though it already has one!
You can tell if you are affected by this bug by checking your battery usage:
(Menu) → Settings → About phone → Battery use → Cell standby
On this screen you will see a line that reads "Time without a signal". If you've been in a good coverage area but the percentage on this line is high (say 50% or so) then you are suffering from the bug described previously.
Now, how to fix it? Until Samsung or Sprint provides us with an update, there is a simple trick that works around this bug. All you have to do is put your phone in airplane mode. Hold down the power button on your phone until the pop-up menu appears and then select Airplane mode. Wait approximately 15 seconds, then repeat the process to take your phone back out of airplane mode. For reasons that are not clear to anyone, this airplane mode toggle will prevent the false weak signal bug and the battery drain that goes along with it.
One important thing to note is that this workaround does not survive a power cycle. You will need to repeat this process every time you restart your phone.

Prevent Wi-Fi Sleep

An oft-cited bit of advice is to disable wi-fi to preserve battery power. While this may be true for who are not frequently connected to wi-fi or who spend most of their time on the road, it is actually counter productive if you are usually within range of a wi-fi access point. This is because an active 3G connection consumes more power than an active wi-fi connection. To make matters worse, though, Android's default settings for wi-fi sleep policy are suboptimal. The default setting is to disconnect from wi-fi whenever the screen timeout has been reached, and this in turn causes a 3G data connection to activate. When you turn your phone screen back on your phone will then reconnect to wi-fi. This cycle of wi-fi off → 3G on → 3G off → wi-fi on consumes significant amounts of power. It would be better to leave the wi-fi connection active regardless of the state of the screen. You can do this by changing the wi-fi sleep policy:
(Menu) → Settings → Wireless & networks → Wi-Fi settings → (Menu) → Advanced → Wi-Fi sleep policy
Change the setting to Never. I work from home and am therefore usually in range of my wireless router. I speak from experience when I say that this change can make a significant difference in battery life.
What about the road warriors among you, though? If you are typically out and about and not always connected to a wi-fi access point, changing the global Wi-Fi sleep policy will probably prove detrimental, as your phone will constantly keep scanning for wi-fi connections even when it is otherwise sleeping. Fear not, there is a solution for you too, at least if you don't mind paying for the overall excellent Locale app and installing a couple of very useful plugins. Here is what you will need:
Locale
A powerful app allowing you to create situations and apply settings and other actions when the situation is active
KeepWiFi Locale
A Locale plugin that keeps wi-fi enabled when active
Locale Wifi Connection Plugin
A Locale Plug-in that allows you to set a condition based on what wifi network you're connected to, instead of within range of
With these tools in hand, here is how you can construct a Locale situation that keeps wi-fi enabled when you are connected to a preferred network, but then reverts to the default Android sleep policy when not connected to this network. (First, if you have already followed the above steps to set your sleep policy to Never, you should now set it back to the default value of When screen turns off.)
  1. Open Locale.
  2. Create a Defaults situation if you do not already have one.
  3. Go into the Defaults situation.
  4. Push Add Setting.
  5. Push Keep WiFi.
  6. Leave the value for KeepWiFi Service as Off, then use the back button on your phone to go back.
  7. Save the Defaults situation (Menu → Save).
  8. Push Add Situation.
  9. Enter a name for the situation (I named mine after my home wi-fi network).
  10. Push Add Condition.
  11. Choose Wifi Connection.
  12. Enter the SSID of your wi-fi network, the use the back button on your phone to go back.
  13. Push Add Setting.
  14. Choose Keep WiFi.
  15. This time change the KeepWiFi Service value to On, then use the back button on your phone to go back.
  16. Finally, save the new situation (Menu → Save).
Now whenever you are connected to your preferred wi-fi network, the wi-fi connection will be kept active, preserving power by not switching to 3G data connection. When you are not connected to this network the default wi-fi sleep policy will be used, preserving power by not constantly scanning for wi-fi networks even when the phone screen is off. Locale allows you to have the best of both worlds.

Other Miscellaneous Tips

The following are more well-known tips for extending battery life and since most people are probably already aware of them I don't feel I need to expound upon them very much, but I include them here for reference.
  • Disable 4G data connections whenever not actually in use.
  • Uninstall any apps that you do not use and do not plan to use.
  • Limit the frequency of background sync for things like Facebook, Twitter, email, etc.

41 comments:

  1. If I manually toggle WiFi off and leave 3G on when I am on the road, will my phone still be searching for available networks? I have kept my phone on "NEVER" since I got it and rarely use WiFi, but I keep it turned off. I can't imagine having to go ahead and use that locale app as long as I am turning WiFi OFF when I'm not using it????

    "If you are typically out and about and not always connected to a wi-fi access point, changing the global Wi-Fi sleep policy will probably prove detrimental, as your phone will constantly keep scanning for wi-fi connections even when it is otherwise sleeping"

    ReplyDelete
  2. This comment has been removed by the author.

    ReplyDelete
  3. Russell: if you have wi-fi turned off it will not be scanning for available networks. This is a very reasonable way to manage battery life when you are travelling, but it requires you to manually intervene whenever you are changing environments. The advantage of using Locale is that it does this for you automatically. Whether or not that is worth the cost to you is for you to decide.

    ReplyDelete
  4. This is a great page. Wish there were more. I just bought an Epic-4g yesterday and am searching for a Blog entitled "Epic-4g For Dummies". Is there such a thing? All the forums use too many acronyms and assume too much about the reader's sophisitication. For instance, I would like to know if the Battery on the Epic should be allowed to run down below a certain percentage before recharging. I have bad luck with camera batteries because I don't discharge/charge them correctly. It's too bad Sprint doesn't provide simple tips like this on their website or in the manual.

    ReplyDelete
  5. Hi I am contemplating switching to Sprint and buying the Samsung Epic. After exhausting myself in researching the battery life issue and fixes, I'm not so sure I even want the phone. Any alternative suggestions, I was thinking of waiting until the next Blackberry comes out/flip type. Thanks.

    ReplyDelete
  6. Bert: I am not aware of any single source of information that could serve as an "Epic-4G For Dummies". There is much information available but it is scattered across many different blog and forum posts. I'm afraid I do not know the answer to your question about optimal battery discharge level, although many people generally recommend occasionally letting battery go to zero for any electronic device, as it can help with battery monitor calibration.

    Lisann: I am very happy with the Epic, but I do understand that it is not for everyone. Nor is any Android phone for that matter. Business users often prefer Blackberry, but I myself prefer Android's open ecosystem.

    ReplyDelete
  7. Good read. Ive done almost everything you've said. I only use WIFI at home so I manually switch it on when I get home (Only if Im going to use my phone). I want to delete NASCAR, SPRINT FOOTBALL and SPRINT ZONE. If I delete it, will I harm my phone? Or will it not work properly anymore? I heard this from other forums. Thanks for the advice. I look forward for your future blogs.

    ReplyDelete
  8. Hi Mario. Those apps can only be deleted if you have rooted your phone, but if you have done so there is no harm in removing them.

    ReplyDelete
  9. This is an extremely helpful post. I really like my Epic but do wish the battery life were bettery...tried a few of these and will hope for the best!

    ReplyDelete
  10. Very helpful post thanks!
    However I don't want to pay 9.99 for locale when I don't need all the functionality it provides.
    For those of us that only need to have WiFi on at home I found this on the market http://www.appbrain.com/app/wifi@home/com.aebeinroth.wifihome
    It only supports one location though.

    ReplyDelete
  11. This was extremely helpful!!! I followed your instructions and set my Wi-Fi to Never sleep. I am mostly home using my Wi-Fi, but when i leave the house i depend on the 3G. I wanted to know, instead of getting the app you suggested, can't I just toggle my Wi-Fi off from the pull down menu to switch over to 3g when leaving the house? Sorry if this is a dumb question, I just dont understand why you cant just do that. But I appreciated this information and time you took to inform and help others! Thanks a bunch!

    ReplyDelete
  12. If you manually turn off wi-fi whenever you leave home, then there is no need for the Locale approach that I outlined above. I prefer to use Locale because I want my phone to work for me, and not me for it, and I don't want to have to try to remember to turn off wi-fi whenever I change environments. However, if you've integrated this into your habits and you are happy with it, then you will be saving battery this way.

    ReplyDelete
  13. Jason, I have to agree with the other comments. Thanks for taking the time to write some helpful hints. I have had the Epic for about 20 days...and the battery life has been one of the biggest downfalls. However, I made some of the recommended changes and this has greatly improved.
    I encourage you to share additional tips and ideas as I have found them beneficial. Thanks again!

    ReplyDelete
  14. One issue that may not be covered by your article is cell coverage. I just traveled with my Epic and the battery would drain in 4 hours with virtually no use. Back home it seems to run all day. Only difference I can see is the cell coverage. I wish I knew what to do about that since my father has the Epic in a poor coverage zone and it's an issue as it stands.

    ReplyDelete
  15. Matt, you are correct that weak or no cell coverage is a severe battery drain on the phone and I mentioned this briefly in the blog post above. In fact, I ran into this problem just the other night. I had my phone unplugged all day while I was at home and connected to wi-fi, during which time my battery drained to 81% in about 10-12 hours. I then went to a meeting in a location with no wi-fi and very weak signal. I was there only for two hours and my battery drained down to 40%! In summary:

    Connected to wi-fi: roughly 2% battery drain per hour.
    No wi-fi, weak signal: roughly 20% battery drain per hour!

    Unfortunately, I don't know of any way to fix this except to put the phone into airplane mode, which rather defeats the purpose.

    Does anyone else know anything about this?

    ReplyDelete
  16. The low/no coverage battery drain issue is a problem for most phones, it seems. I know my last phone, a HTC Touch, would go from 100% to 0% in less than an hour without a constant signal.

    I'm sure there's some polling interval settings deep down in the firmware of the radio itself that determines how frequently it searches for signal, but that's way above my pay grade.

    ReplyDelete
  17. Jason I must agree with everyone. This has been most help and I can't wait to read from you!

    KINGSGEM

    ReplyDelete
  18. Thank you for the kind word Anonymous KINGSGEM :-)

    I'm planning a follow-up post that will clarify some of the battery issues and also provide some more general Android battery tips that are not so exclusive to the Epic.

    ReplyDelete
  19. If you don't want to pay for locale, check out Timeriffic. It lets you set schedules for lots of settings. I personally use it to mute sound, turn off wifi and go to vibrate M-F for work and then reverse those changes after work hours.

    http://www.androlib.com/android.application.com-alfray-timeriffic-jqq.aspx

    ReplyDelete
  20. oh wow, thanks man. Now if only Sprint would release Froyo!

    ReplyDelete
  21. Jason, Thanks for the awesome input. I would have never found that application process screen!

    ReplyDelete
  22. Jason, great stuff, I bought the startup auditor and saw a difference immediately, I also got rid of my task killer as well.
    My question is that even though I have disabled the drm service, at startup and during operations, when I go to Running Services I still find that it has restarted itself. I do not use that app at all, so I don't know what is triggering it, am I going to need to root my phone to completely remove that app and thus the drain its putting on my battery?
    Most all the other apps that I have disabled via the startup auditor are behaving and staying off
    Thanks for your help

    ReplyDelete
  23. Jason, regarding your question about not having to put it into airplane mode: If you look in your network settings by dialing that crazy *#*#something#*#* number, you will see that your phone defaults to WCDMA signal search, which it will never find because it does not exist in the US. If you change this to CDMA Auto (PRL) with the "Network" app by phillip mangelow, it will dramatically improve the TWS (time without signal), thus improving battery life. I work in a hospital with a Sprint tower right in it, and i was getting nearly 90% drain in a couple hours with full bars because of the WCDMA default. If you end up getting the network shortcut, make sure you do it each restart. Also, you will have to select CDMA Auto, wait 10s or so until it reverts to Unknown, then hit CDMA Auto again. After this, do not use the back button to exit, but instead hit the home key to ensure it stays set that way.

    ReplyDelete
  24. Thank you very much, this article was extremely helpful. I've been so frustrated with the battery life only because I loved this phone so much. But I noticed great improvement in my battery life today, thanks a lot!

    ReplyDelete
  25. Since the Froyo update was installed by many Epic 4g owners, do you have any amendments to this nice post that could help those folks? I noticed that some of the settings menus have changed and perhaps name/location of backgrounds services have as well. Thanks.

    ReplyDelete
  26. Great stuff here. I use my 4G to manage my todos and find the display uses most of my battery. I've read that a black screen consumes no power, because the Super AMOLED physically turns off each pixel when the color #000000 is shown. So I've set my desktop wallpaper to black screen since some people have experienced battery life gains by doing this.

    ReplyDelete
  27. Thanks for all the great tips--I just got my Epic on Saturday and the battery life was my only compliant. These helped a bunch.

    ReplyDelete
  28. Thanks man. My Epic was lasting about four hours, all of these tips have it keeping stride for stride with the iPhone battery life! Excellent work, and thanks again!

    ReplyDelete
  29. Hi Jason, I believe I disabled the DRM Media hub however, do I still have to stop service for the OMADRMCONFIGSERVICE? It says that it may have undesirable consequences on the application DRM content. Do I stop this service too? Thanks

    ReplyDelete
  30. Hi JASON. WHAT LAUNCHER DO YOU USE AND THINK IS THE BEST? AND WHAT BROWSER DO YOU USE AND THINK IS THE BEST? THANKS FOR ALL THE ADVICE ON BATTERY HELP.

    ReplyDelete
  31. Wow! Thanks Jason, have a much better longer battery life! And for awhile there it seemed to had taken a long time to charge, but that is not happening anymore also! You Rock!!

    ReplyDelete
  32. Like an idiot, What I did was buy another battery. Epic has been the bane of my life. I've had cell phones for 23 years, and this Epic is the worst.

    ReplyDelete
  33. Jason, Thank you for this very helpful info. I brought my phone back to sprint on day 3 I was so frustrated and they couldn't offer the help you did. I see you haven't posted in a while. Any updated article coming soon? Thanks again.

    Fizxtchr

    ReplyDelete
  34. This is an extremely helpful post. I really like my Epic but do wish the battery life were bettery...tried a few of these and will hope for the best!

    ReplyDelete
  35. What I can't understand is why my battery was fine and in the last two weeks takes forever to charge and, even if I'm not using it, only lasts a couple of hours. I thought I needed a new battery so I got a brand new one, but it hasn't changed the problem :(

    ReplyDelete
  36. Thank you for your advice. I got the application Locale and I am beginning to follow the other advice.

    ReplyDelete
  37. Great work! This is the kind of info that are supposed to be shared
    around the net. Shame on the seek engines for no longer positioning
    this put up higher! Come on over and talk over with my website .
    Thanks =)
    http://www.iwalkusa.com/

    ReplyDelete
  38. This is great! I find that my phone battery is always dying about half-way through the day. I think these tips will work out really well. It sounds like for phones like this, you can get newer and better batteries and have someone install them. Is that true? If so, that sounds like a really good way to make your battery last longer. http://www.rexxbattery.com/small-batteries.html

    ReplyDelete
  39. The blog posted was very informative and useful thanks for sharing. Our Oracle on-line coaching supplier gained the high commonplace name through worldwide for its teaching,further information visit our site.
    Oracle fusion financials training

    ReplyDelete