A WORKAROUND HAS BEEN DISCOVERED. If your phone has been draining extremely fast under normal use (and you text) then this fix will likely help you! The quick explanation is that whenever you send a text, the Dialer is putting a lock on the phone preventing it from sleeping. This drains your phone extremely fast and also causes it to charge very slowly. Replacing the internal messaging app with a 3rd party SMS app from the market will workaround the issue. Look at the bottom of this post for more details, or continue reading if you want to see how we discovered the problem.

PLEASE READ THE FAQ AT THE BOTTOM OF THIS PAGE IF YOU HAVE ANY QUESTIONS OR PROBLEMS.

Update: SarahKS (Sprint admin on the forums) just made a post on page 16 of this thread: "That said, I was told that they've identified the problem with the messaging client which prevents it from sleeping after its run. This is on the fix list for an upcoming MR.

That's all I know at this point, but as soon as I receive the details about tthe MR I will pass them on."

----------------------------------------------------------------

My friend and I both purchased Heros and we are both seeing pretty poor battery life. Using a couple of different things we believe we have figured out where the problem lies, but we are unsure how to fix it!

Here's what we know:

Menu < Settings < About Phone < Status < Awake Time

Both of ours have an awake time of 100%. According to other Android users, the lower this number is the better your battery life. So basically this is saying that even when the phone is off, it's not asleep. It is fully awake 100% of the time. Up time should not be the same as awake time.

Using an app called Spare Parts (Spare Parts) you can dig a little deeper.

Wake lock that ensures that the CPU is running. The screen might not be on.

*If you hold a partial wakelock, the CPU will continue to run, irrespective of any timers and even after the user presses the power button. In all other wakelocks, the CPU will run, but the user can still put the device to sleep using the power button.

So now the problem is how do we fix it?

UPDATE ON PROGRESS:

**SKIP THIS -- A BETTER WORKAROUND HAS BEEN DISCOVERED. NO NEED TO KILL THE PHONE APP.**

I have made some progress! I downloaded a program from the market that was simply called Task Manager. I previously had checked out TasKiller and TaskControl but neither saw the dialer. I opened Task Manager and clicked on "Phone" and got "This task is not exported. don't switch or stop it." Well I stopped it anyways. Instantly after hitting my power button I began to see a time difference between Up Time and Awake Time (5 minute time difference now).

I was also able to call my phone and text it! After doing so "Phone" showed back up in Task Manager however it is still sleeping properly. I'm not sure what else this is effecting yet or if resetting the phone causes it to mess up again.

UPDATE 2:

So I had to get some sleep last night. I will be doing lots of testing throughout the day. My phone slept about 7 hours through the night. I only had a 1% drop in battery life during the night! And I did receive a text this morning. The only thing I know for sure so far is that sending a text causes it to stop sleeping again. I will keep this thread updated as I run some tests today.

UPDATE 3:

So we have determined exactly when it happens. We tried all of the following:

Every single one allows the unit to go back to sleep without any issues. There are two things that prevent it from sleeping every time:

send a text

Turning the phone on with no activity

So sending a text is obvious. Every single time we sent a text, the phone would stop sleeping. Receiving a text is fine. What i mean by turning the phone on with no activity is if I turn the phone on and just let it boot up and disable the screen on it's own and never send or receive a text, it will stay awake even though the screen is off. The phone ends up turning the screen off before it actually boots 100%. Once I turn the phone back on and actually look at my home screen (after it's done booting) and then turn it off again, it will sleep properly.

I'll post more as we figure out more.

WORKAROUND FOUND:

Quick recap if you didn't read above: a bug has been found in the HTC sms app. For some reason when you SEND a text message it puts a lock on the dialer app. This lock prevents the phone from ever going to sleep, even when the screen is off. This is causing a HUGE drain on battery life because the CPU is still awake. The current workaround is to disable the internal sms app and use one of the free ones from the market instead. Thanks to mobilehavoc for testing out a new sms app and realizing that it didn't create the lock.

The current two recommendations are ChompSMS and HandCent. It is has been confirmed by multiple users (mobilehavoc, freshlyill, spork27, and myself) that the phone is sleeping properly if you don't use the internal messaging client (and of course assuming you don't have a different issue than described here!).

Between the two apps my personal recommendation is HandCent. It has a huge number of tweaks and can give you the same look and feel as the internal app.

FAQ:

Q) I killed the messages / dialer / phone using a task manager but my phone still isn't sleeping?

A) Killing the app is not necessary anymore. That was a temporary fix while I was working on figuring out exactly what caused the lock. All you need to do is use a 3rd party messaging app and stop using the internal app.

Q) I'm using a 3rd party app but now both the internal app and the 3rd party app are telling me I have a new message?

2) After the phone restores, boot it all the way up. Turn the phone all the way off and then boot it up again.

3) After the phone boots all the way, wake the phone up and put it to sleep a couple of times, then leave it asleep and wait 5 minutes. Check your awake/sleep time.

*For this to work then you should not have installed any apps after the restore, and do not send any texts. This rules out ALL issues of other apps you have installed preventing it from sleeping.

Q) How do I know if my phone is sleeping?

A) When your screen is actually turned off, there's no way for to know. However you can check your timer at: Settings < About Phone < Status < Awake Time. Pull it up and then put your phone to sleep. Wait 1 minute and then wake it up. If your awake time has counted by more than 5-10 seconds then your phone isn't sleeping. Also the % should be less than 100%. The lower the better. You can reset the timers by powering the phone off and on again.

Q) I don't even text, will this fix my phone?

A) Nope

Q) I have tried everything and my phone still won't sleep?

A) You are doing something wrong. Restore your phone and try again. It has been mentioned that possibly the pop-up notifications from handcent and/or advanced task killer free are causing the phone to not sleep.

Q) Why does it take so long to charge my phone?

A) Your phone should charge to full in about 3 hours when plugged in to AC (the wall). If you try charging through USB on a computer then you are actually in trickle charge and it will take much longer. HTC recommends that if you are below 10% that you don't even try and USB charge. This is to help preserve battery life for people that sync their phones a lot.

I have Task Manager and I have gotten into habit of using Task Manager to kill apps that are not needed (free up memory and conserve battery charge). Nothing beats WebOS's flicking up the cards IMO but I guess we can't have it all

I often kill "Phone" or "People". Those are the dialer and contact search interfaces. So if you kill it, it does not affect the ability to receive calls or text in anyway.

Sprint/HTC, please look into this very carefully and come up with a fix in the first maintenance release. I absolutely love the phone but I will not keep it if there's a software bug that constantly keeps the phone awake and drains my battery.

I have noticed that from the time I unplug my phone in the morning, take the 10 minute subway ride to work, and arrive at my desk (about 45 minutes in total), the battery has drained from 100% to about 90%. I have no idea why, considering the phone is usually just sitting in my pocket during that time. I really hope the solution is not that I have to go into Airport Mode every time I get on the subway. Any ideas?

I've definitely had problems in general with battery life. I unplug my phone at about 8:15am and when I get home at around 6:30pm or so, it's usually at 15-20%. Based on what others have said, maybe I should feel fortunate that I'm even lasting through the day, but I think it's ridiculous that if I wanted to go out for drinks after work or something, my phone would likely die before I got home. I have GPS/WiFi/Bluetooth turned off, auto-sync for Gmail only, and a 15-second time limit on the screen. I certainly hope there is a better solution than some of those that have been offered (turn off ALL syncing, turn off EVDO Rev.A, etc.) If you're going to do all that, why even have a smart phone?

I'll give the method described in this post a shot and let you know how it goes.

P.S. One more question... does anyone else think the phone takes forever to charge? I feel like I plug it in, check back in a half hour, and it has only gone up about 10%. If I drain the battery, fully charge, drain, charge, etc. a few times, might that fix this issue?

UPDATE: I'm not a user of the Facebook widget, but I did log into Facebook to get pictures/birthdays in my "People" list pretty much right after I got the phone. Just now I went into Settings-->Social Network and noticed that I was logged into Facebook. I'd be surprised if this wasn't part of the battery drain. Now if only someone can make an app that saves Facebook pictures/birthdays onto your SD card so you can still have the info without being logged into Facebook...

You're not alone drew879....same thing here. I leave my house with a 100% battery and by the time I get to work (phone in sleep the entire time) about 45 min later I'm down about 10%. AND...yes battery charging is painfully slow...it took me nearly 6 1/2 hours to charge to 100% yesterday (after I had ran it down to next to nothing)....so averaging about 16-17% gain per hour...OUCH. I love the phone too, and I'm trying to be patient in waiting for a fix to these issues--its incredibly bothersome to have such a cool phone but to have to constantly check to see if apps are shut off, if its actually sleeping, etc, etc. I'm going to sit tight and wait for the "fix"--at least until the Moment comes out (assuming it doesn't have the same trouble).

I did like you said Newbie and with the Hero idle from 5 AM to 10:30 AM the power dropped from 100% to 81percent, which is very good compared to before! Since I bought the phone it was dropping around 10-12%/hr regardless of whether I was using it or not. Now with the Phone app killed it dropped approx. 3.8%/hr. (most of which was sleep mode.)

MY phone is set up with IMAP checking 3 email accounts every 5 minutes, it now reads:

Since last boot:

Uptime 11:53

Awake Time 5:09

(40%)

I have however gotted a couple messages:

Alert: Connection Time Out

(not sure what this has to do with the Phone app, but I have been getting emails the whole time.)

I just sent myself two text messages with the Phone app off and neither of them arrived!

I experienced a similar thing however it can also happen if you receive a text after you turn the phone on.

Try this:

Shut the phone completely off, then turn it on and and prevent it from sleeping while it's booting up all the way. If it does fall asleep wake it up so you are looking at the home screen. Now put it to sleep. Don't send a text out first, just send a text to your phone. It will take a long time to show up. Exact same result as killing the "Phone" process, and you haven't done anything except turn the phone on.

Seems to be another (related) glitch, but isn't directly tried to you killing that process..

Also, just reset my phone to see what happend with the bad texting situation. And to see if the idling still works or not.

After a restart, new text worked but the two previous ones sent with phone app off never came.

Sorry Ronnie I'm doing like 3 things at once and totally screwed up that last post. Haha. I've edited it for many typos so check it out again. Those other texts will come through eventually. Like I said, I can duplicate that issue either by killing the phone or by rebooting the phone and making sure it's sleeping.

Also, is there any way to make sure the phone is sleeping aside from counting the Awake minutes?

Not that I know of unless you have the dev kit installed on a comp and are watching the debug monitor on a computer like I am. Because if it still accesses the phone then the phone is awake.

Basically the easiest thing you can do is pull up the Menu < Settings < About phone < Status screen and scroll to the bottom. Check the "Awake time" before you sleep the phone. When you turn it back on it will take you right to that screen. If the time has changed more than about 10 seconds then you know it's not sleeping.

There is no way of knowing when you actually have the screen off, but you will know as soon as you turn it back on.