NlpWakeLock and NlpCollectorWakeLock Discussion

Search This thread

msgfromside3

Senior Member
Nov 23, 2010
744
131
Yep... that wakelock would rear it's head quite often. It's Google Now trying to get some info when it can't.. is see it if I blocked the nlp wakelocks and it would be ruthless.

So I blocked it too. :)

Yup. It is a known issue with blocking these two wakelocks in this subject. Weird thing is that I haven't noticed this until now but it seems that wakelock triggers for a short period time with the same setting that I have been using - I hadn't seen it at all for three days and it is now up for 1+ hr out of 4+ hrs since unplugged. I am going to check around a bit longer.

Sent from my Nexus 5 using Tapatalk
 

ramiwi

Senior Member
Apr 13, 2011
107
13
Would you mind sharing your Tasker profile for this please?

Sent from my Nexus 7

Thanks for the tip. I will look into that. I have become less fan of Juice Defender ever since I switched to my N5. I then saw (as you did) the number of wakelocks it causes and the battery drain. Funny when you think it is an app that aims at reducing your battery drain. Might try Wakelock Terminator as well.

By the way, mind sharing your Llama, AI and Tasker settings (in a PM)?

Step by step profile setup: http://www.reddit.com/r/Android/comments/1u8alp/guide_to_fixing_google_play_services_battery_drain/

Tasker Dpad fix for the consent popup in 4.4: Add 2 lines after the Secure Settings Location Services Enable. Input > DPad > Right and then Input > DPad > Press.
 

zxyz

Senior Member
Feb 17, 2013
149
90
For me, I read that disabling Location Reporting stops this. I tried it and although I was on wifi, my drain went from about 1.5% /hr to a mere 0.4 on Franco Kernel. I haven't really read a lot of this thread but I'm just wondering what disabling it does to Google now/Maps?

EDIT: Sorry, it seems to be addressed a few posts up. If I open it manually it will set off location reporting. I see. I'd still like to know exactly how it changes things though.
 
Last edited:

Gormsen

Senior Member
Apr 30, 2011
730
340
Aarhus
I finally got this sucker for good. My N5 is sleeping like a baby now. Will post a guide tomorrow on what I did :)

Sent from my Nexus 5 using Tapatalk
 
  • Like
Reactions: Sn00ky

msgfromside3

Senior Member
Nov 23, 2010
744
131
I finally got this sucker for good. My N5 is sleeping like a baby now. Will post a guide tomorrow on what I did :)

Sent from my Nexus 5 using Tapatalk

Great. Just wondering if your method increased EntriesRefresh_wakelock count. Setting to GPS worked for me for several days but since last night, I was getting massive EntriesRefresh_wakelock. This only happened when I was blocking these two wakelocks before. I changed the location with the high accuracy today and it went away. This brought these two wakelocks back, but they were less costly than EntriesRefresh_wakelock. :silly:
 

Gormsen

Senior Member
Apr 30, 2011
730
340
Aarhus
Great. Just wondering if your method increased EntriesRefresh_wakelock count. Setting to GPS worked for me for several days but since last night, I was getting massive EntriesRefresh_wakelock. This only happened when I was blocking these two wakelocks before. I changed the location with the high accuracy today and it went away. This brought these two wakelocks back, but they were less costly than EntriesRefresh_wakelock. :silly:

It did, but got this one under control too, same goes for the AudioIn wakelock.





Yeah I know, especially since these wakelocks are just a PITA ;) but I've gone to bed and don't really feel like doing it now ;)

Sent from my Nexus 5 using Tapatalk
 

LeoRex

Senior Member
Nov 30, 2012
514
256
Leominster MA
The best way I can describe it is that part of Apollo 13 where they are trying to figure out the right start-up sequence to not blow the main bus.

Find the right wakelocks to suppress, and you are golden. I think I'm on it too, but I've been ROM jumping lately, so long term stats are tough to come by.
 
  • Like
Reactions: Enddo

shan25

Member
Jan 2, 2013
43
6
I've noticed that I see the nlp wake lock more when the Google Search app is listed as using a significant amount of power. Just a thought, maybe they're related?
 
  • Like
Reactions: floepie

Gormsen

Senior Member
Apr 30, 2011
730
340
Aarhus
Okay boys and girls, here's the solution to these freaking wakelocks that keep raping our N5s battery. I've tried different approaches but nothing seemed to do the trick. I got as frustrated as you guys when turning of location reporting and history didn't help anything.

So what I did was:
1. Download Xposed Framework.
2. Download Wakelock Terminator (https://play.google.com/store/apps/details?id=in.andro.wlt).
3. Install both, reboot the required times and activate the module.
4. Open Wakelock Terminator and scroll down to Google Play Services, hit it and select "Prevent Wake Lock"
5. Hit "Filter Wake Lock" and enter the lines in this image (sorry for the large size):
FkFtS1V.jpg

Hit "OK"

Think you're done? So did I, but guess again, this does not prevent the wakelock.. yet.
6. Go into Location in settings in Android.
7. Disable Location Reporting and Location History.

There this takes care of the NlpWakeLock and other associated wakelocks.

As @msgfromside3 said another wakelock is triggered by this "EntriesRefresh_wakelock". The good news is that the same trick can be used to suppress this wakelock. The only hickup is that in order to supress more than one app in Wakelock Terminator you have to pay for it (around $4). On the other hand: Why not support a developer that has greatly enhanced your battery (or made it like Google should have done) ;)

1. When you have made the in-app purchase go to Google Search in Wakelock Terminator.
2. Same as above only this time type in the following:
EntriesRefresh_wakelock
AudioIn
NlpWakeLock

Yeah I know NlpWakeLock again, but trust me, just do it ;)

There you go, now enjoy the Deep Sleep and much cooler phone :D

As a side note: This does not prevent the wakelocks from ever happening they will still be present, but instead of taking up hours a day we're down to a couple of minutes.

Sorry for the long post, here's a potato:
baked-potato.jpg
 

Ben36

Senior Member
Jun 8, 2012
8,254
2,868
Okay boys and girls, here's the solution to these freaking wakelocks that keep raping our N5s battery. I've tried different approaches but nothing seemed to do the trick. I got as frustrated as you guys when turning of location reporting and history didn't help anything.

So what I did was:
1. Download Xposed Framework.
2. Download Wakelock Terminator (https://play.google.com/store/apps/details?id=in.andro.wlt).
3. Install both, reboot the required times and activate the module.
4. Open Wakelock Terminator and scroll down to Google Play Services, hit it and select "Prevent Wake Lock"
5. Hit "Filter Wake Lock" and enter the lines in this image (sorry for the large size):
FkFtS1V.jpg

Hit "OK"

Think you're done? So did I, but guess again, this does not prevent the wakelock.. yet.
6. Go into Location in settings in Android.
7. Disable Location Reporting and Location History.

There this takes care of the NlpWakeLock and other associated wakelocks.

As @msgfromside3 said another wakelock is triggered by this "EntriesRefresh_wakelock". The good news is that the same trick can be used to suppress this wakelock. The only hickup is that in........... [/IMG]

Is this effectively the same as using app ops to turn off 'keep awake' in the play services?

Sent from my Nexus 5 using Tapatalk
 

tylerdurden83

Senior Member
May 28, 2011
1,196
227
Think you're done? So did I, but guess again, this does not prevent the wakelock.. yet.
6. Go into Location in settings in Android.
7. Disable Location Reporting and Location History.

Except that this makes you unable to use any location service like Maps, Wake or any other app that uses Google's location rather than their own implementation, thus crippling a lot of the phone's functionalities, at least to some.
We must find a way to do all the rest, but leave these on.
 

Gormsen

Senior Member
Apr 30, 2011
730
340
Aarhus
Is this effectively the same as using app ops to turn off 'keep awake' in the play services?

Nope, I've also tries the App Ops, but they didn't help me.


Except that this makes you unable to use any location service like Maps, Wake or any other app that uses Google's location rather than their own implementation, thus crippling a lot of the phone's functionalities, at least to some.
We must find a way to do all the rest, but leave these on.

No it doesn't, I'm using maps, Google Now with location based cards and so on. I'm not disabling location entirely ;)

Sent from my Nexus 5 using Tapatalk
 

tylerdurden83

Senior Member
May 28, 2011
1,196
227
No it doesn't, I'm using maps, Google Now with location based cards and so on. I'm not disabling location entirely ;)

"Location entirely" means that even non-google location services will not work. For example, I have Beautiful Widgets. In the settings you can choose to use either Google's location services or the weather provider's location services. If I choose the weather provider location services and turn OFF Location entirely, it won't work. If I turn Location back ON, it starts working again, regardless of whether Location Reporting is ON or OFF. If I choose Google's location provider and I have Location OFF it wont work, if I turn location ON but have Disable Location Reporting on OFF, it wont work either, only way to make it work is to turn on both Location AND "Location Reporting".

Same for all other Google apps like G+ etc, if I have Location ON but Location Reporting OFF, they dont work here. Or better, you might think tha they do if you are at the same location that you were last seen at, but as you move, your location won't update, at least mine doesnt.
 

Gormsen

Senior Member
Apr 30, 2011
730
340
Aarhus
"Location entirely" means that even non-google location services will not work. For example, I have Beautiful Widgets. In the settings you can choose to use either Google's location services or the weather provider's location services. If I choose the weather provider location services and turn OFF Location entirely, it won't work. If I turn Location back ON, it starts working again, regardless of whether Location Reporting is ON or OFF. If I choose Google's location provider and I have Location OFF it wont work, if I turn location ON but have Disable Location Reporting on OFF, it wont work either, only way to make it work is to turn on both Location AND "Location Reporting".

Same for all other Google apps like G+ etc, if I have Location ON but Location Reporting OFF, they dont work here. Or better, you might think tha they do if you are at the same location that you were last seen at, but as you move, your location won't update, at least mine doesnt.

I don't have any problems on my end and I drive around a lot. Well, seems like we disagree here, so you do what you want to :)
As you said: Do you have any ideas on how to achieve the same result without disabling history and reporting?

Sent from my Nexus 5 using Tapatalk
 

tylerdurden83

Senior Member
May 28, 2011
1,196
227
I don't have any problems on my end and I drive around a lot. Well, seems like we disagree here, so you do what you want to :)
As you said: Do you have any ideas on how to achieve the same result without disabling history and reporting?

Sent from my Nexus 5 using Tapatalk

https://support.google.com/gmm/answer/3118687?hl=en

There isn't much to disagree with tbh.

Location Reporting allows Google to periodically store and use your device's most recent location data, as well as activities like driving, walking, and biking, in connection with your Google Account. Location Reporting is a per-device setting.
...
Location History and Location Reporting data may be used by any Google app or service.
...
Important: This setting only controls Google apps; if you turn this setting off, Google services that aren't apps and non-Google apps may receive your location from the device.

You drive around a lot, you are using Maps as a navigator and you say that it still works so you are inferring that that setting isn't stopping your gapps location service functionalities, is that it?
From that same page:

Location Reporting updates
To stop Location Reporting, open Google Settings in your device’s apps menu:
Devices running Android 4.4: Touch Location > Location services > Google Location Reporting > Location Reporting.
The Location Reporting update frequency isn't a fixed amount of time. The update frequency is determined by several factors, such as how much battery life your device has, if you are moving, or how fast you are moving. Location Reporting will only use cell ID or Wi-Fi location detection depending on your device.

So I'm pretty sure that what is happening here is that you are getting GPS data to properly navigate with Maps even with Location Reporting turned OFF.

No, sadly I gave up and it's up to Google to fix this ****. Personally I think that they can't and that is why they hid the battery stats, hoping that we'd not figure this mess out.
 

imarvind

Member
Feb 7, 2010
25
4
https://support.google.com/gmm/answer/3118687?hl=en

No, sadly I gave up and it's up to Google to fix this ****. Personally I think that they can't and that is why they hid the battery stats, hoping that we'd not figure this mess out.

This is what I've done.

1. Select Battery Saving as the location mode (agree to Google's popup)
2. Set location reporting & location history to Off

Works fine. No big wakelocks, but Gapps are location aware when I query. (eg. If I ask 'whats the weather' in Google Now, it gives me the weather for my area in my city)

I also use tasker to toggle Wifi etc based on Net Location context and it works just fine too.

Screenshots attached. NlpCollectorWakeLock ran for a grand 1m22s out of 11hrs or so of phone usage. No complaints.

Device: Hammerhead
ROM: Stock 4.4.2 + Xposed Framework
Kernel: Franco r31

Update: In case you're wondering what contributed to the 3.8% per hr drain, the biggest wakelocks were due to two hours of music playback (android.media.MediaPlayer) over BT while commuting, and about 30 mins of phone calls (RILJ)
 

Attachments

  • Screenshot_2014-01-08-18-27-31.png
    Screenshot_2014-01-08-18-27-31.png
    166.4 KB · Views: 430
  • Screenshot_2014-01-08-18-28-02.png
    Screenshot_2014-01-08-18-28-02.png
    209.4 KB · Views: 452
Last edited:

Gormsen

Senior Member
Apr 30, 2011
730
340
Aarhus
https://support.google.com/gmm/answer/3118687?hl=en

There isn't much to disagree with tbh.



You drive around a lot, you are using Maps as a navigator and you say that it still works so you are inferring that that setting isn't stopping your gapps location service functionalities, is that it?
From that same page:



So I'm pretty sure that what is happening here is that you are getting GPS data to properly navigate with Maps even with Location Reporting turned OFF.

No, sadly I gave up and it's up to Google to fix this ****. Personally I think that they can't and that is why they hid the battery stats, hoping that we'd not figure this mess out.

Sounds plausible, all I know is that everything is working as it should. And finally I'm not suffering from wakelocks, which I think cripple the device more than some of the services not working from disabling the two location options. If that were the case.

I think your right about Google, though I'm still hoping that they fix these issues :)

Sent from my Nexus 5 using Tapatalk
 

Top Liked Posts

  • There are no posts matching your filters.
  • 31
    Firstly, this is not another thread to complain about your horrible battery life due to Google Play Services. I'm tired of those (mostly on Reddit, but some here too. Either way, none of that here :) ). This is instead to try and find a root cause for it. "It's Google's fault" is not good enough for me, and if you truly care about your battery life it shouldn't be for you either. If all you're after is an easy way out to get your battery life back, then this thread is not for you. We're here to reach a solution where you can get location services and good battery life. I've done if before, on my Galaxy Nexus on 4.3, but it seems that something is wrong in KitKat. Let this be a place where we all dig deeper into this issue, perform tests, gather results, and then share and discuss them. Here's what I've got so far:

    The wakelocks that cause this battery drain are NlpWakeLock and NlpCollectorWakeLock. Nlp stands for network location provider. As you may know, Android provides developers with two ways of gathering location information. One is through the GPS_PROVIDER, which uses the GPS, and the other is through NETWORK_PROVIDER, which uses cell towers and WiFi APs to get your position. According to their developer website[1] , NETWORK_PROVIDER uses less battery, is faster, but is less accurate. GPS uses more battery, takes longer, but is good if you want an accurate location. I'm assuming this particular wakelock uses NETWORK_PROVIDER.

    I also did some digging using ROM Toolbox Pro's autostart manager. My guess was that Google Play Services must be triggered every time a certain intent is broadcasted, since nothing obvious is telling it to run. Turns out there are quite a few. 30, to be exact. However, many of them have to do with GCM and we don't really care about those. One of particular interest is one called com.google.android.location.internal.NlpNetworkProviderSettingsUpdateReceiver. It listens for the intent android.location.PROVIDERS_CHANGED. The LocationManager API's documentation[2] tells us this:

    Broadcast intent action when the configured location providers change. For use with isProviderEnabled(String). If you're interacting with the LOCATION_MODE API, use MODE_CHANGED_ACTION instead.

    I'd assume that this means when you change your location providers, such as enabling/disabling data, WiFi, GPS, etc.

    However, location reporting only seems to use network location. If you're on KitKat, go to the location settings and choose device only. Then choose battery saving. It asks you to accept location reporting. Same thing when you choose high accuracy. What do both of those have in common? Network location. You can switch between those two as much as you want and it won't ask you to accept again. However, once you switch to device only and back it will ask you. This shows that it only uses network location.

    I find that Google (Play) Services has 5% (+/- 1%) keep awake. Tested on both Nexus 5 running KRT16M and Galaxy Nexus running JWR66V. Both use a certain time of GPS, although that number is never increasing. I assume this is some sort of initial one-time lock. It can be disregarded.

    One more thing I noticed is that this Google Play Services issue is much more prominent on KitKat. While they have happened before, often times a simple Play Store update would fix it. This time it seems to be location based. Guess what changed in KitKat? The way you deal with location settings. It may be that the way location settings are grouped in KitKat cause that intent to keep firing, and that in turn triggers something that eventually ends up being what you see as NlpWakeLock.

    What I'm going to try next is disabling that intent receiver and then monitor that wakelock as well as if location reporting still works. Feel free to play around, and be sure to share your results.

    To those who are suffering from these wakelocks, could you please share your settings? Such as what type of location mode you have (high accuracy, battery saving, device only), WiFi on or off, data on or off, signal strength, WiFi always scanning, Play Store and Play Services version, what device you have, Android build number, and what ROM/kernel you're using if you are using one? Any other info such as screenshots of battery screen, betterbatterystats, wakelock detectors, etc. will all be welcomed.

    Here is the Reddit thread I created discussing the same issue: http://www.reddit.com/r/Android/comments/1rvmlr/nlpwakelock_and_nlpcollectorwakelock_discussion/
    17
    Hi

    The battery drain caused by these wake-ups and wake-locks are all to do with Google Location services. Specifically when Wi-Fi location services are enabled, in Kit-Kat terms this is High Accuracy and (ironically) Battery Saving modes. GPS is considered a high battery user, but it may not be the worse offender.

    When we agree to use Googles Wi-Fi database we agree to send data to Google. This enables the following back ground tasks:

    1) Building and updating Googles Wi-Fi database when High Accuracy is selected. Background services will wake the phone, look for Wi-Fi access points nearby, then fire up the GPS to get a precise location, and send that data back to Google, Google uses this to identify Wi-Fi access points and their locations to continually update it's database. They don't drive around in cars any more to collect this data. I'm not sure anyone knows the schedule for this, and it seems sometimes this happens a lot, other times this activity dies away. Perhaps the more we use the Wi-Fi database lookup for locations, the more Google will use our phone later for keeping that database up to date. No such thing as a free lunch.

    2) Google doesn't just collect data as to where we are, but it also collects data about how we get to where we are. Some of us will have seen cards in Google Now telling us how much we cycled, ran or walked. In order to work this out, our phones must wake regularly (every n seconds) to do a location lookup to work out the distance we travelled and so the speed we are travelling at. From our location and average speed Google decides if we are walking, jogging, or in a car or train. No doubt there is some attempt at backing off these wake-ups to save battery power, for example if the phone hasn't moved in several hours it will sample less often. Note it doesn't seem to matter if you consume this data, e.g. someone doesn't use Google Now, Google are still gathering and recording this data for their marketing purposes and data mining.

    3) Traffic. When Google works out we are travelling by road Google will ramp up sampling rates. Google will gather location data from us, again whether we use that data ourselves or not, to work out congestion and hold-ups on the road and then offer those using Google navigate new routes to avoid problems and hold ups. All of us with an Android device are GPS trackers for Google traffic services.

    It has not always been like this, it is only recently Google has ramped up the collection of location data. Google suggest their location framework will use on average no more than 1% of battery power an hour, over 24 hours that is almost a quarter, it adds up. If reception is not good then the constant chatter of data back to Google services could see the phone using a lot more.

    The problem with all 3 above is the usage isn't always predictable. So messing around with a few settings might see an improvement for a while, but generally these wake-locks just come back.

    The only way to stop these wake-locks is to turn off location services, either completely or just use GPS mode.

    This is why using GPS only can now save battery. Modern GPS chips use less power and lock-on quicker, often working in some buildings as well, and avoids having Google use our phones as location trackers.

    Regards

    Phil
    11
    Hi

    found this and it's about wakelocks so yeah http://xdaforums.com/showthread.php?t=1827676 thought it might help us understand and have a unified answer on how to maximize our battery lives

    Wake-locks are misunderstood unfortunately which can lead to a dead end.

    Many apps can show tens or hundreds of wake locks but they haven't caused any battery drain. An app can only have a wake-lock if the phone is already awake. A wake-lock just says, "Hey phone, I'm busy doing something which if you went to sleep now it might cause a problem". For example saving something to a file or downloading/uploading some data which would become corrupt if the phone just went into deep sleep. Many times these wake-locks are taken then released in milliseconds and we were using the phone anyway. Many wake-locks are taken and released because we have turned on the phone to do something with it.

    Wake-locks may cause battery drain when an app is badly programmed, for example an app takes a wake-lock but fails to release it. The phone then stays awake, although the screen will go blank and look off, the phone is on and not in sleep mode. The phone then runs down much more quickly over the course of a day or hours because it is actually constantly on. Typically apps are well behaved these days and release the wake lock correctly.

    The NlpWakeLock and NlpCollectorWakeLocks are a symptom but not the cause. The cause is location code that runs in Google Play Services that uses the AlarmManager in Android to constantly turn the phone on every few seconds to get a location update. The AlarmManager uses a real-time clock separate from the main CPU and can be told to wake the phone up from deep sleep at X time or every X seconds. Essentially this wake-up is the same as us pressing the power button, except the wake-up keeps the screen off as Android knows it wasn't a user initiated wake-up.

    When this alarm runs, the phone wakes up (but screen stays off so we are unaware this is happening), Google Play Services location code gets a message to say "Hey, this is your wake-up call", at that point Google code knows it is time to do a location check. In order to keep the phone awake while this check takes place and data is exchanged with Google services, the NlpWakeLock and NlpCollectorWakeLocks are taken, a location fix is obtained, Google Play Services then sets another alarm for a some seconds later and releases the wake locks. The phone immediately sleeps again, maybe after only a second or so, but is then woken not many seconds later for another location check, and so it goes on.

    The problem is the frequency of wake-ups, ideally our phones should sleep and never wake up unless we receive a phone call or text message or turn the phone on to use it. Each time the phone wakes up power is drawn for the CPU to run, and power is also used in the action of transmitting data back to the Google mother-ship and reading from other sensors, and when this happens every few seconds it soon depletes the battery.

    There is no bug here. It is all by design. Google needs to get frequent location updates to find out if we are moving and how fast, it can then offer us things related to that, for example how far we might have cycled or walked, or gather info regarding traffic congestion. The end goal is marketing to us based on our activity and location. To do this needs a high sampling rate. Prior to Google working out our current activity which is a fairly new thing, they were just concerned with our location, and typically just fired the phone up every 10 minutes or so to get a location and we didn't notice the power drain as it didn't amount to much.

    Google are collecting this activity data whether we use it or not, and that collection is enabled when we Agree to the terms and conditions seen when turning on location services.

    I guess the other plan with always collecting this data is to make us accustomed to poorer battery life and it becomes the norm for us. This way Google can come out with some new nifty marketing thing based on our activity and location to raise their profits and tell us it will use no more battery power. Apps like Tasker can sell on the basis of being battery friendly because they use the Google location data for things like Geofencing, and as for most people Google location code is already on and draining the battery will see no extra usage.

    The answer is simple, we either all boycott Google until they give us better control over this so we can opt not to share this activity data, but still get the benefit of Wi-Fi location services (unlikely to happen), or we just turn location services off or use GPS only.

    Google have nothing to fix, this is all by design.

    Regards

    Phil
    9
    Okay boys and girls, here's the solution to these freaking wakelocks that keep raping our N5s battery. I've tried different approaches but nothing seemed to do the trick. I got as frustrated as you guys when turning of location reporting and history didn't help anything.

    So what I did was:
    1. Download Xposed Framework.
    2. Download Wakelock Terminator (https://play.google.com/store/apps/details?id=in.andro.wlt).
    3. Install both, reboot the required times and activate the module.
    4. Open Wakelock Terminator and scroll down to Google Play Services, hit it and select "Prevent Wake Lock"
    5. Hit "Filter Wake Lock" and enter the lines in this image (sorry for the large size):
    FkFtS1V.jpg

    Hit "OK"

    Think you're done? So did I, but guess again, this does not prevent the wakelock.. yet.
    6. Go into Location in settings in Android.
    7. Disable Location Reporting and Location History.

    There this takes care of the NlpWakeLock and other associated wakelocks.

    As @msgfromside3 said another wakelock is triggered by this "EntriesRefresh_wakelock". The good news is that the same trick can be used to suppress this wakelock. The only hickup is that in order to supress more than one app in Wakelock Terminator you have to pay for it (around $4). On the other hand: Why not support a developer that has greatly enhanced your battery (or made it like Google should have done) ;)

    1. When you have made the in-app purchase go to Google Search in Wakelock Terminator.
    2. Same as above only this time type in the following:
    EntriesRefresh_wakelock
    AudioIn
    NlpWakeLock

    Yeah I know NlpWakeLock again, but trust me, just do it ;)

    There you go, now enjoy the Deep Sleep and much cooler phone :D

    As a side note: This does not prevent the wakelocks from ever happening they will still be present, but instead of taking up hours a day we're down to a couple of minutes.

    Sorry for the long post, here's a potato:
    baked-potato.jpg
    6
    I've tried solution which @sherdog16 gave us and I figured out that just denying wake up and keep awake in App Ops for Google Play Services(not Google now) helps with wakelocks!
    Here is how it looks like:
    uploadfromtaptalk1401796566658.jpg

    I'm using Mahdi ROM which has App Ops build in to the ROM. This method doesn't affect acquiring location by any other app. Google Now shows weather for my location etc.

    Here is also screenshot how it looks like in BBS:
    uploadfromtaptalk1401796907568.jpg

    Hope it will help!

    BTW. Any one tried 4.4.3 update? Is the issue also there?