Skip to content

PTP Client not synching #11

@JaredM93

Description

@JaredM93

I've setup a PTPd grandmaster on another system using the instructions, and conf file, from the "Windows Subsystem for Linux for testing Windows 10 PTP Client" techcommunity blog. My PtpClient registry entries are as follows:

[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W32Time\TimeProviders\PtpClient]
"PtpMasters"="10.0.50.43"
"Enabled"=dword:00000001
"InputProvider"=dword:00000001
"DllName"="C:\Windows\System32\ptpprov.dll"
"DelayPollInterval"=dword:00003e80
"AnnounceInterval"=dword:00000fa0
"EnableMulticastRx"=dword:00000000

Querying the w32tm configuration shows the PtpClient as the only enabled TimeProvider, and Wireshark shows that I'm receiving Announce, Follow_Up, and Sync messages from the grandmaster. Here's a sample of the Announce Message contents:

Frame 597: 106 bytes on wire (848 bits), 106 bytes captured (848 bits) on interface 0
Ethernet II, Src: IntelCor_53:2b:ca (a4:bf:01:53:2b:ca), Dst: SuperMic_ab:82:76 (ac:1f:6b:ab:82:76)
Internet Protocol Version 4, Src: 10.0.50.43, Dst: 10.0.50.33
User Datagram Protocol, Src Port: 60332, Dst Port: 320
Precision Time Protocol (IEEE1588)
0000 .... = transportSpecific: 0x0
.... 1011 = messageId: Announce Message (0xb)
.... 0010 = versionPTP: 2
messageLength: 64
subdomainNumber: 0
flags: 0x040c
0... .... .... .... = PTP_SECURITY: False
.0.. .... .... .... = PTP profile Specific 2: False
..0. .... .... .... = PTP profile Specific 1: False
.... .1.. .... .... = PTP_UNICAST: True
.... ..0. .... .... = PTP_TWO_STEP: False
.... ...0 .... .... = PTP_ALTERNATE_MASTER: False
.... .... ..0. .... = FREQUENCY_TRACEABLE: False
.... .... ...0 .... = TIME_TRACEABLE: False
.... .... .... 1... = PTP_TIMESCALE: True
.... .... .... .1.. = PTP_UTC_REASONABLE: True
.... .... .... ..0. = PTP_LI_59: False
.... .... .... ...0 = PTP_LI_61: False
correction: 0.000000 nanoseconds
ClockIdentity: 0x00155dfffea95405
SourcePortID: 1
sequenceId: 59107
control: Other Message (5)
logMessagePeriod: 127
originTimestamp (seconds): 0
originTimestamp (nanoseconds): 0
originCurrentUTCOffset: 37
priority1: 120
grandmasterClockClass: 10
grandmasterClockAccuracy: The time is accurate to within 1 us (0x23)
grandmasterClockVariance: 28768
priority2: 125
grandmasterClockIdentity: 0x00155dfffea95405
localStepsRemoved: 0
TimeSource: INTERNAL_OSCILLATOR (0xa0)

The domain is 0, and PTP_TIMESCALE and PTP_UTC_REASONABLE are both non-zero. But, the PtpClient doesn't appear to be receiving any of this information. When I look in the event viewer, I'm just getting event 515:

Ptp Provider Configuration:

Allowed Masters:10.0.50.43
Announce Interval:4000(msec)
Delay Poll Interval:16000(msec)
IfTstmp:1

PTP provider status:

PTP Best Master Details:
Name:
IP Address:
Clock Identity:0x0000000000000000
Port Number:0
Tick Count At Last Time Sample:0

ActiveMasterCount:0
MulticastRxEnabled:0
Current Tick Count:74884656

Why is the PtpClient either not receiving, or using, the Announce Message?

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions