The Best Time Synchronization for Windows

The best way to synchronize the time of your Windows based PC is not a third party add-on. It is to use the capabilities built into Windows 10.

I have read numerous threads in amateur radio forums about time synchronization for digital modes such as FT8 and FT4. These usually turn into long threads recommending this or that third party solution. None of them are needed.

Here is the solution that I use. It requires only Windows 10.

Open a Windows 10 command prompt as administrator and run the following commands. These stop time synchronization and resets the service to some defaults settings.

net stop w32time
w32tm /unregister
w32tm /register

Next, run regedit. Carefully make the following changes.

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\w32time\Config\MinPollInterval
     Set to 10 decimal

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\w32time\Config\MaxPollInterval
     Set to 15 decimal

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\w32time\Parameters\NtpServer
     Set to time.windows.com,0x9
     If you have a different server you want to use feel free to do so

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\w32time\TimeProviders\NtpClient\SpecialPollInterval
     Set to 1800 decimal
     This will update the time every 30 minutes
     You may have to create this key

If your computer is not attached to a domain (normally the case for non-workplace computers), make sure that time synchronization is automatically triggered when your computer is on the network.

sc triggerinfo w32time start/networkon stop/networkoff

Finally, restart time synchronization.

net start w32time

This restarts the time synchronization process. Your time will be synchronized to the ntp server that you specify every 30 minutes.

You can check your work with the following command:

w32tm /query /peers

The output will show that you are synchronized and to what server. I run a local GPS time source. This is what my output looks like:

Peer: ntp.private,0x9
State: Active
Time Remaining: 0.0000000s
Mode: 3 (Client)
Stratum: 0 (unspecified)
PeerPoll Interval: 0 (unspecified)
HostPoll Interval: 10 (1024s)

Peer: ntp.private,0x9
State: Active
Time Remaining: 1784.6442139s
Mode: 3 (Client)
Stratum: 1 (primary reference - syncd by radio clock)
PeerPoll Interval: 17 (out of valid range)
HostPoll Interval: 10 (1024s)

73 de K2IE

The Importance of IPv6 in Amateur Radio

What most of us call an IP address, in the form 1.2.3.4, is really an IP Version 4 (IPv4) address. IPv4 has a serious limitation. The largest number that can be respresented in the 32 bit binary value of an IPv4 address is 2 ^ 32 (4,294,967,296). Believe it or not, these addresses are in short supply.

IPv6 was created as a solution almost 23 years ago. An important specification document was published in December 1998. IPv6 World Launch Day was 10 years ago! IPv6 is not new. IPv6 provides 2 ^ 128 (340 trillion trillion trillion) addresses. So why aren’t we all using IPv6 now?

Aside from a bounty of address space, there are other reasons to adopt IPv6. Large network providers have built new and optimized infrastructure with IPv6 in mind. Here’s an example of how this can work to your advantage.

The 020 Digital Multiprotocol system has bridge to the Brandmeister DMR (BM) system. Low network latency is of critical importance in delivering high quality voice connections. Any network latency created issues are amplified when voice transmissions are passed through multiple applications and protocol transcoding hops.

Using the IPv4 network, ping time between our end of the bridge and BM is about 8 ms. That is actually pretty good. IPv6 blows that away, with about 1.5 ms ping times. That reason was good enough for me to get my hands dirty and modify some Python code to be IPv6 capable.

IPv6 also helps with the problem of NAT and port forwarding on residential routers. Simply put, NAT can be thrown into the trash bin of computing history. Instead of just one address, the minimum network assignment under IPv6 is 64 bits. That is 2 ^ 64 addresses!

Several ham software authors and volunteers are working on updating their software to be IPv6 capable. My amateur radio wishlist for full IPv6 capability includes xlxd, DMRGateway and ircDDBGateway. HBlink will be there once my pull request is merged. That is the Python code I referred to that links the 020 world to Brandmeister.

N7TAE has a functional QnetGateway using IPv6. I could not get it to work with my DVAPs and will need to followup up with Tom, but he has provided a wide range of hardware support including MMDVM devices.

There are a lot of bits and pieces that will be involved with updating amateur radio software, much of it ancient, to IPv6. So let’s start now. This will take time. And, if you’re a ham working on some new software for the amateur radio world, please make sure that it supports IPv6 out of the box.

73 de K2IE