Skip to content

NAME

statime.toml - configuration file for the statime ptp-daemon

DESCRIPTION

Configuration of ntpd-rs happens in the statime.toml configuration format. The toml format is in lots of ways similar to a simple ini with several extensions allowing a json-like syntax.

The statime configuration file consists of several sections, each of which configures a separate part of the ptp-daemon process. Each of the sections is described in the rest of this document. Many settings will have defaults, which will be indicated by each configuration setting shown.

CONFIGURATION

identity = clock identity (unset)
The unique identity of this clock. A clock identity is encoded as a 16-character hexadecimal string, for example identity = "00FFFFFFFFFFFFFB". If unset the clock identity is derived from a MAC address.
domain = u8 (0)
The PTP domain of this instance. All instances in domain are synchronized to the Grandmaster Clock of the domain, but are not necessarily synchronized to PTP clocks in another domain.
sdo-id = u12 (0)
The "source domain identity" of this PTP instance. Together with the domain it identifies a domain.
priority1 = priority (128)
A tie breaker for the best master clock algorithm in the range 0..256. 0 being highest priority an 255 the lowest.
priority2 = priority (128)
A tie breaker for the best master clock algorithm in the range 0..256. 0 being highest priority an 255 the lowest.

[[port]]

interface = interface name
The network interface of this PTP port. For instance "lo" or "enp0s31f6"
announce-interval = interval (1)
How often an announce message is sent by a master. Defined as an exponent of 2, so a value of 1 means every 2^1 = 2 seconds.
sync-interval = interval (0)
How often sync message is sent by a master. Defined as an exponent of 2, so a value of 0 means every 2^0 = 1 seconds.
announce-receipt-timeout = number of announce intervals (3)
Number of announce intervals to wait for announce messages from other masters before the port becomes master itself.
delay-asymmetry = nanoseconds (0)
Correct for a difference between slave-to-master and master-to-slave propagation time. The value is positive when the slave-to-master propagation time is longer than the master-to-slave propagation time.
delay-mechanism = mechanism (E2E)
Which delay mechanism to use on the port. Either "E2E" for end-to-end delay determination, or "P2P" for the peer to peer delay mechanism.
delay-interval = interval (0)
How often delay request messages are sent by a slave in end-to-end mode. Currently the only supported delay mechanism is end-to-end (E2E). Defined as an exponent of 2, so a value of 0 means every 2^0 = 1 seconds
master-only = bool (false)
The port is always a master instance, and will never become a slave instance.
hardware-clock = index (unset)
Index of a hardware clock device, for instance 0 for /dev/ptp0.
acceptable-master-list = [ clock identity, .. ] (unset)
List of clock identities that this port will accept as its master. A clock identity is encoded as a 16-character hexadecimal string, for example acceptable-master-list = ["00FFFFFFFFFFFFFB"]. The default is to accept all clock identities.