Backstory: I just got a 2016 13'' non TB MBP. I noticed that after sleeping for a day or two, there was some battery drain. I also have a 2014 rMBP which does not drain at all. I tested and it seemed to drain 5% over 24 hours while the 2014 did not. After pulling my hair out trying to find a fix, I finally found one. Credit goes to Seny on the official Apple forums who figured it out. Link The issue seems to be that 2015 and 2016 MBPs are set to wake up during sleep for notifications. If I ran "log show --style syslog | fgrep "Wake reason" I'd have wakes every 10-20 minutes.
To see if you are affected, run "ioreg -l | grep IOPlatformFeatureDefaults" -- On my 2014 model TCPKeepAliveDuringSleep was set to No, but on my 2016 it was set to Yes.
In order to change this, first you have to turn off SIP. Boot into recovery mode (CMR+R) then "csrutil disable" (don't forget to enable again later). Then in Finder menu Go to folder "/System/Library/Extensions/IOPlatformPluginFamily.kext/Contents/PlugIns/X86PlatformPlugin.kext/Contents/Resources" Depending on which MBP you have, the file you have to edit is different. Run " ioreg -l | grep board-id" in terminal to figure out the correct file. Then right click on the file, get info, change permission for Everyone to read & write. Open with texteditor (I used Textwrangler) and look for these 4 entries and just completely delete them
> <key>TCPKeepAliveDuringSleep</key>
> <true/>
> <key>TCPKeepAliveExpirationTimeout</key>
> <integer>43200</integer>
> <key>NotificationWake</key>
> <true/>
> <key>DNDWhileDisplaySleeps</key>
<false/>
Save and reboot. Worked for me. Now I have very few wakes when sleeping and battery drain is much better. I'm reporting the bug to Apple. Please do the same so they fix it. Whatever changes you make will probably be overwritten by any updates so they'll need to fix it permanently
Update: I no longer recommend using this fix. Something changed in 10.12.4. After redoing the steps outlined, I saw that the drain was about the same as without the fix, but then for the next days saw that it actually was worse. One night my battery dropped 10% overnight, and pmset showed no wakes. Very odd. I had to revert to a Time Machine backup because simply undoing the steps by changing the text does not revert this for whatever reason. So my suggestion is that if you are on 10.12.4 then do not follow this guide and learn to live with the slight drain that occurs. I'm not aware of any fix at the moment. Note this is with a 2016 MBP nTB so it may be different with 2015 or the regular MB.
To see if you are affected, run "ioreg -l | grep IOPlatformFeatureDefaults" -- On my 2014 model TCPKeepAliveDuringSleep was set to No, but on my 2016 it was set to Yes.
In order to change this, first you have to turn off SIP. Boot into recovery mode (CMR+R) then "csrutil disable" (don't forget to enable again later). Then in Finder menu Go to folder "/System/Library/Extensions/IOPlatformPluginFamily.kext/Contents/PlugIns/X86PlatformPlugin.kext/Contents/Resources" Depending on which MBP you have, the file you have to edit is different. Run " ioreg -l | grep board-id" in terminal to figure out the correct file. Then right click on the file, get info, change permission for Everyone to read & write. Open with texteditor (I used Textwrangler) and look for these 4 entries and just completely delete them
> <key>TCPKeepAliveDuringSleep</key>
> <true/>
> <key>TCPKeepAliveExpirationTimeout</key>
> <integer>43200</integer>
> <key>NotificationWake</key>
> <true/>
> <key>DNDWhileDisplaySleeps</key>
<false/>
Save and reboot. Worked for me. Now I have very few wakes when sleeping and battery drain is much better. I'm reporting the bug to Apple. Please do the same so they fix it. Whatever changes you make will probably be overwritten by any updates so they'll need to fix it permanently
Update: I no longer recommend using this fix. Something changed in 10.12.4. After redoing the steps outlined, I saw that the drain was about the same as without the fix, but then for the next days saw that it actually was worse. One night my battery dropped 10% overnight, and pmset showed no wakes. Very odd. I had to revert to a Time Machine backup because simply undoing the steps by changing the text does not revert this for whatever reason. So my suggestion is that if you are on 10.12.4 then do not follow this guide and learn to live with the slight drain that occurs. I'm not aware of any fix at the moment. Note this is with a 2016 MBP nTB so it may be different with 2015 or the regular MB.
Last edited: