3

Nearly every time that windows 11 starts up, my time is off. It might pick up from the time when I shut it off the night before, but I am not totally certain.

So far, my research has led me to try the following:

  • Set the windows time service to start automatically
  • Re-registered the win32 time components
  • Verified that the registry entry for the tapi service is %SystemRoot%\System32\svchost.exe -k NetworkService -p
  • Changed the time server to time.nist.gov
  • Ensured my BIOS is up-to-date
  • Ensured Windows 11 is up-to-date
  • Changed my CMOS battery (just did this now, so far unverified but will come back and confirm results when verified working or not)

This has not changed the behavior of unsynchronized time when I cold-boot after the computer has been off all night. I cannot think of anything else that I can do, but I always have to manually "Sync now" after I start Windows, at least after my computer has been off all night. Anything else I can check, or do, to keep the time synchronized? Or, any ideas about what might be wrong?

Thanks in advance.

Steve Storck
  • 131
  • 1
  • 3
  • 1
    Are there any entries in the Windows event log regarding time synchronization? How large is the typical time difference? Depending on the method used time sync may not directly set the correct time, but instead let the internal clock run slower or faster until the local time is in sync again. – Robert Jan 08 '22 at 14:42
  • It looks like the offset is greater than expected, so it can only adjust within a certain deviation. Hopefully that is indicative of a failing battery. I cannot imagine what else might cause it. – Steve Storck Jan 08 '22 at 16:06

4 Answers4

1

If the offset is greater than expected then it won't auto adjust. This can happen if you have your time zone set to one other than default. I am experiencing the same issue - clock out by hours after the computer has been turned off or the bios updated. I need to manually tell it to sync before it picks up the correct time zone. A colleague of mine is also experiencing this issue.

Robert
  • 19
  • To add to this: when your computer is powered down the CMOS clock keeps track of it, however they are less accurate and will drift over time. This drifting can become rampant with very old hardware (although I assume that using Windows 11 means yours probably isn't). – MiG Mar 25 '22 at 08:37
0

If you are running a dual boot machine, and the error occurs when booting into Windows 11 after booting into Linux, that may be the source of the issue.

See this link for details: https://www.elevenforum.com/t/how-to-make-win-11-sync-time-on-boot.12189/

Per the link above:

It has to do with Linux & Windows disagreeing on the time zone offset.

It can be managed by forcing Windows to write BIOS time using UTC. Here is the registry edit to correct the problem:

Windows Registry Editor Version 5.00

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\TimeZoneInformation]
"RealTimeIsUniversal"=qword:00000001

A side effect of this solution is that your BIOS time isn't displayed as local time, but dual-booting won't cause time problems using this Windows 11 registry edit.

Toto
  • 17,839
noobie
  • 11
0

I gave up trying to fix this, as Windows 11 is easily the buggiest release ever.

I used a third party application called NetTime from [www.timesynctool.com]

It doesn't care about offset or anything else, unlike windows.

JohnnyVegas
  • 3,508
0

I was having this issue as well, and a solution I found was to create a task to resync the time server at login. I'm under the impression this task has to be run with admin privileges, so here are the instructions to do so:

  1. Open Task Scheduler: Search for "Task Scheduler" and open it.
  2. Create a New Task: In the Task Scheduler window, click on “Create Task…” in the right-hand pane under “Actions”.
  3. General Settings: In the “General” tab, give your task a name, like “Time Sync at log on”. Select “Run with highest privileges” to ensure the task can run the time sync command.
  4. Triggers: Switch to the “Triggers” tab and click “New…”. From the “Begin the task” dropdown, select “At log on”. Next, activate "Delay task for" and set 3 minutes (you can manually type it in). You might have to play with your delay and checking by turning off the computer and turning it back on, and seeing if you had sufficient delay for the w32tm service to start. In my case, 3 minutes worked, while 2 minutes didn't. Click “OK” to save the trigger settings.
  5. Actions: Go to the “Actions” tab and click “New…”. Set “Action” to “Start a program”. In the “Program/script” field, type w32tm and in the “Add arguments (optional)” field, type /resync. Click “OK” to save the action settings.
  6. Conditions and Settings: I disabled "Start the task only if the computer is on AC power", activated "Run task as soon as possible after a scheduled start is missed", and set "Stop the task if it runs longer than" to 1 hour.
  7. Save the Task: Click “OK” to save and exit the task creation process.

Notes: When I tried doing this with a trigger based on startup, it wasn't working. A quick Google showed some possible solutions, but rather than go that path I just did what other scheduled tasks did, which was to trigger based on log on. Also, as noted in the "Triggers" instructions, the w32tm service takes a couple of minutes to start after the computer was turned off, so you have to enable a delay on the trigger to wait for the service to come back online.

Additional information: My issue was that the clock was off by a couple of seconds (1-4 secs) after my computer was turned off. I think the longer it was off, the more off it was. But these seconds were enough for cloud programs to start complaining.

More notes! The parameters to check for w32tm are explained here.

Esteban
  • 465