System connected to UPS goes to sleep short time after power is lost

I have a Win7 x64 system connected to the UPS. The UPS is capable of maintaining the system power for about 30 minutes. After I have connected the UPS, I have verified this by disconnecting the power cord and everything has worked as expected, I was receiving low level battery notifications and the system went off once the battery has reached the critical level. Since then a long time passed. Recently I was experiencing a power loss several times, and each time the computer went to sleep in a very short time.

I can reproduce this easily any time by disconnecting the power cord from the UPS. When I do this, the system correctly shows the battery level and the remaining battery time when I disconnect the cord (the level starts at 100% and the remaining time at 0:32 and gradually goes down). Yet, the system sleeps after a short while without any warning.

I do not have any 3rd party software installed to manage the UPS, I am using default Windows battery handling. My advanced power settings when on battery are as follows:

  • Sleep after: 20 Minutes
  • Critical battery action: Sleep
  • Low battery level: 20%
  • Critical battery level: 10%
  • Low battery notification: On
  • Low battery action: Do nothing
  • Reserve battery level: 7%

When the system sleeps, following entry is shown in the event log:

The system is entering sleep. Sleep Reason: Battery

<Event xmlns="http://schemas.microsoft.com/win/2004/08/events/event">
<System>
  <Provider Name="Microsoft-Windows-Kernel-Power" Guid="{331C3B3A-2005-44C2-AC5E-77220C37D6B4}" /> 
  <EventID>42</EventID> 
  <Version>2</Version> 
  <Level>4</Level> 
  <Task>64</Task> 
  <Opcode>0</Opcode> 
  <Keywords>0x8000000000000004</Keywords> 
  <TimeCreated SystemTime="2012-08-01T06:55:18.358031800Z" /> 
  <EventRecordID>325242</EventRecordID> 
  <Correlation /> 
  <Execution ProcessID="4" ThreadID="48" /> 
  <Channel>System</Channel> 
  <Computer>xxxxx</Computer> 
  <Security /> 
</System>
<EventData>
  <Data Name="TargetState">4</Data> 
  <Data Name="EffectiveState">4</Data> 
  <Data Name="Reason">2</Data> 
  <Data Name="Flags">0</Data> 
  </EventData>
</Event>

I have found a user reporting and solving a similar problem on Microsoft Answers, in his case the cause were broken drivers for Iomega drive. While I have quite a lot of devices connected to the computer, I do not have any Iomage drive.

  • Is there any systematic way how could I troubleshoot this problem or identify which particular device is malfunctioning and causing the computer to sleep?
  • Does some documentation for "Microsoft-Windows-Kernel-Power", which would help me understand the exact source of the event?

Solution 1:

I was not able to solve the issue despite of my efforts. I was not even able to get any more information on the "Microsoft-Windows-Kernel-Power" so far.

The best I could do was a workaround: instead of using native Windows battery management I have installed APCUPSD software and I can no longer observer the issue. With this sotware Windows are not aware of the battery, the APCUPSD controls shutdown directly and I have verified it is not doing so prematurely.

I guess using APC provided PowerChute might work as well, but I did not like the sofware much when I installed it, sounds too much cluttered and obtrusive to me.

Solution 2:

The most likely answer is, it's intelligently designed. Other than size, if I unplug a UPS and computer from the wall, it is in effect a laptop (computer + battery). The newest power management functions in Windows likely use the USB connection to determine that there is a power loss state (the UPS is unplugged). The power management system then kicks in and does its job reducing the amount of power the system is using, when it's not in use. How about a reason to go along with this?

Let's say you go with friends to see a movie, and leave your computer on. Ten minutes after you leave the house, there is a power failure at your house. No one is using the computer, it goes to sleep (using very little to no power). You return two hours later, discover this, and have time to shut down the computer because there is still enough power left in the battery...

OR

The computer never went to sleep, it used up all the power in the UPS before it was shut down. You have lost everything you were working on.

This is most logically behavior as expected, and I might recommend not trying to change it, in the interest of protecting your computer.

My hypothesis is strongly supported by:

Critical batter action: Sleep

The computer detects a critical action (no more power going into the UPS causes use of the battery, a critical action) and the computer sleeps to conserve power. Please post a picture of the output of the screen below, but open the dropdown that says Sleep>+Sleep after.

enter image description here